소스 검색

NFSD: Remove NFSv4 dependency on NFSv3

Clean up: Because NFSD_V4 "depends on" NFSD_V3, it appears as a child of
the NFSD_V3 menu entry, and is not visible if NFSD_V3 is unselected.

Replace the dependency on NFSD_V3 with a "select NFSD_V3".  This makes
NFSD_V4 look and work just like NFS_V3, while ensuring that NFSD_V3 is
enabled if NFSD_V4 is.

Sam Ravnborg adds:

"This use of select is questionable. In general it is bad to select
a symbol with dependencies.

In this case the dependencies of NFSD_V3 are duplicated for NFSD_V4
so we will not se erratic configurations but do you remember to
update NFSD_V4 when you add a depends on NFSD_V3?

But I see no other clean way to do it right now."

Later he said:

"My comment was more to say we have things to address in kconfig.
This is abuse in the acceptable range."

Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Chuck Lever 17 년 전
부모
커밋
1a448fdb3c
1개의 변경된 파일2개의 추가작업 그리고 1개의 파일을 삭제
  1. 2 1
      fs/Kconfig

+ 2 - 1
fs/Kconfig

@@ -1755,7 +1755,8 @@ config NFSD_V3_ACL
 
 
 config NFSD_V4
 config NFSD_V4
 	bool "NFS server support for NFS version 4 (EXPERIMENTAL)"
 	bool "NFS server support for NFS version 4 (EXPERIMENTAL)"
-	depends on NFSD && NFSD_V3 && PROC_FS && EXPERIMENTAL
+	depends on NFSD && PROC_FS && EXPERIMENTAL
+	select NFSD_V3
 	select FS_POSIX_ACL
 	select FS_POSIX_ACL
 	select RPCSEC_GSS_KRB5
 	select RPCSEC_GSS_KRB5
 	help
 	help