tech-kern archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: mount(2) and properties
In article <20080702175505.GA8491%netbsd.org@localhost>,
Bill Stouder-Studenmund <wrstuden%netbsd.org@localhost> wrote:
>-=-=-=-=-=-
>
>On Wed, Jul 02, 2008 at 03:21:10PM +1000, Simon Burge wrote:
>> Hi folks,
>>
>> I want to get a quick idea if I'm heading off down the right path for
>> an idea...
>>
>> For journaling, I want to be able to pass info on the location of the
>> journal via the mount command. The idea I'm playing with is to stick
>> this info into a prop_dictionary.
>>
>> As to how to actually pass this dictionary in, I had the following idea.
>> We currently have mount(2) prototyped as:
>>
>> int
>> mount(const char *type, const char *dir, int flags, void *data,
>> size_t data_len);
>>
>> Rather than adding extra arguments to this for the prop_dictionary, I
>> was thinking about overloading the existing data/data_len. Currently
>> this is for filesystem-specific arguments. I was thinking of adding a
>> new flag called "MNT_PROP" which means the last two arguments are to be
>> interpreted as a prop_dictionary and its size instead of the traditional
>> mount args structure.
>>
>>
>> Another option altogether is to add a new system call entirely. Antti
>> pointed out the FreeBSD nmount() system call, which is declared as:
>>
>> int
>> nmount(struct iovec *iov, u_int niov, int flags);
>>
>> but rather than use iovecs I think we'd use a prop_dictionary instead.
>> As to a name for this new system call - any suggestions? :-)
>
>Add a new system call or version mount(). pmount?
I think that the flag is good enough. New binaries that run on the old
system will just fail with EINVAL.
christos
Home |
Main Index |
Thread Index |
Old Index