* [PATCH 07/11] NFSD: Use "depends on" for PROC_FS dependency
@ 2008-02-11 22:12 Chuck Lever
[not found] ` <20080211221216.1047.31922.stgit-meopP2rzCrTwdl/1UfZZQIVfYA8g3rJ/@public.gmane.org>
0 siblings, 1 reply; 15+ messages in thread
From: Chuck Lever @ 2008-02-11 22:12 UTC (permalink / raw)
To: bfields, trond.myklebust; +Cc: linux-nfs
Recently, commit 440bcc59 added a reverse dependency to fs/Kconfig to
ensure that PROC_FS was enabled if NFSD_V4 was enabled.
There is a guideline in Documentation/kbuild/kconfig-language.txt that
states "In general use select only for non-visible symbols (no prompts
anywhere) and for symbols with no dependencies."
A quick grep around other Kconfig files reveals that no entry currently
uses "select PROC_FS" -- every one uses "depends on". Thus CONFIG_NFSD_V4
should use "depends on PROC_FS" as well.
For SUNRPC_GSS, it's a little more complex. Other entries can "select"
SUNRPC_GSS, as it is non-visible. However, the guideline suggests an
entry can't "select" it if it has a dependency (such as PROC_FS).
So, we add forward dependencies on PROC_FS to RPCSEC_GSS_FOO instead.
XXX: Both CONFIG_NFSV4 and CONFIG_NFSD_V4 select RPCSEC_GSS_KRB5, which is
visible, which kconfig-language.txt also frowns upon. The intent was to
enable at least one GSS mechanism if V4 was enabled. Perhaps we should
make SUNRPC_GSS visible, and make the NFSv4 options visible only if
SUNRPC_GSS is enabled.
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
---
fs/Kconfig | 8 +++-----
1 files changed, 3 insertions(+), 5 deletions(-)
diff --git a/fs/Kconfig b/fs/Kconfig
index 0c8f85d..9ee288f 100644
--- a/fs/Kconfig
+++ b/fs/Kconfig
@@ -1662,8 +1662,6 @@ config NFSD
select CRYPTO_MD5 if NFSD_V4
select CRYPTO if NFSD_V4
select FS_POSIX_ACL if NFSD_V4
- select PROC_FS if NFSD_V4
- select PROC_FS if SUNRPC_GSS
help
Choose Y here if you want to allow other computers to access
files residing on this system using Sun's Network File System
@@ -1723,7 +1721,7 @@ config NFSD_V3_ACL
config NFSD_V4
bool "NFS server support for NFS version 4 (EXPERIMENTAL)"
- depends on NFSD && NFSD_V3 && EXPERIMENTAL
+ depends on NFSD && NFSD_V3 && PROC_FS && EXPERIMENTAL
select RPCSEC_GSS_KRB5
help
This option enables support in your system's NFS server for
@@ -1798,7 +1796,7 @@ config SUNRPC_BIND34
config RPCSEC_GSS_KRB5
tristate "Secure RPC: Kerberos V mechanism (EXPERIMENTAL)"
- depends on SUNRPC && EXPERIMENTAL
+ depends on SUNRPC && PROC_FS && EXPERIMENTAL
select SUNRPC_GSS
select CRYPTO
select CRYPTO_MD5
@@ -1817,7 +1815,7 @@ config RPCSEC_GSS_KRB5
config RPCSEC_GSS_SPKM3
tristate "Secure RPC: SPKM3 mechanism (EXPERIMENTAL)"
- depends on SUNRPC && EXPERIMENTAL
+ depends on SUNRPC && PROC_FS && EXPERIMENTAL
select SUNRPC_GSS
select CRYPTO
select CRYPTO_MD5
^ permalink raw reply related [flat|nested] 15+ messages in thread[parent not found: <20080211221216.1047.31922.stgit-meopP2rzCrTwdl/1UfZZQIVfYA8g3rJ/@public.gmane.org>]
* Re: [PATCH 07/11] NFSD: Use "depends on" for PROC_FS dependency [not found] ` <20080211221216.1047.31922.stgit-meopP2rzCrTwdl/1UfZZQIVfYA8g3rJ/@public.gmane.org> @ 2008-02-12 21:23 ` J. Bruce Fields 2008-02-12 21:47 ` Trond Myklebust 2008-02-12 22:10 ` Chuck Lever 0 siblings, 2 replies; 15+ messages in thread From: J. Bruce Fields @ 2008-02-12 21:23 UTC (permalink / raw) To: Chuck Lever; +Cc: trond.myklebust, linux-nfs On Mon, Feb 11, 2008 at 05:12:16PM -0500, Chuck Lever wrote: > Recently, commit 440bcc59 added a reverse dependency to fs/Kconfig to > ensure that PROC_FS was enabled if NFSD_V4 was enabled. > > There is a guideline in Documentation/kbuild/kconfig-language.txt that > states "In general use select only for non-visible symbols (no prompts > anywhere) and for symbols with no dependencies." > > A quick grep around other Kconfig files reveals that no entry currently > uses "select PROC_FS" -- every one uses "depends on". Thus CONFIG_NFSD_V4 > should use "depends on PROC_FS" as well. OK. > > For SUNRPC_GSS, it's a little more complex. Other entries can "select" > SUNRPC_GSS, as it is non-visible. However, the guideline suggests an > entry can't "select" it if it has a dependency (such as PROC_FS). > So, we add forward dependencies on PROC_FS to RPCSEC_GSS_FOO instead. This also makes the client dependent on PROC_FS, which it wasn't before. I assume nobody cares? --b. > > XXX: Both CONFIG_NFSV4 and CONFIG_NFSD_V4 select RPCSEC_GSS_KRB5, which is > visible, which kconfig-language.txt also frowns upon. The intent was to > enable at least one GSS mechanism if V4 was enabled. Perhaps we should > make SUNRPC_GSS visible, and make the NFSv4 options visible only if > SUNRPC_GSS is enabled. > > Signed-off-by: Chuck Lever <chuck.lever@oracle.com> > --- > > fs/Kconfig | 8 +++----- > 1 files changed, 3 insertions(+), 5 deletions(-) > > diff --git a/fs/Kconfig b/fs/Kconfig > index 0c8f85d..9ee288f 100644 > --- a/fs/Kconfig > +++ b/fs/Kconfig > @@ -1662,8 +1662,6 @@ config NFSD > select CRYPTO_MD5 if NFSD_V4 > select CRYPTO if NFSD_V4 > select FS_POSIX_ACL if NFSD_V4 > - select PROC_FS if NFSD_V4 > - select PROC_FS if SUNRPC_GSS > help > Choose Y here if you want to allow other computers to access > files residing on this system using Sun's Network File System > @@ -1723,7 +1721,7 @@ config NFSD_V3_ACL > > config NFSD_V4 > bool "NFS server support for NFS version 4 (EXPERIMENTAL)" > - depends on NFSD && NFSD_V3 && EXPERIMENTAL > + depends on NFSD && NFSD_V3 && PROC_FS && EXPERIMENTAL > select RPCSEC_GSS_KRB5 > help > This option enables support in your system's NFS server for > @@ -1798,7 +1796,7 @@ config SUNRPC_BIND34 > > config RPCSEC_GSS_KRB5 > tristate "Secure RPC: Kerberos V mechanism (EXPERIMENTAL)" > - depends on SUNRPC && EXPERIMENTAL > + depends on SUNRPC && PROC_FS && EXPERIMENTAL > select SUNRPC_GSS > select CRYPTO > select CRYPTO_MD5 > @@ -1817,7 +1815,7 @@ config RPCSEC_GSS_KRB5 > > config RPCSEC_GSS_SPKM3 > tristate "Secure RPC: SPKM3 mechanism (EXPERIMENTAL)" > - depends on SUNRPC && EXPERIMENTAL > + depends on SUNRPC && PROC_FS && EXPERIMENTAL > select SUNRPC_GSS > select CRYPTO > select CRYPTO_MD5 > ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 07/11] NFSD: Use "depends on" for PROC_FS dependency 2008-02-12 21:23 ` J. Bruce Fields @ 2008-02-12 21:47 ` Trond Myklebust [not found] ` <1202852836.9228.1.camel-rJ7iovZKK19ZJLDQqaL3InhyD016LWXt@public.gmane.org> 2008-02-12 22:10 ` Chuck Lever 1 sibling, 1 reply; 15+ messages in thread From: Trond Myklebust @ 2008-02-12 21:47 UTC (permalink / raw) To: J. Bruce Fields; +Cc: Chuck Lever, linux-nfs On Tue, 2008-02-12 at 16:23 -0500, J. Bruce Fields wrote: > On Mon, Feb 11, 2008 at 05:12:16PM -0500, Chuck Lever wrote: > > Recently, commit 440bcc59 added a reverse dependency to fs/Kconfig to > > ensure that PROC_FS was enabled if NFSD_V4 was enabled. > > > > There is a guideline in Documentation/kbuild/kconfig-language.txt that > > states "In general use select only for non-visible symbols (no prompts > > anywhere) and for symbols with no dependencies." > > > > A quick grep around other Kconfig files reveals that no entry currently > > uses "select PROC_FS" -- every one uses "depends on". Thus CONFIG_NFSD_V4 > > should use "depends on PROC_FS" as well. > > OK. > > > > > For SUNRPC_GSS, it's a little more complex. Other entries can "select" > > SUNRPC_GSS, as it is non-visible. However, the guideline suggests an > > entry can't "select" it if it has a dependency (such as PROC_FS). > > So, we add forward dependencies on PROC_FS to RPCSEC_GSS_FOO instead. > > This also makes the client dependent on PROC_FS, which it wasn't before. > > I assume nobody cares? You assume wrongly. Patch NAKed... Trond ^ permalink raw reply [flat|nested] 15+ messages in thread
[parent not found: <1202852836.9228.1.camel-rJ7iovZKK19ZJLDQqaL3InhyD016LWXt@public.gmane.org>]
* Re: [PATCH 07/11] NFSD: Use "depends on" for PROC_FS dependency [not found] ` <1202852836.9228.1.camel-rJ7iovZKK19ZJLDQqaL3InhyD016LWXt@public.gmane.org> @ 2008-02-12 22:32 ` J. Bruce Fields 2008-02-12 22:57 ` Trond Myklebust 0 siblings, 1 reply; 15+ messages in thread From: J. Bruce Fields @ 2008-02-12 22:32 UTC (permalink / raw) To: Trond Myklebust; +Cc: Chuck Lever, linux-nfs On Tue, Feb 12, 2008 at 04:47:16PM -0500, Trond Myklebust wrote: > > On Tue, 2008-02-12 at 16:23 -0500, J. Bruce Fields wrote: > > On Mon, Feb 11, 2008 at 05:12:16PM -0500, Chuck Lever wrote: > > > Recently, commit 440bcc59 added a reverse dependency to fs/Kconfig to > > > ensure that PROC_FS was enabled if NFSD_V4 was enabled. > > > > > > There is a guideline in Documentation/kbuild/kconfig-language.txt that > > > states "In general use select only for non-visible symbols (no prompts > > > anywhere) and for symbols with no dependencies." > > > > > > A quick grep around other Kconfig files reveals that no entry currently > > > uses "select PROC_FS" -- every one uses "depends on". Thus CONFIG_NFSD_V4 > > > should use "depends on PROC_FS" as well. > > > > OK. > > > > > > > > For SUNRPC_GSS, it's a little more complex. Other entries can "select" > > > SUNRPC_GSS, as it is non-visible. However, the guideline suggests an > > > entry can't "select" it if it has a dependency (such as PROC_FS). > > > So, we add forward dependencies on PROC_FS to RPCSEC_GSS_FOO instead. > > > > This also makes the client dependent on PROC_FS, which it wasn't before. > > > > I assume nobody cares? > > You assume wrongly. Patch NAKed... Do you have a use case in mind? (Just curious.) --b. ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 07/11] NFSD: Use "depends on" for PROC_FS dependency 2008-02-12 22:32 ` J. Bruce Fields @ 2008-02-12 22:57 ` Trond Myklebust [not found] ` <1202857069.9228.14.camel-rJ7iovZKK19ZJLDQqaL3InhyD016LWXt@public.gmane.org> 0 siblings, 1 reply; 15+ messages in thread From: Trond Myklebust @ 2008-02-12 22:57 UTC (permalink / raw) To: J. Bruce Fields; +Cc: Chuck Lever, linux-nfs On Tue, 2008-02-12 at 17:32 -0500, J. Bruce Fields wrote: > > > I assume nobody cares? > > > > You assume wrongly. Patch NAKed... > > Do you have a use case in mind? (Just curious.) Embedded systems often compile without sysctl and/or procfs support. Why shouldn't they be able to run an NFS client with RPCSEC_GSS? The other argument is that there is _nothing_ in the actual auth_gss code that depends on procfs. The "dependency" (if there is one) is between net/sunrpc/cache.c and procfs, and in fact, both sunrpc and the auth_gss modules will compile just fine without procfs. ^ permalink raw reply [flat|nested] 15+ messages in thread
[parent not found: <1202857069.9228.14.camel-rJ7iovZKK19ZJLDQqaL3InhyD016LWXt@public.gmane.org>]
* Re: [PATCH 07/11] NFSD: Use "depends on" for PROC_FS dependency [not found] ` <1202857069.9228.14.camel-rJ7iovZKK19ZJLDQqaL3InhyD016LWXt@public.gmane.org> @ 2008-02-13 18:22 ` Chuck Lever 2008-02-13 18:44 ` Chuck Lever 1 sibling, 0 replies; 15+ messages in thread From: Chuck Lever @ 2008-02-13 18:22 UTC (permalink / raw) To: Trond Myklebust; +Cc: J. Bruce Fields, linux-nfs [-- Attachment #1: Type: text/plain, Size: 836 bytes --] Trond Myklebust wrote: > On Tue, 2008-02-12 at 17:32 -0500, J. Bruce Fields wrote: >>>> I assume nobody cares? >>> You assume wrongly. Patch NAKed... >> Do you have a use case in mind? (Just curious.) > > Embedded systems often compile without sysctl and/or procfs support. Why > shouldn't they be able to run an NFS client with RPCSEC_GSS? > > The other argument is that there is _nothing_ in the actual auth_gss > code that depends on procfs. The "dependency" (if there is one) is > between net/sunrpc/cache.c and procfs, and in fact, both sunrpc and the > auth_gss modules will compile just fine without procfs. In that case, do we really even need a PROC_FS dependency (forward or reverse) for the RPCSEC entries? It would be simple to split this patch into an NFSD_V4 part and an RPCSEC part, and just drop the RPCSEC part. [-- Attachment #2: chuck_lever.vcf --] [-- Type: text/x-vcard, Size: 315 bytes --] begin:vcard fn:Chuck Lever n:Lever;Chuck org:Oracle Corporation;Corporate Architecture: Linux Projects Group adr:;;1015 Granger Avenue;Ann Arbor;MI;48104;USA email;internet:chuck dot lever at nospam oracle dot com title:Principal Member of Staff tel;work:+1 248 614 5091 x-mozilla-html:FALSE version:2.1 end:vcard ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 07/11] NFSD: Use "depends on" for PROC_FS dependency [not found] ` <1202857069.9228.14.camel-rJ7iovZKK19ZJLDQqaL3InhyD016LWXt@public.gmane.org> 2008-02-13 18:22 ` Chuck Lever @ 2008-02-13 18:44 ` Chuck Lever 2008-02-13 21:48 ` Trond Myklebust 1 sibling, 1 reply; 15+ messages in thread From: Chuck Lever @ 2008-02-13 18:44 UTC (permalink / raw) To: Trond Myklebust; +Cc: J. Bruce Fields, linux-nfs [-- Attachment #1: Type: text/plain, Size: 769 bytes --] Trond Myklebust wrote: > On Tue, 2008-02-12 at 17:32 -0500, J. Bruce Fields wrote: >>>> I assume nobody cares? >>> You assume wrongly. Patch NAKed... >> Do you have a use case in mind? (Just curious.) > > Embedded systems often compile without sysctl and/or procfs support. Why > shouldn't they be able to run an NFS client with RPCSEC_GSS? OK, it looks like the patch that adds the "depends on SYSCTL" to the LOCKD entry will cause NFS-enabled builds to break if CONFIG_SYSCTL is disabled, thanks to the recent addition of nlmclnt_init and nlmclnt_done. Probably the better solution in this case is to ifdef out the register_sysctl() call in lockd if CONFIG_SYSCTL isn't set. In the long run, should we make it possible to build the NFS client without lockd? [-- Attachment #2: chuck_lever.vcf --] [-- Type: text/x-vcard, Size: 315 bytes --] begin:vcard fn:Chuck Lever n:Lever;Chuck org:Oracle Corporation;Corporate Architecture: Linux Projects Group adr:;;1015 Granger Avenue;Ann Arbor;MI;48104;USA email;internet:chuck dot lever at nospam oracle dot com title:Principal Member of Staff tel;work:+1 248 614 5091 x-mozilla-html:FALSE version:2.1 end:vcard ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 07/11] NFSD: Use "depends on" for PROC_FS dependency 2008-02-13 18:44 ` Chuck Lever @ 2008-02-13 21:48 ` Trond Myklebust 0 siblings, 0 replies; 15+ messages in thread From: Trond Myklebust @ 2008-02-13 21:48 UTC (permalink / raw) To: chuck.lever; +Cc: J. Bruce Fields, linux-nfs On Wed, 2008-02-13 at 13:44 -0500, Chuck Lever wrote: > Trond Myklebust wrote: > > On Tue, 2008-02-12 at 17:32 -0500, J. Bruce Fields wrote: > >>>> I assume nobody cares? > >>> You assume wrongly. Patch NAKed... > >> Do you have a use case in mind? (Just curious.) > > > > Embedded systems often compile without sysctl and/or procfs support. Why > > shouldn't they be able to run an NFS client with RPCSEC_GSS? > > OK, it looks like the patch that adds the "depends on SYSCTL" to the > LOCKD entry will cause NFS-enabled builds to break if CONFIG_SYSCTL is > disabled, thanks to the recent addition of nlmclnt_init and nlmclnt_done. > > Probably the better solution in this case is to ifdef out the > register_sysctl() call in lockd if CONFIG_SYSCTL isn't set. In the long > run, should we make it possible to build the NFS client without lockd? In the long run, we really ought to try to make it possible to build a NFSv3-only, or a NFSv4-only client, so yes... ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 07/11] NFSD: Use "depends on" for PROC_FS dependency 2008-02-12 21:23 ` J. Bruce Fields 2008-02-12 21:47 ` Trond Myklebust @ 2008-02-12 22:10 ` Chuck Lever 2008-02-12 22:30 ` J. Bruce Fields 1 sibling, 1 reply; 15+ messages in thread From: Chuck Lever @ 2008-02-12 22:10 UTC (permalink / raw) To: J. Bruce Fields; +Cc: trond.myklebust, linux-nfs On Feb 12, 2008, at 4:23 PM, J. Bruce Fields wrote: > On Mon, Feb 11, 2008 at 05:12:16PM -0500, Chuck Lever wrote: >> Recently, commit 440bcc59 added a reverse dependency to fs/Kconfig to >> ensure that PROC_FS was enabled if NFSD_V4 was enabled. >> >> There is a guideline in Documentation/kbuild/kconfig-language.txt >> that >> states "In general use select only for non-visible symbols (no >> prompts >> anywhere) and for symbols with no dependencies." >> >> A quick grep around other Kconfig files reveals that no entry >> currently >> uses "select PROC_FS" -- every one uses "depends on". Thus >> CONFIG_NFSD_V4 >> should use "depends on PROC_FS" as well. > > OK. > >> >> For SUNRPC_GSS, it's a little more complex. Other entries can >> "select" >> SUNRPC_GSS, as it is non-visible. However, the guideline suggests an >> entry can't "select" it if it has a dependency (such as PROC_FS). >> So, we add forward dependencies on PROC_FS to RPCSEC_GSS_FOO instead. > > This also makes the client dependent on PROC_FS, which it wasn't > before. > > I assume nobody cares? Huh? If I disable PROC_FS, I can still select the NFS client options, even NFSv4. >> XXX: Both CONFIG_NFSV4 and CONFIG_NFSD_V4 select RPCSEC_GSS_KRB5, >> which is >> visible, which kconfig-language.txt also frowns upon. The intent >> was to >> enable at least one GSS mechanism if V4 was enabled. Perhaps we >> should >> make SUNRPC_GSS visible, and make the NFSv4 options visible only if >> SUNRPC_GSS is enabled. >> >> Signed-off-by: Chuck Lever <chuck.lever@oracle.com> >> --- >> >> fs/Kconfig | 8 +++----- >> 1 files changed, 3 insertions(+), 5 deletions(-) >> >> diff --git a/fs/Kconfig b/fs/Kconfig >> index 0c8f85d..9ee288f 100644 >> --- a/fs/Kconfig >> +++ b/fs/Kconfig >> @@ -1662,8 +1662,6 @@ config NFSD >> select CRYPTO_MD5 if NFSD_V4 >> select CRYPTO if NFSD_V4 >> select FS_POSIX_ACL if NFSD_V4 >> - select PROC_FS if NFSD_V4 >> - select PROC_FS if SUNRPC_GSS >> help >> Choose Y here if you want to allow other computers to access >> files residing on this system using Sun's Network File System >> @@ -1723,7 +1721,7 @@ config NFSD_V3_ACL >> >> config NFSD_V4 >> bool "NFS server support for NFS version 4 (EXPERIMENTAL)" >> - depends on NFSD && NFSD_V3 && EXPERIMENTAL >> + depends on NFSD && NFSD_V3 && PROC_FS && EXPERIMENTAL >> select RPCSEC_GSS_KRB5 >> help >> This option enables support in your system's NFS server for >> @@ -1798,7 +1796,7 @@ config SUNRPC_BIND34 >> >> config RPCSEC_GSS_KRB5 >> tristate "Secure RPC: Kerberos V mechanism (EXPERIMENTAL)" >> - depends on SUNRPC && EXPERIMENTAL >> + depends on SUNRPC && PROC_FS && EXPERIMENTAL >> select SUNRPC_GSS >> select CRYPTO >> select CRYPTO_MD5 >> @@ -1817,7 +1815,7 @@ config RPCSEC_GSS_KRB5 >> >> config RPCSEC_GSS_SPKM3 >> tristate "Secure RPC: SPKM3 mechanism (EXPERIMENTAL)" >> - depends on SUNRPC && EXPERIMENTAL >> + depends on SUNRPC && PROC_FS && EXPERIMENTAL >> select SUNRPC_GSS >> select CRYPTO >> select CRYPTO_MD5 >> -- Chuck Lever chuck[dot]lever[at]oracle[dot]com ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 07/11] NFSD: Use "depends on" for PROC_FS dependency 2008-02-12 22:10 ` Chuck Lever @ 2008-02-12 22:30 ` J. Bruce Fields 2008-02-13 18:28 ` Chuck Lever 0 siblings, 1 reply; 15+ messages in thread From: J. Bruce Fields @ 2008-02-12 22:30 UTC (permalink / raw) To: Chuck Lever; +Cc: trond.myklebust, linux-nfs On Tue, Feb 12, 2008 at 05:10:57PM -0500, Chuck Lever wrote: > > On Feb 12, 2008, at 4:23 PM, J. Bruce Fields wrote: > >> On Mon, Feb 11, 2008 at 05:12:16PM -0500, Chuck Lever wrote: >>> Recently, commit 440bcc59 added a reverse dependency to fs/Kconfig to >>> ensure that PROC_FS was enabled if NFSD_V4 was enabled. >>> >>> There is a guideline in Documentation/kbuild/kconfig-language.txt >>> that >>> states "In general use select only for non-visible symbols (no >>> prompts >>> anywhere) and for symbols with no dependencies." >>> >>> A quick grep around other Kconfig files reveals that no entry >>> currently >>> uses "select PROC_FS" -- every one uses "depends on". Thus >>> CONFIG_NFSD_V4 >>> should use "depends on PROC_FS" as well. >> >> OK. >> >>> >>> For SUNRPC_GSS, it's a little more complex. Other entries can >>> "select" >>> SUNRPC_GSS, as it is non-visible. However, the guideline suggests an >>> entry can't "select" it if it has a dependency (such as PROC_FS). >>> So, we add forward dependencies on PROC_FS to RPCSEC_GSS_FOO instead. >> >> This also makes the client dependent on PROC_FS, which it wasn't >> before. >> >> I assume nobody cares? > > Huh? If I disable PROC_FS, I can still select the NFS client options, > even NFSv4. OK. I'm confused, then: NFS_V4 selects RPCSEC_GSS_KRB5 RPCSEC_GSS_KRB5 (after this patch) depends on PROC_FS What am I missing? --b. > >>> XXX: Both CONFIG_NFSV4 and CONFIG_NFSD_V4 select RPCSEC_GSS_KRB5, >>> which is >>> visible, which kconfig-language.txt also frowns upon. The intent >>> was to >>> enable at least one GSS mechanism if V4 was enabled. Perhaps we >>> should >>> make SUNRPC_GSS visible, and make the NFSv4 options visible only if >>> SUNRPC_GSS is enabled. >>> >>> Signed-off-by: Chuck Lever <chuck.lever@oracle.com> >>> --- >>> >>> fs/Kconfig | 8 +++----- >>> 1 files changed, 3 insertions(+), 5 deletions(-) >>> >>> diff --git a/fs/Kconfig b/fs/Kconfig >>> index 0c8f85d..9ee288f 100644 >>> --- a/fs/Kconfig >>> +++ b/fs/Kconfig >>> @@ -1662,8 +1662,6 @@ config NFSD >>> select CRYPTO_MD5 if NFSD_V4 >>> select CRYPTO if NFSD_V4 >>> select FS_POSIX_ACL if NFSD_V4 >>> - select PROC_FS if NFSD_V4 >>> - select PROC_FS if SUNRPC_GSS >>> help >>> Choose Y here if you want to allow other computers to access >>> files residing on this system using Sun's Network File System >>> @@ -1723,7 +1721,7 @@ config NFSD_V3_ACL >>> >>> config NFSD_V4 >>> bool "NFS server support for NFS version 4 (EXPERIMENTAL)" >>> - depends on NFSD && NFSD_V3 && EXPERIMENTAL >>> + depends on NFSD && NFSD_V3 && PROC_FS && EXPERIMENTAL >>> select RPCSEC_GSS_KRB5 >>> help >>> This option enables support in your system's NFS server for >>> @@ -1798,7 +1796,7 @@ config SUNRPC_BIND34 >>> >>> config RPCSEC_GSS_KRB5 >>> tristate "Secure RPC: Kerberos V mechanism (EXPERIMENTAL)" >>> - depends on SUNRPC && EXPERIMENTAL >>> + depends on SUNRPC && PROC_FS && EXPERIMENTAL >>> select SUNRPC_GSS >>> select CRYPTO >>> select CRYPTO_MD5 >>> @@ -1817,7 +1815,7 @@ config RPCSEC_GSS_KRB5 >>> >>> config RPCSEC_GSS_SPKM3 >>> tristate "Secure RPC: SPKM3 mechanism (EXPERIMENTAL)" >>> - depends on SUNRPC && EXPERIMENTAL >>> + depends on SUNRPC && PROC_FS && EXPERIMENTAL >>> select SUNRPC_GSS >>> select CRYPTO >>> select CRYPTO_MD5 >>> > > -- > Chuck Lever > chuck[dot]lever[at]oracle[dot]com > > > ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 07/11] NFSD: Use "depends on" for PROC_FS dependency 2008-02-12 22:30 ` J. Bruce Fields @ 2008-02-13 18:28 ` Chuck Lever 2008-02-13 18:58 ` J. Bruce Fields 0 siblings, 1 reply; 15+ messages in thread From: Chuck Lever @ 2008-02-13 18:28 UTC (permalink / raw) To: J. Bruce Fields; +Cc: trond.myklebust, linux-nfs [-- Attachment #1: Type: text/plain, Size: 3646 bytes --] J. Bruce Fields wrote: > On Tue, Feb 12, 2008 at 05:10:57PM -0500, Chuck Lever wrote: >> On Feb 12, 2008, at 4:23 PM, J. Bruce Fields wrote: >> >>> On Mon, Feb 11, 2008 at 05:12:16PM -0500, Chuck Lever wrote: >>>> Recently, commit 440bcc59 added a reverse dependency to fs/Kconfig to >>>> ensure that PROC_FS was enabled if NFSD_V4 was enabled. >>>> >>>> There is a guideline in Documentation/kbuild/kconfig-language.txt >>>> that >>>> states "In general use select only for non-visible symbols (no >>>> prompts >>>> anywhere) and for symbols with no dependencies." >>>> >>>> A quick grep around other Kconfig files reveals that no entry >>>> currently >>>> uses "select PROC_FS" -- every one uses "depends on". Thus >>>> CONFIG_NFSD_V4 >>>> should use "depends on PROC_FS" as well. >>> OK. >>> >>>> For SUNRPC_GSS, it's a little more complex. Other entries can >>>> "select" >>>> SUNRPC_GSS, as it is non-visible. However, the guideline suggests an >>>> entry can't "select" it if it has a dependency (such as PROC_FS). >>>> So, we add forward dependencies on PROC_FS to RPCSEC_GSS_FOO instead. >>> This also makes the client dependent on PROC_FS, which it wasn't >>> before. >>> >>> I assume nobody cares? >> Huh? If I disable PROC_FS, I can still select the NFS client options, >> even NFSv4. > > OK. I'm confused, then: > > NFS_V4 selects RPCSEC_GSS_KRB5 > RPCSEC_GSS_KRB5 (after this patch) depends on PROC_FS > > What am I missing? It appears that the "select RPCSEC_GSS_KRB5" is a no-op if RPCSEC_GSS_KRB5 hasn't met it's forward dependencies. >>>> XXX: Both CONFIG_NFSV4 and CONFIG_NFSD_V4 select RPCSEC_GSS_KRB5, >>>> which is >>>> visible, which kconfig-language.txt also frowns upon. The intent >>>> was to >>>> enable at least one GSS mechanism if V4 was enabled. Perhaps we >>>> should >>>> make SUNRPC_GSS visible, and make the NFSv4 options visible only if >>>> SUNRPC_GSS is enabled. >>>> >>>> Signed-off-by: Chuck Lever <chuck.lever@oracle.com> >>>> --- >>>> >>>> fs/Kconfig | 8 +++----- >>>> 1 files changed, 3 insertions(+), 5 deletions(-) >>>> >>>> diff --git a/fs/Kconfig b/fs/Kconfig >>>> index 0c8f85d..9ee288f 100644 >>>> --- a/fs/Kconfig >>>> +++ b/fs/Kconfig >>>> @@ -1662,8 +1662,6 @@ config NFSD >>>> select CRYPTO_MD5 if NFSD_V4 >>>> select CRYPTO if NFSD_V4 >>>> select FS_POSIX_ACL if NFSD_V4 >>>> - select PROC_FS if NFSD_V4 >>>> - select PROC_FS if SUNRPC_GSS >>>> help >>>> Choose Y here if you want to allow other computers to access >>>> files residing on this system using Sun's Network File System >>>> @@ -1723,7 +1721,7 @@ config NFSD_V3_ACL >>>> >>>> config NFSD_V4 >>>> bool "NFS server support for NFS version 4 (EXPERIMENTAL)" >>>> - depends on NFSD && NFSD_V3 && EXPERIMENTAL >>>> + depends on NFSD && NFSD_V3 && PROC_FS && EXPERIMENTAL >>>> select RPCSEC_GSS_KRB5 >>>> help >>>> This option enables support in your system's NFS server for >>>> @@ -1798,7 +1796,7 @@ config SUNRPC_BIND34 >>>> >>>> config RPCSEC_GSS_KRB5 >>>> tristate "Secure RPC: Kerberos V mechanism (EXPERIMENTAL)" >>>> - depends on SUNRPC && EXPERIMENTAL >>>> + depends on SUNRPC && PROC_FS && EXPERIMENTAL >>>> select SUNRPC_GSS >>>> select CRYPTO >>>> select CRYPTO_MD5 >>>> @@ -1817,7 +1815,7 @@ config RPCSEC_GSS_KRB5 >>>> >>>> config RPCSEC_GSS_SPKM3 >>>> tristate "Secure RPC: SPKM3 mechanism (EXPERIMENTAL)" >>>> - depends on SUNRPC && EXPERIMENTAL >>>> + depends on SUNRPC && PROC_FS && EXPERIMENTAL >>>> select SUNRPC_GSS >>>> select CRYPTO >>>> select CRYPTO_MD5 >>>> >> -- >> Chuck Lever >> chuck[dot]lever[at]oracle[dot]com >> >> >> [-- Attachment #2: chuck_lever.vcf --] [-- Type: text/x-vcard, Size: 315 bytes --] begin:vcard fn:Chuck Lever n:Lever;Chuck org:Oracle Corporation;Corporate Architecture: Linux Projects Group adr:;;1015 Granger Avenue;Ann Arbor;MI;48104;USA email;internet:chuck dot lever at nospam oracle dot com title:Principal Member of Staff tel;work:+1 248 614 5091 x-mozilla-html:FALSE version:2.1 end:vcard ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 07/11] NFSD: Use "depends on" for PROC_FS dependency 2008-02-13 18:28 ` Chuck Lever @ 2008-02-13 18:58 ` J. Bruce Fields 0 siblings, 0 replies; 15+ messages in thread From: J. Bruce Fields @ 2008-02-13 18:58 UTC (permalink / raw) To: Chuck Lever; +Cc: trond.myklebust, linux-nfs On Wed, Feb 13, 2008 at 01:28:29PM -0500, Chuck Lever wrote: > J. Bruce Fields wrote: >> On Tue, Feb 12, 2008 at 05:10:57PM -0500, Chuck Lever wrote: >>> On Feb 12, 2008, at 4:23 PM, J. Bruce Fields wrote: >>> >>>> On Mon, Feb 11, 2008 at 05:12:16PM -0500, Chuck Lever wrote: >>>>> Recently, commit 440bcc59 added a reverse dependency to fs/Kconfig to >>>>> ensure that PROC_FS was enabled if NFSD_V4 was enabled. >>>>> >>>>> There is a guideline in Documentation/kbuild/kconfig-language.txt >>>>> that >>>>> states "In general use select only for non-visible symbols (no >>>>> prompts >>>>> anywhere) and for symbols with no dependencies." >>>>> >>>>> A quick grep around other Kconfig files reveals that no entry >>>>> currently >>>>> uses "select PROC_FS" -- every one uses "depends on". Thus >>>>> CONFIG_NFSD_V4 >>>>> should use "depends on PROC_FS" as well. >>>> OK. >>>> >>>>> For SUNRPC_GSS, it's a little more complex. Other entries can >>>>> "select" >>>>> SUNRPC_GSS, as it is non-visible. However, the guideline suggests an >>>>> entry can't "select" it if it has a dependency (such as PROC_FS). >>>>> So, we add forward dependencies on PROC_FS to RPCSEC_GSS_FOO instead. >>>> This also makes the client dependent on PROC_FS, which it wasn't >>>> before. >>>> >>>> I assume nobody cares? >>> Huh? If I disable PROC_FS, I can still select the NFS client >>> options, even NFSv4. >> >> OK. I'm confused, then: >> >> NFS_V4 selects RPCSEC_GSS_KRB5 >> RPCSEC_GSS_KRB5 (after this patch) depends on PROC_FS >> >> What am I missing? > > It appears that the "select RPCSEC_GSS_KRB5" is a no-op if > RPCSEC_GSS_KRB5 hasn't met it's forward dependencies. Oh, OK, I didn't understand that. However, this means that it's no longer possible to build a V4 client with krb5 support without also including PROC_FS. So I think we can't apply this as is. --b. ^ permalink raw reply [flat|nested] 15+ messages in thread
* [PATCH 07/11] NFSD: Use "depends on" for PROC_FS dependency
@ 2008-02-08 17:52 Chuck Lever
[not found] ` <20080208175215.16261.39243.stgit-meopP2rzCrTwdl/1UfZZQIVfYA8g3rJ/@public.gmane.org>
0 siblings, 1 reply; 15+ messages in thread
From: Chuck Lever @ 2008-02-08 17:52 UTC (permalink / raw)
To: linux-kernel; +Cc: linux-nfs
Recently a reverse dependency was added to fs/Kconfig to ensure that
PROC_FS was enabled if NFSD_V4 was enabled.
There is a guideline in Documentation/kbuild/kconfig-language.txt that
states "In general use select only for non-visible symbols (no prompts
anywhere) and for symbols with no dependencies."
A quick grep around other Kconfig files reveals that no entry currently
uses "select PROC_FS" -- every one uses "depends on". Thus CONFIG_NFSD_V4
should use "depends on PROC_FS" as well.
For SUNRPC_GSS, it's a little more complex. Other entries can "select"
SUNRPC_GSS, as it is non-visible. However, the guideline suggests an
entry can't "select" it if it has a dependency (such as PROC_FS).
So, we add forward dependencies on PROC_FS to RPCSEC_GSS_FOO instead.
XXX: Both CONFIG_NFSV4 and CONFIG_NFSD_V4 select RPCSEC_GSS_KRB5, which is
visible, which kconfig-language.txt also frowns upon. The intent was to
enable at least one GSS mechanism if V4 was enabled. Perhaps we should
make SUNRPC_GSS visible, and make the NFSv4 options visible only if
SUNRPC_GSS is enabled.
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
---
fs/Kconfig | 8 +++-----
1 files changed, 3 insertions(+), 5 deletions(-)
diff --git a/fs/Kconfig b/fs/Kconfig
index 4c16789..5f00ee7 100644
--- a/fs/Kconfig
+++ b/fs/Kconfig
@@ -1662,8 +1662,6 @@ config NFSD
select CRYPTO_MD5 if NFSD_V4
select CRYPTO if NFSD_V4
select FS_POSIX_ACL if NFSD_V4
- select PROC_FS if NFSD_V4
- select PROC_FS if SUNRPC_GSS
help
Choose Y here if you want to allow other computers to access
files residing on this system using Sun's Network File System
@@ -1723,7 +1721,7 @@ config NFSD_V3_ACL
config NFSD_V4
bool "NFS server support for NFS version 4 (EXPERIMENTAL)"
- depends on NFSD && EXPERIMENTAL
+ depends on NFSD && PROC_FS && EXPERIMENTAL
select NFSD_V3
select RPCSEC_GSS_KRB5
help
@@ -1796,7 +1794,7 @@ config SUNRPC_BIND34
config RPCSEC_GSS_KRB5
tristate "Secure RPC: Kerberos V mechanism (EXPERIMENTAL)"
- depends on SUNRPC && EXPERIMENTAL
+ depends on SUNRPC && PROC_FS && EXPERIMENTAL
select SUNRPC_GSS
select CRYPTO
select CRYPTO_MD5
@@ -1815,7 +1813,7 @@ config RPCSEC_GSS_KRB5
config RPCSEC_GSS_SPKM3
tristate "Secure RPC: SPKM3 mechanism (EXPERIMENTAL)"
- depends on SUNRPC && EXPERIMENTAL
+ depends on SUNRPC && PROC_FS && EXPERIMENTAL
select SUNRPC_GSS
select CRYPTO
select CRYPTO_MD5
^ permalink raw reply related [flat|nested] 15+ messages in thread[parent not found: <20080208175215.16261.39243.stgit-meopP2rzCrTwdl/1UfZZQIVfYA8g3rJ/@public.gmane.org>]
* Re: [PATCH 07/11] NFSD: Use "depends on" for PROC_FS dependency 2008-02-08 17:52 Chuck Lever @ 2008-02-08 20:22 ` Sam Ravnborg 0 siblings, 0 replies; 15+ messages in thread From: Sam Ravnborg @ 2008-02-08 20:22 UTC (permalink / raw) To: Chuck Lever; +Cc: linux-kernel, linux-nfs On Fri, Feb 08, 2008 at 12:52:15PM -0500, Chuck Lever wrote: > Recently a reverse dependency was added to fs/Kconfig to ensure that > PROC_FS was enabled if NFSD_V4 was enabled. > > There is a guideline in Documentation/kbuild/kconfig-language.txt that > states "In general use select only for non-visible symbols (no prompts > anywhere) and for symbols with no dependencies." > > A quick grep around other Kconfig files reveals that no entry currently > uses "select PROC_FS" -- every one uses "depends on". Thus CONFIG_NFSD_V4 > should use "depends on PROC_FS" as well. > > For SUNRPC_GSS, it's a little more complex. Other entries can "select" > SUNRPC_GSS, as it is non-visible. However, the guideline suggests an > entry can't "select" it if it has a dependency (such as PROC_FS). > So, we add forward dependencies on PROC_FS to RPCSEC_GSS_FOO instead. > > XXX: Both CONFIG_NFSV4 and CONFIG_NFSD_V4 select RPCSEC_GSS_KRB5, which is > visible, which kconfig-language.txt also frowns upon. The intent was to > enable at least one GSS mechanism if V4 was enabled. Perhaps we should > make SUNRPC_GSS visible, and make the NFSv4 options visible only if > SUNRPC_GSS is enabled. This is better than what we had - so OK. We can revisit when kconfig gets more features added to support such configurations. Sam ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 07/11] NFSD: Use "depends on" for PROC_FS dependency @ 2008-02-08 20:22 ` Sam Ravnborg 0 siblings, 0 replies; 15+ messages in thread From: Sam Ravnborg @ 2008-02-08 20:22 UTC (permalink / raw) To: Chuck Lever; +Cc: linux-kernel, linux-nfs On Fri, Feb 08, 2008 at 12:52:15PM -0500, Chuck Lever wrote: > Recently a reverse dependency was added to fs/Kconfig to ensure that > PROC_FS was enabled if NFSD_V4 was enabled. > > There is a guideline in Documentation/kbuild/kconfig-language.txt that > states "In general use select only for non-visible symbols (no prompts > anywhere) and for symbols with no dependencies." > > A quick grep around other Kconfig files reveals that no entry currently > uses "select PROC_FS" -- every one uses "depends on". Thus CONFIG_NFSD_V4 > should use "depends on PROC_FS" as well. > > For SUNRPC_GSS, it's a little more complex. Other entries can "select" > SUNRPC_GSS, as it is non-visible. However, the guideline suggests an > entry can't "select" it if it has a dependency (such as PROC_FS). > So, we add forward dependencies on PROC_FS to RPCSEC_GSS_FOO instead. > > XXX: Both CONFIG_NFSV4 and CONFIG_NFSD_V4 select RPCSEC_GSS_KRB5, which is > visible, which kconfig-language.txt also frowns upon. The intent was to > enable at least one GSS mechanism if V4 was enabled. Perhaps we should > make SUNRPC_GSS visible, and make the NFSv4 options visible only if > SUNRPC_GSS is enabled. This is better than what we had - so OK. We can revisit when kconfig gets more features added to support such configurations. Sam ^ permalink raw reply [flat|nested] 15+ messages in thread
end of thread, other threads:[~2008-02-13 21:48 UTC | newest]
Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-02-11 22:12 [PATCH 07/11] NFSD: Use "depends on" for PROC_FS dependency Chuck Lever
[not found] ` <20080211221216.1047.31922.stgit-meopP2rzCrTwdl/1UfZZQIVfYA8g3rJ/@public.gmane.org>
2008-02-12 21:23 ` J. Bruce Fields
2008-02-12 21:47 ` Trond Myklebust
[not found] ` <1202852836.9228.1.camel-rJ7iovZKK19ZJLDQqaL3InhyD016LWXt@public.gmane.org>
2008-02-12 22:32 ` J. Bruce Fields
2008-02-12 22:57 ` Trond Myklebust
[not found] ` <1202857069.9228.14.camel-rJ7iovZKK19ZJLDQqaL3InhyD016LWXt@public.gmane.org>
2008-02-13 18:22 ` Chuck Lever
2008-02-13 18:44 ` Chuck Lever
2008-02-13 21:48 ` Trond Myklebust
2008-02-12 22:10 ` Chuck Lever
2008-02-12 22:30 ` J. Bruce Fields
2008-02-13 18:28 ` Chuck Lever
2008-02-13 18:58 ` J. Bruce Fields
-- strict thread matches above, loose matches on Subject: below --
2008-02-08 17:52 Chuck Lever
[not found] ` <20080208175215.16261.39243.stgit-meopP2rzCrTwdl/1UfZZQIVfYA8g3rJ/@public.gmane.org>
2008-02-08 20:22 ` Sam Ravnborg
2008-02-08 20:22 ` Sam Ravnborg
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.