2004-03-05 09:07:52

by Obelix

[permalink] [raw]
Subject: [TRIVIAL][PATCH]:/proc/fs/nfsd/

--- linux-2.6.3/fs/proc/root.c 2004-02-19 09:52:32.000000000 +0530
+++ linux-2.6.3-fixed/fs/proc/root.c 2004-03-05 13:48:28.448516568 +0530
@@ -65,7 +65,11 @@ void __init proc_root_init(void)
#endif
proc_root_fs = proc_mkdir("fs", 0);
proc_root_driver = proc_mkdir("driver", 0);
+
+#if defined(CONFIG_NFSD) || defined(CONFIG_NFSD_MODULE)
proc_mkdir("fs/nfsd", 0); /* somewhere for the nfsd filesystem to be mounted */
+#endif
+
#if defined(CONFIG_SUN_OPENPROMFS) || defined(CONFIG_SUN_OPENPROMFS_MODULE)
/* just give it a mountpoint */
proc_mkdir("openprom", 0);


Attachments:
nfsd-proc.patch (575.00 B)

2004-03-05 10:08:26

by NeilBrown

[permalink] [raw]
Subject: Re: [TRIVIAL][PATCH]:/proc/fs/nfsd/

On Friday March 5, [email protected] wrote:
> Hi,
>
> Kernel Version: 2.6.3
> Even if NFSD is not selected, the proc entry /proc/fs/nfsd is getting
> created.

Is it a problem??

>
> The following patch fixes it.

Does it need fixing??

If you remove this, then people who compile a kernel without nfsd
support, and then later decide to compile an nfsd module and load it,
will not be able to mount the nfsd filesystem at the right place.

You might say "that won't happen", but it does, and has.
You might say "they shouldn't do that", and maybe they shouldn't. But
it still causes a support burden on the mailing list.

I think it is a very small cost, and a measurable gain, to leave it
there.

Do you really think otherwise?

NeilBRown


>
> Pls apply.
>
> /Raj
> --- linux-2.6.3/fs/proc/root.c 2004-02-19 09:52:32.000000000 +0530
> +++ linux-2.6.3-fixed/fs/proc/root.c 2004-03-05 13:48:28.448516568 +0530
> @@ -65,7 +65,11 @@ void __init proc_root_init(void)
> #endif
> proc_root_fs = proc_mkdir("fs", 0);
> proc_root_driver = proc_mkdir("driver", 0);
> +
> +#if defined(CONFIG_NFSD) || defined(CONFIG_NFSD_MODULE)
> proc_mkdir("fs/nfsd", 0); /* somewhere for the nfsd filesystem to be mounted */
> +#endif
> +
> #if defined(CONFIG_SUN_OPENPROMFS) || defined(CONFIG_SUN_OPENPROMFS_MODULE)
> /* just give it a mountpoint */
> proc_mkdir("openprom", 0);

2004-03-05 10:33:49

by Obelix

[permalink] [raw]
Subject: Re: [TRIVIAL][PATCH]:/proc/fs/nfsd/

Neil Brown wrote:

>On Friday March 5, [email protected] wrote:
>
>
>>Hi,
>>
>>Kernel Version: 2.6.3
>>Even if NFSD is not selected, the proc entry /proc/fs/nfsd is getting
>>created.
>>
>>
>
>Is it a problem??
>
>
Theoritically no, but behavior wise , yes.

>
>
>>The following patch fixes it.
>>
>>
>
>Does it need fixing??
>
>If you remove this, then people who compile a kernel without nfsd
>support, and then later decide to compile an nfsd module and load it,
>will not be able to mount the nfsd filesystem at the right place.
>
>

I guess choosing nfsd either builtin or as a module will cause a rebuild
of some components of the main kernel and hence a
reboot is anyway need. Pls correct me if i am wrong.

>
>
>
>>Pls apply.
>>
>>/Raj
>>--- linux-2.6.3/fs/proc/root.c 2004-02-19 09:52:32.000000000 +0530
>>+++ linux-2.6.3-fixed/fs/proc/root.c 2004-03-05 13:48:28.448516568 +0530
>>@@ -65,7 +65,11 @@ void __init proc_root_init(void)
>> #endif
>> proc_root_fs = proc_mkdir("fs", 0);
>> proc_root_driver = proc_mkdir("driver", 0);
>>+
>>+#if defined(CONFIG_NFSD) || defined(CONFIG_NFSD_MODULE)
>> proc_mkdir("fs/nfsd", 0); /* somewhere for the nfsd filesystem to be mounted */
>>+#endif
>>+
>> #if defined(CONFIG_SUN_OPENPROMFS) || defined(CONFIG_SUN_OPENPROMFS_MODULE)
>> /* just give it a mountpoint */
>> proc_mkdir("openprom", 0);
>>
>>
>-
>To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
>the body of a message to [email protected]
>More majordomo info at http://vger.kernel.org/majordomo-info.html
>Please read the FAQ at http://www.tux.org/lkml/
>
>
>


2004-03-05 10:47:30

by Petr Vandrovec

[permalink] [raw]
Subject: Re: [TRIVIAL][PATCH]:/proc/fs/nfsd/

On 5 Mar 04 at 21:08, Neil Brown wrote:
> > The following patch fixes it.
>
> Does it need fixing??
>
> If you remove this, then people who compile a kernel without nfsd
> support, and then later decide to compile an nfsd module and load it,
> will not be able to mount the nfsd filesystem at the right place.

> I think it is a very small cost, and a measurable gain, to leave it
> there.

Maybe I'm stupid, but why cannot knfsd module create fs/nfsd
directory at module load? That way you can do insmod/modprobe followed
by mount() to do that. And if you'll fiddle with do_mount a bit
(so that get_fs_type() is invoked before walking mount path)
you can do it even without modprobing knfsd in advance, by just
doing 'mount none /proc/fs/nfsd -t nfsd'.
Petr Vandrovec

2004-03-05 11:28:34

by NeilBrown

[permalink] [raw]
Subject: Re: [TRIVIAL][PATCH]:/proc/fs/nfsd/

On Friday March 5, [email protected] wrote:
> On 5 Mar 04 at 21:08, Neil Brown wrote:
> > > The following patch fixes it.
> >
> > Does it need fixing??
> >
> > If you remove this, then people who compile a kernel without nfsd
> > support, and then later decide to compile an nfsd module and load it,
> > will not be able to mount the nfsd filesystem at the right place.
>
> > I think it is a very small cost, and a measurable gain, to leave it
> > there.
>
> Maybe I'm stupid, but why cannot knfsd module create fs/nfsd
> directory at module load? That way you can do insmod/modprobe followed
> by mount() to do that. And if you'll fiddle with do_mount a bit
> (so that get_fs_type() is invoked before walking mount path)
> you can do it even without modprobing knfsd in advance, by just
> doing 'mount none /proc/fs/nfsd -t nfsd'.
> Petr Vandrovec

I wanted
mount -t nfsd nfsd /proc/fs/nfsd
to load the module and, as you have noticed, that doesn't work.

"fiddle"ing with do_mount is an interesting idea. If you (or someone)
can make that work and get it accepted, I am happy to have the nfsd
module create the directory.

NeilBrown

2004-03-13 17:27:51

by Adrian Bunk

[permalink] [raw]
Subject: Re: [TRIVIAL][PATCH]:/proc/fs/nfsd/

On Fri, Mar 05, 2004 at 04:05:47PM +0530, Raj wrote:
> Neil Brown wrote:
>...
> >Does it need fixing??
> >
> >If you remove this, then people who compile a kernel without nfsd
> >support, and then later decide to compile an nfsd module and load it,
> >will not be able to mount the nfsd filesystem at the right place.
> >
> >
>
> I guess choosing nfsd either builtin or as a module will cause a rebuild
> of some components of the main kernel and hence a
> reboot is anyway need. Pls correct me if i am wrong.

You are wrong.

If choosing nfsd as a module, no component of the main kernel needs to
be changed to load the module on i386.

cu
Adrian

--

"Is there not promise of rain?" Ling Tan asked suddenly out
of the darkness. There had been need of rain for many days.
"Only a promise," Lao Er said.
Pearl S. Buck - Dragon Seed