From: David Howells <dhowells@warthog.cambridge.redhat.com>
To: Christoph Hellwig <hch@infradead.org>,
chas williams <chas@locutus.cmf.nrl.navy.mil>,
torvalds@transmeta.com, viro@math.psu.edu
Cc: David Howells <dhowells@redhat.com>, linux-kernel@vger.kernel.org
Subject: Re: [PATCH] add a stub by which a module can bind to the AFS syscall
Date: Wed, 30 Apr 2003 16:30:20 +0100 [thread overview]
Message-ID: <27889.1051716620@warthog.warthog> (raw)
In-Reply-To: <20030430160239.A8956@infradead.org>
I selected a variadic method of argument passing because I didn't want to have
to copy the argument block several times in the course of passing from the
syscall stub through the multiplexor to the actual handler.
Of course, it might be better if the kernel itself sorted out the individual
subcalls and passed them to the filesystem individually or dealt with them
itself.
The four calls implemented by Linux are:
(*) int setpag(void)
Set Process Authentication Group number. This could easily be moved into
the kernel proper, with the PAG being stored in or depending from the
task structure somehow.
This would then obviate the need for OpenAFS to mangle the setgroups and
getgroups syscalls.
(*) int pioctl(const char *path, int cmd, void *arg, int followsymlink)
Al Viro's favourite:-) Do ioctl() on a file refered to by pathname. Can't
be emulated by open/ioctl/close because:
(a) it can operate directly on symbolic links.
(b) some of its functions don't require a file and don't fail if one
can't be opened.
(*) int afs_call(...)
Local client control
(*) int afs_icl(...)
Local client status and logging control.
There are six more which linux doesn't actually support, even though the
multiplexor does:
(*) icreate
(*) iopen
(*) idec
(*) iinc
(*) iread
(*) iwrite
Deal with file by inode number.
David
next prev parent reply other threads:[~2003-04-30 15:18 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-04-30 13:44 [PATCH] add a stub by which a module can bind to the AFS syscall David Howells
2003-04-30 14:02 ` Christoph Hellwig
2003-04-30 14:46 ` Jeff Garzik
2003-04-30 14:55 ` Christoph Hellwig
2003-04-30 14:57 ` chas williams
2003-04-30 15:02 ` Christoph Hellwig
2003-04-30 15:13 ` chas williams
2003-04-30 15:27 ` Christoph Hellwig
2003-04-30 15:33 ` chas williams
2003-04-30 15:38 ` Christoph Hellwig
2003-04-30 15:50 ` Arjan van de Ven
2003-04-30 15:42 ` Anton Blanchard
2003-04-30 15:56 ` viro
2003-05-08 14:01 ` David Howells
2003-04-30 15:30 ` David Howells [this message]
2003-04-30 15:37 ` Christoph Hellwig
2003-04-30 18:07 ` Jan Harkes
2003-04-30 18:19 ` Trond Myklebust
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=27889.1051716620@warthog.warthog \
--to=dhowells@warthog.cambridge.redhat.com \
--cc=chas@locutus.cmf.nrl.navy.mil \
--cc=dhowells@redhat.com \
--cc=hch@infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=torvalds@transmeta.com \
--cc=viro@math.psu.edu \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).