Re: patches to move ksmbd and cifs under new subdirectory

From: Tom Talpey
Date: Mon May 22 2023 - 13:21:05 EST


On 5/22/2023 12:33 PM, Steve French wrote:
Following up on the email thread suggestion to move fs/ksmbd and
fs/cifs and fs/smbfs_common all under a common directory fs/smb, here
is an updated
patchset for that (added one small patch).


1) smb3: move Documentation/filesystems/cifs to
Documentation/filesystems/smb
As suggested by Namjae, update the directory for ksmbd/cifs.ko
Documentation.
Documentation/filesystems/cifs contains both server and client information
so its pathname is misleading. In addition, the directory fs/smb
now contains both server and client, so move Documentation/filesystems/cifs
to Documentation/filesystems/smb

Suggested-by: Namjae Jeon <linkinjeon@xxxxxxxxxx>

2) cifs: correct references in Documentation to old fs/cifs path
The fs/cifs directory has moved to fs/smb/client, correct mentions
of this in Documentation and comments.

3) smb: move client and server files to common directory fs/smb
As suggested by Linus, move CIFS/SMB3 related client and server
files (cifs.ko and ksmbd.ko and helper modules) to new fs/smb subdirectory:

fs/cifs --> fs/smb/client
fs/ksmbd --> fs/smb/server
fs/smbfs_common --> fs/smb/conmon

There's a typo "conmon" here, which is also present in the changelog.
The "git mv" in the patch is correct.

Regarding the fs/smb/Kconfig, curious why "CIFS" selects SMB_CLIENT?
There's no need to bring in the client in a server-only config.
Or, did this mean to be SMBFS to bring in fs/smb/common instead?
Or, maybe it's time to do away with the "CIFS" option entirely?

config CIFS
tristate "SMB3 and CIFS support (advanced network filesystem)"
depends on INET
+ select SMB_CLIENT <-- ??
select NLS
select CRYPTO
select CRYPTO_MD5

Either way, is this second SMB_CLIENT=y in fs/smb/Kconfig a typo? Should
it be =m?

+config SMBFS
+ tristate
+ default y if CIFS=y || SMB_CLIENT=y || SMB_SERVER=y
+ default m if CIFS=m || SMB_CLIENT=y <-- ? || SMB_SERVER=m

Tom.