patches to move ksmbd and cifs under new subdirectory

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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


Thanks,

Steve
From b686a0741a28969786944c7ffb38563f4c6383f4 Mon Sep 17 00:00:00 2001
From: Steve French <stfrench@xxxxxxxxxxxxx>
Date: Sun, 21 May 2023 22:52:04 -0500
Subject: [PATCH 2/3] 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.

Acked-by: Namjae Jeon <linkinjeon@xxxxxxxxxx>
Signed-off-by: Steve French <stfrench@xxxxxxxxxxxxx>
---
 Documentation/admin-guide/cifs/changes.rst         | 4 ++--
 Documentation/admin-guide/cifs/usage.rst           | 8 ++++----
 Documentation/filesystems/cifs/cifsroot.rst        | 2 +-
 Documentation/userspace-api/ioctl/ioctl-number.rst | 2 +-
 fs/smb/server/smbfsctl.h                           | 2 +-
 fs/smb/server/smbstatus.h                          | 2 +-
 6 files changed, 10 insertions(+), 10 deletions(-)

diff --git a/Documentation/admin-guide/cifs/changes.rst b/Documentation/admin-guide/cifs/changes.rst
index 3147bbae9c43..8c42c4de510b 100644
--- a/Documentation/admin-guide/cifs/changes.rst
+++ b/Documentation/admin-guide/cifs/changes.rst
@@ -5,5 +5,5 @@ Changes
 See https://wiki.samba.org/index.php/LinuxCIFSKernel for summary
 information about fixes/improvements to CIFS/SMB2/SMB3 support (changes
 to cifs.ko module) by kernel version (and cifs internal module version).
-This may be easier to read than parsing the output of "git log fs/cifs"
-by release.
+This may be easier to read than parsing the output of
+"git log fs/smb/client" by release.
diff --git a/Documentation/admin-guide/cifs/usage.rst b/Documentation/admin-guide/cifs/usage.rst
index 2e151cd8c2e4..5f936b4b6018 100644
--- a/Documentation/admin-guide/cifs/usage.rst
+++ b/Documentation/admin-guide/cifs/usage.rst
@@ -45,7 +45,7 @@ Installation instructions
 
 If you have built the CIFS vfs as module (successfully) simply
 type ``make modules_install`` (or if you prefer, manually copy the file to
-the modules directory e.g. /lib/modules/2.4.10-4GB/kernel/fs/cifs/cifs.ko).
+the modules directory e.g. /lib/modules/6.3.0-060300-generic/kernel/fs/smb/client/cifs.ko).
 
 If you have built the CIFS vfs into the kernel itself, follow the instructions
 for your distribution on how to install a new kernel (usually you
@@ -66,15 +66,15 @@ If cifs is built as a module, then the size and number of network buffers
 and maximum number of simultaneous requests to one server can be configured.
 Changing these from their defaults is not recommended. By executing modinfo::
 
-	modinfo kernel/fs/cifs/cifs.ko
+	modinfo <path to cifs.ko>
 
-on kernel/fs/cifs/cifs.ko the list of configuration changes that can be made
+on kernel/fs/smb/client/cifs.ko the list of configuration changes that can be made
 at module initialization time (by running insmod cifs.ko) can be seen.
 
 Recommendations
 ===============
 
-To improve security the SMB2.1 dialect or later (usually will get SMB3) is now
+To improve security the SMB2.1 dialect or later (usually will get SMB3.1.1) is now
 the new default. To use old dialects (e.g. to mount Windows XP) use "vers=1.0"
 on mount (or vers=2.0 for Windows Vista).  Note that the CIFS (vers=1.0) is
 much older and less secure than the default dialect SMB3 which includes
diff --git a/Documentation/filesystems/cifs/cifsroot.rst b/Documentation/filesystems/cifs/cifsroot.rst
index 4930bb443134..bf2d9db3acb9 100644
--- a/Documentation/filesystems/cifs/cifsroot.rst
+++ b/Documentation/filesystems/cifs/cifsroot.rst
@@ -59,7 +59,7 @@ the root file system via SMB protocol.
 Enables the kernel to mount the root file system via SMB that are
 located in the <server-ip> and <share> specified in this option.
 
-The default mount options are set in fs/cifs/cifsroot.c.
+The default mount options are set in fs/smb/client/cifsroot.c.
 
 server-ip
 	IPv4 address of the server.
diff --git a/Documentation/userspace-api/ioctl/ioctl-number.rst b/Documentation/userspace-api/ioctl/ioctl-number.rst
index 176e8fc3f31b..4f7b23faebb9 100644
--- a/Documentation/userspace-api/ioctl/ioctl-number.rst
+++ b/Documentation/userspace-api/ioctl/ioctl-number.rst
@@ -363,7 +363,7 @@ Code  Seq#    Include File                                           Comments
 0xCC  00-0F  drivers/misc/ibmvmc.h                                   pseries VMC driver
 0xCD  01     linux/reiserfs_fs.h
 0xCE  01-02  uapi/linux/cxl_mem.h                                    Compute Express Link Memory Devices
-0xCF  02     fs/cifs/ioctl.c
+0xCF  02     fs/smb/client/cifs_ioctl.h
 0xDB  00-0F  drivers/char/mwave/mwavepub.h
 0xDD  00-3F                                                          ZFCP device driver see drivers/s390/scsi/
                                                                      <mailto:aherrman@xxxxxxxxxx>
diff --git a/fs/smb/server/smbfsctl.h b/fs/smb/server/smbfsctl.h
index b98418aae20c..ecdf8f6e0df4 100644
--- a/fs/smb/server/smbfsctl.h
+++ b/fs/smb/server/smbfsctl.h
@@ -1,6 +1,6 @@
 /* SPDX-License-Identifier: LGPL-2.1+ */
 /*
- *   fs/cifs/smbfsctl.h: SMB, CIFS, SMB2 FSCTL definitions
+ *   fs/smb/server/smbfsctl.h: SMB, CIFS, SMB2 FSCTL definitions
  *
  *   Copyright (c) International Business Machines  Corp., 2002,2009
  *   Author(s): Steve French (sfrench@xxxxxxxxxx)
diff --git a/fs/smb/server/smbstatus.h b/fs/smb/server/smbstatus.h
index 108a8b6ed24a..8963deb42404 100644
--- a/fs/smb/server/smbstatus.h
+++ b/fs/smb/server/smbstatus.h
@@ -1,6 +1,6 @@
 /* SPDX-License-Identifier: LGPL-2.1+ */
 /*
- *   fs/cifs/smb2status.h
+ *   fs/server/smb2status.h
  *
  *   SMB2 Status code (network error) definitions
  *   Definitions are from MS-ERREF
-- 
2.34.1

From 909b8a8f6475bb9902e3621d3cd9cba3a95e3f0e Mon Sep 17 00:00:00 2001
From: Steve French <stfrench@xxxxxxxxxxxxx>
Date: Sun, 21 May 2023 20:46:30 -0500
Subject: [PATCH 1/3] smb: move client and server files to common directory
 fs/smb

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

Suggested-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
Acked-by: Namjae Jeon <linkinjeon@xxxxxxxxxx>
Signed-off-by: Steve French <stfrench@xxxxxxxxxxxxx>
---
 MAINTAINERS                                           |  8 ++++----
 fs/Kconfig                                            |  9 +--------
 fs/Makefile                                           |  4 +---
 fs/smb/Kconfig                                        | 11 +++++++++++
 fs/smb/Makefile                                       |  5 +++++
 fs/{cifs => smb/client}/Kconfig                       |  1 +
 fs/{cifs => smb/client}/Makefile                      |  0
 fs/{cifs => smb/client}/asn1.c                        |  0
 fs/{cifs => smb/client}/cached_dir.c                  |  0
 fs/{cifs => smb/client}/cached_dir.h                  |  0
 fs/{cifs => smb/client}/cifs_debug.c                  |  0
 fs/{cifs => smb/client}/cifs_debug.h                  |  0
 fs/{cifs => smb/client}/cifs_dfs_ref.c                |  0
 fs/{cifs => smb/client}/cifs_fs_sb.h                  |  0
 fs/{cifs => smb/client}/cifs_ioctl.h                  |  0
 fs/{cifs => smb/client}/cifs_spnego.c                 |  0
 fs/{cifs => smb/client}/cifs_spnego.h                 |  0
 fs/{cifs => smb/client}/cifs_spnego_negtokeninit.asn1 |  0
 fs/{cifs => smb/client}/cifs_swn.c                    |  0
 fs/{cifs => smb/client}/cifs_swn.h                    |  0
 fs/{cifs => smb/client}/cifs_unicode.c                |  0
 fs/{cifs => smb/client}/cifs_unicode.h                |  0
 fs/{cifs => smb/client}/cifs_uniupr.h                 |  0
 fs/{cifs => smb/client}/cifsacl.c                     |  0
 fs/{cifs => smb/client}/cifsacl.h                     |  0
 fs/{cifs => smb/client}/cifsencrypt.c                 |  2 +-
 fs/{cifs => smb/client}/cifsfs.c                      |  0
 fs/{cifs => smb/client}/cifsfs.h                      |  0
 fs/{cifs => smb/client}/cifsglob.h                    |  2 +-
 fs/{cifs => smb/client}/cifspdu.h                     |  2 +-
 fs/{cifs => smb/client}/cifsproto.h                   |  0
 fs/{cifs => smb/client}/cifsroot.c                    |  0
 fs/{cifs => smb/client}/cifssmb.c                     |  0
 fs/{cifs => smb/client}/connect.c                     |  0
 fs/{cifs => smb/client}/dfs.c                         |  0
 fs/{cifs => smb/client}/dfs.h                         |  0
 fs/{cifs => smb/client}/dfs_cache.c                   |  0
 fs/{cifs => smb/client}/dfs_cache.h                   |  0
 fs/{cifs => smb/client}/dir.c                         |  0
 fs/{cifs => smb/client}/dns_resolve.c                 |  0
 fs/{cifs => smb/client}/dns_resolve.h                 |  0
 fs/{cifs => smb/client}/export.c                      |  0
 fs/{cifs => smb/client}/file.c                        |  0
 fs/{cifs => smb/client}/fs_context.c                  |  0
 fs/{cifs => smb/client}/fs_context.h                  |  0
 fs/{cifs => smb/client}/fscache.c                     |  0
 fs/{cifs => smb/client}/fscache.h                     |  0
 fs/{cifs => smb/client}/inode.c                       |  0
 fs/{cifs => smb/client}/ioctl.c                       |  0
 fs/{cifs => smb/client}/link.c                        |  0
 fs/{cifs => smb/client}/misc.c                        |  0
 fs/{cifs => smb/client}/netlink.c                     |  0
 fs/{cifs => smb/client}/netlink.h                     |  0
 fs/{cifs => smb/client}/netmisc.c                     |  0
 fs/{cifs => smb/client}/nterr.c                       |  0
 fs/{cifs => smb/client}/nterr.h                       |  0
 fs/{cifs => smb/client}/ntlmssp.h                     |  0
 fs/{cifs => smb/client}/readdir.c                     |  0
 fs/{cifs => smb/client}/rfc1002pdu.h                  |  0
 fs/{cifs => smb/client}/sess.c                        |  0
 fs/{cifs => smb/client}/smb1ops.c                     |  0
 fs/{cifs => smb/client}/smb2file.c                    |  0
 fs/{cifs => smb/client}/smb2glob.h                    |  0
 fs/{cifs => smb/client}/smb2inode.c                   |  0
 fs/{cifs => smb/client}/smb2maperror.c                |  0
 fs/{cifs => smb/client}/smb2misc.c                    |  0
 fs/{cifs => smb/client}/smb2ops.c                     |  0
 fs/{cifs => smb/client}/smb2pdu.c                     |  0
 fs/{cifs => smb/client}/smb2pdu.h                     |  0
 fs/{cifs => smb/client}/smb2proto.h                   |  0
 fs/{cifs => smb/client}/smb2status.h                  |  0
 fs/{cifs => smb/client}/smb2transport.c               |  0
 fs/{cifs => smb/client}/smbdirect.c                   |  0
 fs/{cifs => smb/client}/smbdirect.h                   |  0
 fs/{cifs => smb/client}/smbencrypt.c                  |  2 +-
 fs/{cifs => smb/client}/smberr.h                      |  0
 fs/{cifs => smb/client}/trace.c                       |  0
 fs/{cifs => smb/client}/trace.h                       |  0
 fs/{cifs => smb/client}/transport.c                   |  0
 fs/{cifs => smb/client}/unc.c                         |  0
 fs/{cifs => smb/client}/winucase.c                    |  0
 fs/{cifs => smb/client}/xattr.c                       |  0
 fs/{smbfs_common => smb/common}/Makefile              |  0
 fs/{smbfs_common => smb/common}/arc4.h                |  0
 fs/{smbfs_common => smb/common}/cifs_arc4.c           |  0
 fs/{smbfs_common => smb/common}/cifs_md4.c            |  0
 fs/{smbfs_common => smb/common}/md4.h                 |  0
 fs/{smbfs_common => smb/common}/smb2pdu.h             |  0
 fs/{smbfs_common => smb/common}/smbfsctl.h            |  0
 fs/{ksmbd => smb/server}/Kconfig                      |  0
 fs/{ksmbd => smb/server}/Makefile                     |  0
 fs/{ksmbd => smb/server}/asn1.c                       |  0
 fs/{ksmbd => smb/server}/asn1.h                       |  0
 fs/{ksmbd => smb/server}/auth.c                       |  2 +-
 fs/{ksmbd => smb/server}/auth.h                       |  0
 fs/{ksmbd => smb/server}/connection.c                 |  0
 fs/{ksmbd => smb/server}/connection.h                 |  0
 fs/{ksmbd => smb/server}/crypto_ctx.c                 |  0
 fs/{ksmbd => smb/server}/crypto_ctx.h                 |  0
 fs/{ksmbd => smb/server}/glob.h                       |  0
 fs/{ksmbd => smb/server}/ksmbd_netlink.h              |  0
 .../server}/ksmbd_spnego_negtokeninit.asn1            |  0
 .../server}/ksmbd_spnego_negtokentarg.asn1            |  0
 fs/{ksmbd => smb/server}/ksmbd_work.c                 |  0
 fs/{ksmbd => smb/server}/ksmbd_work.h                 |  0
 fs/{ksmbd => smb/server}/mgmt/ksmbd_ida.c             |  0
 fs/{ksmbd => smb/server}/mgmt/ksmbd_ida.h             |  0
 fs/{ksmbd => smb/server}/mgmt/share_config.c          |  0
 fs/{ksmbd => smb/server}/mgmt/share_config.h          |  0
 fs/{ksmbd => smb/server}/mgmt/tree_connect.c          |  0
 fs/{ksmbd => smb/server}/mgmt/tree_connect.h          |  0
 fs/{ksmbd => smb/server}/mgmt/user_config.c           |  0
 fs/{ksmbd => smb/server}/mgmt/user_config.h           |  0
 fs/{ksmbd => smb/server}/mgmt/user_session.c          |  0
 fs/{ksmbd => smb/server}/mgmt/user_session.h          |  0
 fs/{ksmbd => smb/server}/misc.c                       |  0
 fs/{ksmbd => smb/server}/misc.h                       |  0
 fs/{ksmbd => smb/server}/ndr.c                        |  0
 fs/{ksmbd => smb/server}/ndr.h                        |  0
 fs/{ksmbd => smb/server}/nterr.h                      |  0
 fs/{ksmbd => smb/server}/ntlmssp.h                    |  0
 fs/{ksmbd => smb/server}/oplock.c                     |  0
 fs/{ksmbd => smb/server}/oplock.h                     |  0
 fs/{ksmbd => smb/server}/server.c                     |  0
 fs/{ksmbd => smb/server}/server.h                     |  0
 fs/{ksmbd => smb/server}/smb2misc.c                   |  0
 fs/{ksmbd => smb/server}/smb2ops.c                    |  0
 fs/{ksmbd => smb/server}/smb2pdu.c                    |  0
 fs/{ksmbd => smb/server}/smb2pdu.h                    |  0
 fs/{ksmbd => smb/server}/smb_common.c                 |  0
 fs/{ksmbd => smb/server}/smb_common.h                 |  2 +-
 fs/{ksmbd => smb/server}/smbacl.c                     |  0
 fs/{ksmbd => smb/server}/smbacl.h                     |  0
 fs/{ksmbd => smb/server}/smbfsctl.h                   |  0
 fs/{ksmbd => smb/server}/smbstatus.h                  |  0
 fs/{ksmbd => smb/server}/transport_ipc.c              |  0
 fs/{ksmbd => smb/server}/transport_ipc.h              |  0
 fs/{ksmbd => smb/server}/transport_rdma.c             |  0
 fs/{ksmbd => smb/server}/transport_rdma.h             |  0
 fs/{ksmbd => smb/server}/transport_tcp.c              |  0
 fs/{ksmbd => smb/server}/transport_tcp.h              |  0
 fs/{ksmbd => smb/server}/unicode.c                    |  0
 fs/{ksmbd => smb/server}/unicode.h                    |  0
 fs/{ksmbd => smb/server}/uniupr.h                     |  0
 fs/{ksmbd => smb/server}/vfs.c                        |  0
 fs/{ksmbd => smb/server}/vfs.h                        |  0
 fs/{ksmbd => smb/server}/vfs_cache.c                  |  0
 fs/{ksmbd => smb/server}/vfs_cache.h                  |  0
 fs/{ksmbd => smb/server}/xattr.h                      |  0
 149 files changed, 29 insertions(+), 21 deletions(-)
 create mode 100644 fs/smb/Kconfig
 create mode 100644 fs/smb/Makefile
 rename fs/{cifs => smb/client}/Kconfig (99%)
 rename fs/{cifs => smb/client}/Makefile (100%)
 rename fs/{cifs => smb/client}/asn1.c (100%)
 rename fs/{cifs => smb/client}/cached_dir.c (100%)
 rename fs/{cifs => smb/client}/cached_dir.h (100%)
 rename fs/{cifs => smb/client}/cifs_debug.c (100%)
 rename fs/{cifs => smb/client}/cifs_debug.h (100%)
 rename fs/{cifs => smb/client}/cifs_dfs_ref.c (100%)
 rename fs/{cifs => smb/client}/cifs_fs_sb.h (100%)
 rename fs/{cifs => smb/client}/cifs_ioctl.h (100%)
 rename fs/{cifs => smb/client}/cifs_spnego.c (100%)
 rename fs/{cifs => smb/client}/cifs_spnego.h (100%)
 rename fs/{cifs => smb/client}/cifs_spnego_negtokeninit.asn1 (100%)
 rename fs/{cifs => smb/client}/cifs_swn.c (100%)
 rename fs/{cifs => smb/client}/cifs_swn.h (100%)
 rename fs/{cifs => smb/client}/cifs_unicode.c (100%)
 rename fs/{cifs => smb/client}/cifs_unicode.h (100%)
 rename fs/{cifs => smb/client}/cifs_uniupr.h (100%)
 rename fs/{cifs => smb/client}/cifsacl.c (100%)
 rename fs/{cifs => smb/client}/cifsacl.h (100%)
 rename fs/{cifs => smb/client}/cifsencrypt.c (99%)
 rename fs/{cifs => smb/client}/cifsfs.c (100%)
 rename fs/{cifs => smb/client}/cifsfs.h (100%)
 rename fs/{cifs => smb/client}/cifsglob.h (99%)
 rename fs/{cifs => smb/client}/cifspdu.h (99%)
 rename fs/{cifs => smb/client}/cifsproto.h (100%)
 rename fs/{cifs => smb/client}/cifsroot.c (100%)
 rename fs/{cifs => smb/client}/cifssmb.c (100%)
 rename fs/{cifs => smb/client}/connect.c (100%)
 rename fs/{cifs => smb/client}/dfs.c (100%)
 rename fs/{cifs => smb/client}/dfs.h (100%)
 rename fs/{cifs => smb/client}/dfs_cache.c (100%)
 rename fs/{cifs => smb/client}/dfs_cache.h (100%)
 rename fs/{cifs => smb/client}/dir.c (100%)
 rename fs/{cifs => smb/client}/dns_resolve.c (100%)
 rename fs/{cifs => smb/client}/dns_resolve.h (100%)
 rename fs/{cifs => smb/client}/export.c (100%)
 rename fs/{cifs => smb/client}/file.c (100%)
 rename fs/{cifs => smb/client}/fs_context.c (100%)
 rename fs/{cifs => smb/client}/fs_context.h (100%)
 rename fs/{cifs => smb/client}/fscache.c (100%)
 rename fs/{cifs => smb/client}/fscache.h (100%)
 rename fs/{cifs => smb/client}/inode.c (100%)
 rename fs/{cifs => smb/client}/ioctl.c (100%)
 rename fs/{cifs => smb/client}/link.c (100%)
 rename fs/{cifs => smb/client}/misc.c (100%)
 rename fs/{cifs => smb/client}/netlink.c (100%)
 rename fs/{cifs => smb/client}/netlink.h (100%)
 rename fs/{cifs => smb/client}/netmisc.c (100%)
 rename fs/{cifs => smb/client}/nterr.c (100%)
 rename fs/{cifs => smb/client}/nterr.h (100%)
 rename fs/{cifs => smb/client}/ntlmssp.h (100%)
 rename fs/{cifs => smb/client}/readdir.c (100%)
 rename fs/{cifs => smb/client}/rfc1002pdu.h (100%)
 rename fs/{cifs => smb/client}/sess.c (100%)
 rename fs/{cifs => smb/client}/smb1ops.c (100%)
 rename fs/{cifs => smb/client}/smb2file.c (100%)
 rename fs/{cifs => smb/client}/smb2glob.h (100%)
 rename fs/{cifs => smb/client}/smb2inode.c (100%)
 rename fs/{cifs => smb/client}/smb2maperror.c (100%)
 rename fs/{cifs => smb/client}/smb2misc.c (100%)
 rename fs/{cifs => smb/client}/smb2ops.c (100%)
 rename fs/{cifs => smb/client}/smb2pdu.c (100%)
 rename fs/{cifs => smb/client}/smb2pdu.h (100%)
 rename fs/{cifs => smb/client}/smb2proto.h (100%)
 rename fs/{cifs => smb/client}/smb2status.h (100%)
 rename fs/{cifs => smb/client}/smb2transport.c (100%)
 rename fs/{cifs => smb/client}/smbdirect.c (100%)
 rename fs/{cifs => smb/client}/smbdirect.h (100%)
 rename fs/{cifs => smb/client}/smbencrypt.c (98%)
 rename fs/{cifs => smb/client}/smberr.h (100%)
 rename fs/{cifs => smb/client}/trace.c (100%)
 rename fs/{cifs => smb/client}/trace.h (100%)
 rename fs/{cifs => smb/client}/transport.c (100%)
 rename fs/{cifs => smb/client}/unc.c (100%)
 rename fs/{cifs => smb/client}/winucase.c (100%)
 rename fs/{cifs => smb/client}/xattr.c (100%)
 rename fs/{smbfs_common => smb/common}/Makefile (100%)
 rename fs/{smbfs_common => smb/common}/arc4.h (100%)
 rename fs/{smbfs_common => smb/common}/cifs_arc4.c (100%)
 rename fs/{smbfs_common => smb/common}/cifs_md4.c (100%)
 rename fs/{smbfs_common => smb/common}/md4.h (100%)
 rename fs/{smbfs_common => smb/common}/smb2pdu.h (100%)
 rename fs/{smbfs_common => smb/common}/smbfsctl.h (100%)
 rename fs/{ksmbd => smb/server}/Kconfig (100%)
 rename fs/{ksmbd => smb/server}/Makefile (100%)
 rename fs/{ksmbd => smb/server}/asn1.c (100%)
 rename fs/{ksmbd => smb/server}/asn1.h (100%)
 rename fs/{ksmbd => smb/server}/auth.c (99%)
 rename fs/{ksmbd => smb/server}/auth.h (100%)
 rename fs/{ksmbd => smb/server}/connection.c (100%)
 rename fs/{ksmbd => smb/server}/connection.h (100%)
 rename fs/{ksmbd => smb/server}/crypto_ctx.c (100%)
 rename fs/{ksmbd => smb/server}/crypto_ctx.h (100%)
 rename fs/{ksmbd => smb/server}/glob.h (100%)
 rename fs/{ksmbd => smb/server}/ksmbd_netlink.h (100%)
 rename fs/{ksmbd => smb/server}/ksmbd_spnego_negtokeninit.asn1 (100%)
 rename fs/{ksmbd => smb/server}/ksmbd_spnego_negtokentarg.asn1 (100%)
 rename fs/{ksmbd => smb/server}/ksmbd_work.c (100%)
 rename fs/{ksmbd => smb/server}/ksmbd_work.h (100%)
 rename fs/{ksmbd => smb/server}/mgmt/ksmbd_ida.c (100%)
 rename fs/{ksmbd => smb/server}/mgmt/ksmbd_ida.h (100%)
 rename fs/{ksmbd => smb/server}/mgmt/share_config.c (100%)
 rename fs/{ksmbd => smb/server}/mgmt/share_config.h (100%)
 rename fs/{ksmbd => smb/server}/mgmt/tree_connect.c (100%)
 rename fs/{ksmbd => smb/server}/mgmt/tree_connect.h (100%)
 rename fs/{ksmbd => smb/server}/mgmt/user_config.c (100%)
 rename fs/{ksmbd => smb/server}/mgmt/user_config.h (100%)
 rename fs/{ksmbd => smb/server}/mgmt/user_session.c (100%)
 rename fs/{ksmbd => smb/server}/mgmt/user_session.h (100%)
 rename fs/{ksmbd => smb/server}/misc.c (100%)
 rename fs/{ksmbd => smb/server}/misc.h (100%)
 rename fs/{ksmbd => smb/server}/ndr.c (100%)
 rename fs/{ksmbd => smb/server}/ndr.h (100%)
 rename fs/{ksmbd => smb/server}/nterr.h (100%)
 rename fs/{ksmbd => smb/server}/ntlmssp.h (100%)
 rename fs/{ksmbd => smb/server}/oplock.c (100%)
 rename fs/{ksmbd => smb/server}/oplock.h (100%)
 rename fs/{ksmbd => smb/server}/server.c (100%)
 rename fs/{ksmbd => smb/server}/server.h (100%)
 rename fs/{ksmbd => smb/server}/smb2misc.c (100%)
 rename fs/{ksmbd => smb/server}/smb2ops.c (100%)
 rename fs/{ksmbd => smb/server}/smb2pdu.c (100%)
 rename fs/{ksmbd => smb/server}/smb2pdu.h (100%)
 rename fs/{ksmbd => smb/server}/smb_common.c (100%)
 rename fs/{ksmbd => smb/server}/smb_common.h (99%)
 rename fs/{ksmbd => smb/server}/smbacl.c (100%)
 rename fs/{ksmbd => smb/server}/smbacl.h (100%)
 rename fs/{ksmbd => smb/server}/smbfsctl.h (100%)
 rename fs/{ksmbd => smb/server}/smbstatus.h (100%)
 rename fs/{ksmbd => smb/server}/transport_ipc.c (100%)
 rename fs/{ksmbd => smb/server}/transport_ipc.h (100%)
 rename fs/{ksmbd => smb/server}/transport_rdma.c (100%)
 rename fs/{ksmbd => smb/server}/transport_rdma.h (100%)
 rename fs/{ksmbd => smb/server}/transport_tcp.c (100%)
 rename fs/{ksmbd => smb/server}/transport_tcp.h (100%)
 rename fs/{ksmbd => smb/server}/unicode.c (100%)
 rename fs/{ksmbd => smb/server}/unicode.h (100%)
 rename fs/{ksmbd => smb/server}/uniupr.h (100%)
 rename fs/{ksmbd => smb/server}/vfs.c (100%)
 rename fs/{ksmbd => smb/server}/vfs.h (100%)
 rename fs/{ksmbd => smb/server}/vfs_cache.c (100%)
 rename fs/{ksmbd => smb/server}/vfs_cache.h (100%)
 rename fs/{ksmbd => smb/server}/xattr.h (100%)

diff --git a/MAINTAINERS b/MAINTAINERS
index 27ef11624748..902f763e845d 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -5140,8 +5140,8 @@ S:	Supported
 W:	https://wiki.samba.org/index.php/LinuxCIFS
 T:	git git://git.samba.org/sfrench/cifs-2.6.git
 F:	Documentation/admin-guide/cifs/
-F:	fs/cifs/
-F:	fs/smbfs_common/
+F:	fs/smb/client/
+F:	fs/smb/common/
 F:	include/uapi/linux/cifs
 
 COMPACTPCI HOTPLUG CORE
@@ -11301,8 +11301,8 @@ L:	linux-cifs@xxxxxxxxxxxxxxx
 S:	Maintained
 T:	git git://git.samba.org/ksmbd.git
 F:	Documentation/filesystems/cifs/ksmbd.rst
-F:	fs/ksmbd/
-F:	fs/smbfs_common/
+F:	fs/smb/common/
+F:	fs/smb/server/
 
 KERNEL UNIT TESTING FRAMEWORK (KUnit)
 M:	Brendan Higgins <brendanhiggins@xxxxxxxxxx>
diff --git a/fs/Kconfig b/fs/Kconfig
index cc07a0cd3172..18d034ec7953 100644
--- a/fs/Kconfig
+++ b/fs/Kconfig
@@ -368,14 +368,7 @@ config NFS_V4_2_SSC_HELPER
 source "net/sunrpc/Kconfig"
 source "fs/ceph/Kconfig"
 
-source "fs/cifs/Kconfig"
-source "fs/ksmbd/Kconfig"
-
-config SMBFS_COMMON
-	tristate
-	default y if CIFS=y || SMB_SERVER=y
-	default m if CIFS=m || SMB_SERVER=m
-
+source "fs/smb/Kconfig"
 source "fs/coda/Kconfig"
 source "fs/afs/Kconfig"
 source "fs/9p/Kconfig"
diff --git a/fs/Makefile b/fs/Makefile
index 834f1c3dba46..5bfdbf0d7037 100644
--- a/fs/Makefile
+++ b/fs/Makefile
@@ -95,9 +95,7 @@ obj-$(CONFIG_LOCKD)		+= lockd/
 obj-$(CONFIG_NLS)		+= nls/
 obj-y				+= unicode/
 obj-$(CONFIG_SYSV_FS)		+= sysv/
-obj-$(CONFIG_SMBFS_COMMON)	+= smbfs_common/
-obj-$(CONFIG_CIFS)		+= cifs/
-obj-$(CONFIG_SMB_SERVER)	+= ksmbd/
+obj-$(CONFIG_SMBFS)		+= smb/
 obj-$(CONFIG_HPFS_FS)		+= hpfs/
 obj-$(CONFIG_NTFS_FS)		+= ntfs/
 obj-$(CONFIG_NTFS3_FS)		+= ntfs3/
diff --git a/fs/smb/Kconfig b/fs/smb/Kconfig
new file mode 100644
index 000000000000..f010b57d1782
--- /dev/null
+++ b/fs/smb/Kconfig
@@ -0,0 +1,11 @@
+# SPDX-License-Identifier: GPL-2.0-only
+#
+# smbfs configuration
+
+source "fs/smb/client/Kconfig"
+source "fs/smb/server/Kconfig"
+
+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
diff --git a/fs/smb/Makefile b/fs/smb/Makefile
new file mode 100644
index 000000000000..752e97ae40e8
--- /dev/null
+++ b/fs/smb/Makefile
@@ -0,0 +1,5 @@
+# SPDX-License-Identifier: GPL-2.0
+
+obj-$(CONFIG_SMBFS)		+= common/
+obj-$(CONFIG_SMB_CLIENT)	+= client/
+obj-$(CONFIG_SMB_SERVER)	+= server/
diff --git a/fs/cifs/Kconfig b/fs/smb/client/Kconfig
similarity index 99%
rename from fs/cifs/Kconfig
rename to fs/smb/client/Kconfig
index 4c0d53bf931a..172ab7b64c5e 100644
--- a/fs/cifs/Kconfig
+++ b/fs/smb/client/Kconfig
@@ -2,6 +2,7 @@
 config CIFS
 	tristate "SMB3 and CIFS support (advanced network filesystem)"
 	depends on INET
+	select SMB_CLIENT
 	select NLS
 	select CRYPTO
 	select CRYPTO_MD5
diff --git a/fs/cifs/Makefile b/fs/smb/client/Makefile
similarity index 100%
rename from fs/cifs/Makefile
rename to fs/smb/client/Makefile
diff --git a/fs/cifs/asn1.c b/fs/smb/client/asn1.c
similarity index 100%
rename from fs/cifs/asn1.c
rename to fs/smb/client/asn1.c
diff --git a/fs/cifs/cached_dir.c b/fs/smb/client/cached_dir.c
similarity index 100%
rename from fs/cifs/cached_dir.c
rename to fs/smb/client/cached_dir.c
diff --git a/fs/cifs/cached_dir.h b/fs/smb/client/cached_dir.h
similarity index 100%
rename from fs/cifs/cached_dir.h
rename to fs/smb/client/cached_dir.h
diff --git a/fs/cifs/cifs_debug.c b/fs/smb/client/cifs_debug.c
similarity index 100%
rename from fs/cifs/cifs_debug.c
rename to fs/smb/client/cifs_debug.c
diff --git a/fs/cifs/cifs_debug.h b/fs/smb/client/cifs_debug.h
similarity index 100%
rename from fs/cifs/cifs_debug.h
rename to fs/smb/client/cifs_debug.h
diff --git a/fs/cifs/cifs_dfs_ref.c b/fs/smb/client/cifs_dfs_ref.c
similarity index 100%
rename from fs/cifs/cifs_dfs_ref.c
rename to fs/smb/client/cifs_dfs_ref.c
diff --git a/fs/cifs/cifs_fs_sb.h b/fs/smb/client/cifs_fs_sb.h
similarity index 100%
rename from fs/cifs/cifs_fs_sb.h
rename to fs/smb/client/cifs_fs_sb.h
diff --git a/fs/cifs/cifs_ioctl.h b/fs/smb/client/cifs_ioctl.h
similarity index 100%
rename from fs/cifs/cifs_ioctl.h
rename to fs/smb/client/cifs_ioctl.h
diff --git a/fs/cifs/cifs_spnego.c b/fs/smb/client/cifs_spnego.c
similarity index 100%
rename from fs/cifs/cifs_spnego.c
rename to fs/smb/client/cifs_spnego.c
diff --git a/fs/cifs/cifs_spnego.h b/fs/smb/client/cifs_spnego.h
similarity index 100%
rename from fs/cifs/cifs_spnego.h
rename to fs/smb/client/cifs_spnego.h
diff --git a/fs/cifs/cifs_spnego_negtokeninit.asn1 b/fs/smb/client/cifs_spnego_negtokeninit.asn1
similarity index 100%
rename from fs/cifs/cifs_spnego_negtokeninit.asn1
rename to fs/smb/client/cifs_spnego_negtokeninit.asn1
diff --git a/fs/cifs/cifs_swn.c b/fs/smb/client/cifs_swn.c
similarity index 100%
rename from fs/cifs/cifs_swn.c
rename to fs/smb/client/cifs_swn.c
diff --git a/fs/cifs/cifs_swn.h b/fs/smb/client/cifs_swn.h
similarity index 100%
rename from fs/cifs/cifs_swn.h
rename to fs/smb/client/cifs_swn.h
diff --git a/fs/cifs/cifs_unicode.c b/fs/smb/client/cifs_unicode.c
similarity index 100%
rename from fs/cifs/cifs_unicode.c
rename to fs/smb/client/cifs_unicode.c
diff --git a/fs/cifs/cifs_unicode.h b/fs/smb/client/cifs_unicode.h
similarity index 100%
rename from fs/cifs/cifs_unicode.h
rename to fs/smb/client/cifs_unicode.h
diff --git a/fs/cifs/cifs_uniupr.h b/fs/smb/client/cifs_uniupr.h
similarity index 100%
rename from fs/cifs/cifs_uniupr.h
rename to fs/smb/client/cifs_uniupr.h
diff --git a/fs/cifs/cifsacl.c b/fs/smb/client/cifsacl.c
similarity index 100%
rename from fs/cifs/cifsacl.c
rename to fs/smb/client/cifsacl.c
diff --git a/fs/cifs/cifsacl.h b/fs/smb/client/cifsacl.h
similarity index 100%
rename from fs/cifs/cifsacl.h
rename to fs/smb/client/cifsacl.h
diff --git a/fs/cifs/cifsencrypt.c b/fs/smb/client/cifsencrypt.c
similarity index 99%
rename from fs/cifs/cifsencrypt.c
rename to fs/smb/client/cifsencrypt.c
index 357bd27a7fd1..ef4c2e3c9fa6 100644
--- a/fs/cifs/cifsencrypt.c
+++ b/fs/smb/client/cifsencrypt.c
@@ -21,7 +21,7 @@
 #include <linux/random.h>
 #include <linux/highmem.h>
 #include <linux/fips.h>
-#include "../smbfs_common/arc4.h"
+#include "../common/arc4.h"
 #include <crypto/aead.h>
 
 /*
diff --git a/fs/cifs/cifsfs.c b/fs/smb/client/cifsfs.c
similarity index 100%
rename from fs/cifs/cifsfs.c
rename to fs/smb/client/cifsfs.c
diff --git a/fs/cifs/cifsfs.h b/fs/smb/client/cifsfs.h
similarity index 100%
rename from fs/cifs/cifsfs.h
rename to fs/smb/client/cifsfs.h
diff --git a/fs/cifs/cifsglob.h b/fs/smb/client/cifsglob.h
similarity index 99%
rename from fs/cifs/cifsglob.h
rename to fs/smb/client/cifsglob.h
index 5f8fd20951af..0d84bb1a8cd9 100644
--- a/fs/cifs/cifsglob.h
+++ b/fs/smb/client/cifsglob.h
@@ -24,7 +24,7 @@
 #include "cifsacl.h"
 #include <crypto/internal/hash.h>
 #include <uapi/linux/cifs/cifs_mount.h>
-#include "../smbfs_common/smb2pdu.h"
+#include "../common/smb2pdu.h"
 #include "smb2pdu.h"
 #include <linux/filelock.h>
 
diff --git a/fs/cifs/cifspdu.h b/fs/smb/client/cifspdu.h
similarity index 99%
rename from fs/cifs/cifspdu.h
rename to fs/smb/client/cifspdu.h
index 445e3eaebcc1..e17222fec9d2 100644
--- a/fs/cifs/cifspdu.h
+++ b/fs/smb/client/cifspdu.h
@@ -11,7 +11,7 @@
 
 #include <net/sock.h>
 #include <asm/unaligned.h>
-#include "../smbfs_common/smbfsctl.h"
+#include "../common/smbfsctl.h"
 
 #define CIFS_PROT   0
 #define POSIX_PROT  (CIFS_PROT+1)
diff --git a/fs/cifs/cifsproto.h b/fs/smb/client/cifsproto.h
similarity index 100%
rename from fs/cifs/cifsproto.h
rename to fs/smb/client/cifsproto.h
diff --git a/fs/cifs/cifsroot.c b/fs/smb/client/cifsroot.c
similarity index 100%
rename from fs/cifs/cifsroot.c
rename to fs/smb/client/cifsroot.c
diff --git a/fs/cifs/cifssmb.c b/fs/smb/client/cifssmb.c
similarity index 100%
rename from fs/cifs/cifssmb.c
rename to fs/smb/client/cifssmb.c
diff --git a/fs/cifs/connect.c b/fs/smb/client/connect.c
similarity index 100%
rename from fs/cifs/connect.c
rename to fs/smb/client/connect.c
diff --git a/fs/cifs/dfs.c b/fs/smb/client/dfs.c
similarity index 100%
rename from fs/cifs/dfs.c
rename to fs/smb/client/dfs.c
diff --git a/fs/cifs/dfs.h b/fs/smb/client/dfs.h
similarity index 100%
rename from fs/cifs/dfs.h
rename to fs/smb/client/dfs.h
diff --git a/fs/cifs/dfs_cache.c b/fs/smb/client/dfs_cache.c
similarity index 100%
rename from fs/cifs/dfs_cache.c
rename to fs/smb/client/dfs_cache.c
diff --git a/fs/cifs/dfs_cache.h b/fs/smb/client/dfs_cache.h
similarity index 100%
rename from fs/cifs/dfs_cache.h
rename to fs/smb/client/dfs_cache.h
diff --git a/fs/cifs/dir.c b/fs/smb/client/dir.c
similarity index 100%
rename from fs/cifs/dir.c
rename to fs/smb/client/dir.c
diff --git a/fs/cifs/dns_resolve.c b/fs/smb/client/dns_resolve.c
similarity index 100%
rename from fs/cifs/dns_resolve.c
rename to fs/smb/client/dns_resolve.c
diff --git a/fs/cifs/dns_resolve.h b/fs/smb/client/dns_resolve.h
similarity index 100%
rename from fs/cifs/dns_resolve.h
rename to fs/smb/client/dns_resolve.h
diff --git a/fs/cifs/export.c b/fs/smb/client/export.c
similarity index 100%
rename from fs/cifs/export.c
rename to fs/smb/client/export.c
diff --git a/fs/cifs/file.c b/fs/smb/client/file.c
similarity index 100%
rename from fs/cifs/file.c
rename to fs/smb/client/file.c
diff --git a/fs/cifs/fs_context.c b/fs/smb/client/fs_context.c
similarity index 100%
rename from fs/cifs/fs_context.c
rename to fs/smb/client/fs_context.c
diff --git a/fs/cifs/fs_context.h b/fs/smb/client/fs_context.h
similarity index 100%
rename from fs/cifs/fs_context.h
rename to fs/smb/client/fs_context.h
diff --git a/fs/cifs/fscache.c b/fs/smb/client/fscache.c
similarity index 100%
rename from fs/cifs/fscache.c
rename to fs/smb/client/fscache.c
diff --git a/fs/cifs/fscache.h b/fs/smb/client/fscache.h
similarity index 100%
rename from fs/cifs/fscache.h
rename to fs/smb/client/fscache.h
diff --git a/fs/cifs/inode.c b/fs/smb/client/inode.c
similarity index 100%
rename from fs/cifs/inode.c
rename to fs/smb/client/inode.c
diff --git a/fs/cifs/ioctl.c b/fs/smb/client/ioctl.c
similarity index 100%
rename from fs/cifs/ioctl.c
rename to fs/smb/client/ioctl.c
diff --git a/fs/cifs/link.c b/fs/smb/client/link.c
similarity index 100%
rename from fs/cifs/link.c
rename to fs/smb/client/link.c
diff --git a/fs/cifs/misc.c b/fs/smb/client/misc.c
similarity index 100%
rename from fs/cifs/misc.c
rename to fs/smb/client/misc.c
diff --git a/fs/cifs/netlink.c b/fs/smb/client/netlink.c
similarity index 100%
rename from fs/cifs/netlink.c
rename to fs/smb/client/netlink.c
diff --git a/fs/cifs/netlink.h b/fs/smb/client/netlink.h
similarity index 100%
rename from fs/cifs/netlink.h
rename to fs/smb/client/netlink.h
diff --git a/fs/cifs/netmisc.c b/fs/smb/client/netmisc.c
similarity index 100%
rename from fs/cifs/netmisc.c
rename to fs/smb/client/netmisc.c
diff --git a/fs/cifs/nterr.c b/fs/smb/client/nterr.c
similarity index 100%
rename from fs/cifs/nterr.c
rename to fs/smb/client/nterr.c
diff --git a/fs/cifs/nterr.h b/fs/smb/client/nterr.h
similarity index 100%
rename from fs/cifs/nterr.h
rename to fs/smb/client/nterr.h
diff --git a/fs/cifs/ntlmssp.h b/fs/smb/client/ntlmssp.h
similarity index 100%
rename from fs/cifs/ntlmssp.h
rename to fs/smb/client/ntlmssp.h
diff --git a/fs/cifs/readdir.c b/fs/smb/client/readdir.c
similarity index 100%
rename from fs/cifs/readdir.c
rename to fs/smb/client/readdir.c
diff --git a/fs/cifs/rfc1002pdu.h b/fs/smb/client/rfc1002pdu.h
similarity index 100%
rename from fs/cifs/rfc1002pdu.h
rename to fs/smb/client/rfc1002pdu.h
diff --git a/fs/cifs/sess.c b/fs/smb/client/sess.c
similarity index 100%
rename from fs/cifs/sess.c
rename to fs/smb/client/sess.c
diff --git a/fs/cifs/smb1ops.c b/fs/smb/client/smb1ops.c
similarity index 100%
rename from fs/cifs/smb1ops.c
rename to fs/smb/client/smb1ops.c
diff --git a/fs/cifs/smb2file.c b/fs/smb/client/smb2file.c
similarity index 100%
rename from fs/cifs/smb2file.c
rename to fs/smb/client/smb2file.c
diff --git a/fs/cifs/smb2glob.h b/fs/smb/client/smb2glob.h
similarity index 100%
rename from fs/cifs/smb2glob.h
rename to fs/smb/client/smb2glob.h
diff --git a/fs/cifs/smb2inode.c b/fs/smb/client/smb2inode.c
similarity index 100%
rename from fs/cifs/smb2inode.c
rename to fs/smb/client/smb2inode.c
diff --git a/fs/cifs/smb2maperror.c b/fs/smb/client/smb2maperror.c
similarity index 100%
rename from fs/cifs/smb2maperror.c
rename to fs/smb/client/smb2maperror.c
diff --git a/fs/cifs/smb2misc.c b/fs/smb/client/smb2misc.c
similarity index 100%
rename from fs/cifs/smb2misc.c
rename to fs/smb/client/smb2misc.c
diff --git a/fs/cifs/smb2ops.c b/fs/smb/client/smb2ops.c
similarity index 100%
rename from fs/cifs/smb2ops.c
rename to fs/smb/client/smb2ops.c
diff --git a/fs/cifs/smb2pdu.c b/fs/smb/client/smb2pdu.c
similarity index 100%
rename from fs/cifs/smb2pdu.c
rename to fs/smb/client/smb2pdu.c
diff --git a/fs/cifs/smb2pdu.h b/fs/smb/client/smb2pdu.h
similarity index 100%
rename from fs/cifs/smb2pdu.h
rename to fs/smb/client/smb2pdu.h
diff --git a/fs/cifs/smb2proto.h b/fs/smb/client/smb2proto.h
similarity index 100%
rename from fs/cifs/smb2proto.h
rename to fs/smb/client/smb2proto.h
diff --git a/fs/cifs/smb2status.h b/fs/smb/client/smb2status.h
similarity index 100%
rename from fs/cifs/smb2status.h
rename to fs/smb/client/smb2status.h
diff --git a/fs/cifs/smb2transport.c b/fs/smb/client/smb2transport.c
similarity index 100%
rename from fs/cifs/smb2transport.c
rename to fs/smb/client/smb2transport.c
diff --git a/fs/cifs/smbdirect.c b/fs/smb/client/smbdirect.c
similarity index 100%
rename from fs/cifs/smbdirect.c
rename to fs/smb/client/smbdirect.c
diff --git a/fs/cifs/smbdirect.h b/fs/smb/client/smbdirect.h
similarity index 100%
rename from fs/cifs/smbdirect.h
rename to fs/smb/client/smbdirect.h
diff --git a/fs/cifs/smbencrypt.c b/fs/smb/client/smbencrypt.c
similarity index 98%
rename from fs/cifs/smbencrypt.c
rename to fs/smb/client/smbencrypt.c
index 4a0487753869..f0ce26414f17 100644
--- a/fs/cifs/smbencrypt.c
+++ b/fs/smb/client/smbencrypt.c
@@ -24,7 +24,7 @@
 #include "cifsglob.h"
 #include "cifs_debug.h"
 #include "cifsproto.h"
-#include "../smbfs_common/md4.h"
+#include "../common/md4.h"
 
 #ifndef false
 #define false 0
diff --git a/fs/cifs/smberr.h b/fs/smb/client/smberr.h
similarity index 100%
rename from fs/cifs/smberr.h
rename to fs/smb/client/smberr.h
diff --git a/fs/cifs/trace.c b/fs/smb/client/trace.c
similarity index 100%
rename from fs/cifs/trace.c
rename to fs/smb/client/trace.c
diff --git a/fs/cifs/trace.h b/fs/smb/client/trace.h
similarity index 100%
rename from fs/cifs/trace.h
rename to fs/smb/client/trace.h
diff --git a/fs/cifs/transport.c b/fs/smb/client/transport.c
similarity index 100%
rename from fs/cifs/transport.c
rename to fs/smb/client/transport.c
diff --git a/fs/cifs/unc.c b/fs/smb/client/unc.c
similarity index 100%
rename from fs/cifs/unc.c
rename to fs/smb/client/unc.c
diff --git a/fs/cifs/winucase.c b/fs/smb/client/winucase.c
similarity index 100%
rename from fs/cifs/winucase.c
rename to fs/smb/client/winucase.c
diff --git a/fs/cifs/xattr.c b/fs/smb/client/xattr.c
similarity index 100%
rename from fs/cifs/xattr.c
rename to fs/smb/client/xattr.c
diff --git a/fs/smbfs_common/Makefile b/fs/smb/common/Makefile
similarity index 100%
rename from fs/smbfs_common/Makefile
rename to fs/smb/common/Makefile
diff --git a/fs/smbfs_common/arc4.h b/fs/smb/common/arc4.h
similarity index 100%
rename from fs/smbfs_common/arc4.h
rename to fs/smb/common/arc4.h
diff --git a/fs/smbfs_common/cifs_arc4.c b/fs/smb/common/cifs_arc4.c
similarity index 100%
rename from fs/smbfs_common/cifs_arc4.c
rename to fs/smb/common/cifs_arc4.c
diff --git a/fs/smbfs_common/cifs_md4.c b/fs/smb/common/cifs_md4.c
similarity index 100%
rename from fs/smbfs_common/cifs_md4.c
rename to fs/smb/common/cifs_md4.c
diff --git a/fs/smbfs_common/md4.h b/fs/smb/common/md4.h
similarity index 100%
rename from fs/smbfs_common/md4.h
rename to fs/smb/common/md4.h
diff --git a/fs/smbfs_common/smb2pdu.h b/fs/smb/common/smb2pdu.h
similarity index 100%
rename from fs/smbfs_common/smb2pdu.h
rename to fs/smb/common/smb2pdu.h
diff --git a/fs/smbfs_common/smbfsctl.h b/fs/smb/common/smbfsctl.h
similarity index 100%
rename from fs/smbfs_common/smbfsctl.h
rename to fs/smb/common/smbfsctl.h
diff --git a/fs/ksmbd/Kconfig b/fs/smb/server/Kconfig
similarity index 100%
rename from fs/ksmbd/Kconfig
rename to fs/smb/server/Kconfig
diff --git a/fs/ksmbd/Makefile b/fs/smb/server/Makefile
similarity index 100%
rename from fs/ksmbd/Makefile
rename to fs/smb/server/Makefile
diff --git a/fs/ksmbd/asn1.c b/fs/smb/server/asn1.c
similarity index 100%
rename from fs/ksmbd/asn1.c
rename to fs/smb/server/asn1.c
diff --git a/fs/ksmbd/asn1.h b/fs/smb/server/asn1.h
similarity index 100%
rename from fs/ksmbd/asn1.h
rename to fs/smb/server/asn1.h
diff --git a/fs/ksmbd/auth.c b/fs/smb/server/auth.c
similarity index 99%
rename from fs/ksmbd/auth.c
rename to fs/smb/server/auth.c
index df8fb076f6f1..5e5e120edcc2 100644
--- a/fs/ksmbd/auth.c
+++ b/fs/smb/server/auth.c
@@ -29,7 +29,7 @@
 #include "mgmt/user_config.h"
 #include "crypto_ctx.h"
 #include "transport_ipc.h"
-#include "../smbfs_common/arc4.h"
+#include "../common/arc4.h"
 
 /*
  * Fixed format data defining GSS header and fixed string
diff --git a/fs/ksmbd/auth.h b/fs/smb/server/auth.h
similarity index 100%
rename from fs/ksmbd/auth.h
rename to fs/smb/server/auth.h
diff --git a/fs/ksmbd/connection.c b/fs/smb/server/connection.c
similarity index 100%
rename from fs/ksmbd/connection.c
rename to fs/smb/server/connection.c
diff --git a/fs/ksmbd/connection.h b/fs/smb/server/connection.h
similarity index 100%
rename from fs/ksmbd/connection.h
rename to fs/smb/server/connection.h
diff --git a/fs/ksmbd/crypto_ctx.c b/fs/smb/server/crypto_ctx.c
similarity index 100%
rename from fs/ksmbd/crypto_ctx.c
rename to fs/smb/server/crypto_ctx.c
diff --git a/fs/ksmbd/crypto_ctx.h b/fs/smb/server/crypto_ctx.h
similarity index 100%
rename from fs/ksmbd/crypto_ctx.h
rename to fs/smb/server/crypto_ctx.h
diff --git a/fs/ksmbd/glob.h b/fs/smb/server/glob.h
similarity index 100%
rename from fs/ksmbd/glob.h
rename to fs/smb/server/glob.h
diff --git a/fs/ksmbd/ksmbd_netlink.h b/fs/smb/server/ksmbd_netlink.h
similarity index 100%
rename from fs/ksmbd/ksmbd_netlink.h
rename to fs/smb/server/ksmbd_netlink.h
diff --git a/fs/ksmbd/ksmbd_spnego_negtokeninit.asn1 b/fs/smb/server/ksmbd_spnego_negtokeninit.asn1
similarity index 100%
rename from fs/ksmbd/ksmbd_spnego_negtokeninit.asn1
rename to fs/smb/server/ksmbd_spnego_negtokeninit.asn1
diff --git a/fs/ksmbd/ksmbd_spnego_negtokentarg.asn1 b/fs/smb/server/ksmbd_spnego_negtokentarg.asn1
similarity index 100%
rename from fs/ksmbd/ksmbd_spnego_negtokentarg.asn1
rename to fs/smb/server/ksmbd_spnego_negtokentarg.asn1
diff --git a/fs/ksmbd/ksmbd_work.c b/fs/smb/server/ksmbd_work.c
similarity index 100%
rename from fs/ksmbd/ksmbd_work.c
rename to fs/smb/server/ksmbd_work.c
diff --git a/fs/ksmbd/ksmbd_work.h b/fs/smb/server/ksmbd_work.h
similarity index 100%
rename from fs/ksmbd/ksmbd_work.h
rename to fs/smb/server/ksmbd_work.h
diff --git a/fs/ksmbd/mgmt/ksmbd_ida.c b/fs/smb/server/mgmt/ksmbd_ida.c
similarity index 100%
rename from fs/ksmbd/mgmt/ksmbd_ida.c
rename to fs/smb/server/mgmt/ksmbd_ida.c
diff --git a/fs/ksmbd/mgmt/ksmbd_ida.h b/fs/smb/server/mgmt/ksmbd_ida.h
similarity index 100%
rename from fs/ksmbd/mgmt/ksmbd_ida.h
rename to fs/smb/server/mgmt/ksmbd_ida.h
diff --git a/fs/ksmbd/mgmt/share_config.c b/fs/smb/server/mgmt/share_config.c
similarity index 100%
rename from fs/ksmbd/mgmt/share_config.c
rename to fs/smb/server/mgmt/share_config.c
diff --git a/fs/ksmbd/mgmt/share_config.h b/fs/smb/server/mgmt/share_config.h
similarity index 100%
rename from fs/ksmbd/mgmt/share_config.h
rename to fs/smb/server/mgmt/share_config.h
diff --git a/fs/ksmbd/mgmt/tree_connect.c b/fs/smb/server/mgmt/tree_connect.c
similarity index 100%
rename from fs/ksmbd/mgmt/tree_connect.c
rename to fs/smb/server/mgmt/tree_connect.c
diff --git a/fs/ksmbd/mgmt/tree_connect.h b/fs/smb/server/mgmt/tree_connect.h
similarity index 100%
rename from fs/ksmbd/mgmt/tree_connect.h
rename to fs/smb/server/mgmt/tree_connect.h
diff --git a/fs/ksmbd/mgmt/user_config.c b/fs/smb/server/mgmt/user_config.c
similarity index 100%
rename from fs/ksmbd/mgmt/user_config.c
rename to fs/smb/server/mgmt/user_config.c
diff --git a/fs/ksmbd/mgmt/user_config.h b/fs/smb/server/mgmt/user_config.h
similarity index 100%
rename from fs/ksmbd/mgmt/user_config.h
rename to fs/smb/server/mgmt/user_config.h
diff --git a/fs/ksmbd/mgmt/user_session.c b/fs/smb/server/mgmt/user_session.c
similarity index 100%
rename from fs/ksmbd/mgmt/user_session.c
rename to fs/smb/server/mgmt/user_session.c
diff --git a/fs/ksmbd/mgmt/user_session.h b/fs/smb/server/mgmt/user_session.h
similarity index 100%
rename from fs/ksmbd/mgmt/user_session.h
rename to fs/smb/server/mgmt/user_session.h
diff --git a/fs/ksmbd/misc.c b/fs/smb/server/misc.c
similarity index 100%
rename from fs/ksmbd/misc.c
rename to fs/smb/server/misc.c
diff --git a/fs/ksmbd/misc.h b/fs/smb/server/misc.h
similarity index 100%
rename from fs/ksmbd/misc.h
rename to fs/smb/server/misc.h
diff --git a/fs/ksmbd/ndr.c b/fs/smb/server/ndr.c
similarity index 100%
rename from fs/ksmbd/ndr.c
rename to fs/smb/server/ndr.c
diff --git a/fs/ksmbd/ndr.h b/fs/smb/server/ndr.h
similarity index 100%
rename from fs/ksmbd/ndr.h
rename to fs/smb/server/ndr.h
diff --git a/fs/ksmbd/nterr.h b/fs/smb/server/nterr.h
similarity index 100%
rename from fs/ksmbd/nterr.h
rename to fs/smb/server/nterr.h
diff --git a/fs/ksmbd/ntlmssp.h b/fs/smb/server/ntlmssp.h
similarity index 100%
rename from fs/ksmbd/ntlmssp.h
rename to fs/smb/server/ntlmssp.h
diff --git a/fs/ksmbd/oplock.c b/fs/smb/server/oplock.c
similarity index 100%
rename from fs/ksmbd/oplock.c
rename to fs/smb/server/oplock.c
diff --git a/fs/ksmbd/oplock.h b/fs/smb/server/oplock.h
similarity index 100%
rename from fs/ksmbd/oplock.h
rename to fs/smb/server/oplock.h
diff --git a/fs/ksmbd/server.c b/fs/smb/server/server.c
similarity index 100%
rename from fs/ksmbd/server.c
rename to fs/smb/server/server.c
diff --git a/fs/ksmbd/server.h b/fs/smb/server/server.h
similarity index 100%
rename from fs/ksmbd/server.h
rename to fs/smb/server/server.h
diff --git a/fs/ksmbd/smb2misc.c b/fs/smb/server/smb2misc.c
similarity index 100%
rename from fs/ksmbd/smb2misc.c
rename to fs/smb/server/smb2misc.c
diff --git a/fs/ksmbd/smb2ops.c b/fs/smb/server/smb2ops.c
similarity index 100%
rename from fs/ksmbd/smb2ops.c
rename to fs/smb/server/smb2ops.c
diff --git a/fs/ksmbd/smb2pdu.c b/fs/smb/server/smb2pdu.c
similarity index 100%
rename from fs/ksmbd/smb2pdu.c
rename to fs/smb/server/smb2pdu.c
diff --git a/fs/ksmbd/smb2pdu.h b/fs/smb/server/smb2pdu.h
similarity index 100%
rename from fs/ksmbd/smb2pdu.h
rename to fs/smb/server/smb2pdu.h
diff --git a/fs/ksmbd/smb_common.c b/fs/smb/server/smb_common.c
similarity index 100%
rename from fs/ksmbd/smb_common.c
rename to fs/smb/server/smb_common.c
diff --git a/fs/ksmbd/smb_common.h b/fs/smb/server/smb_common.h
similarity index 99%
rename from fs/ksmbd/smb_common.h
rename to fs/smb/server/smb_common.h
index 9130d2e3cd78..6b0d5f1fe85c 100644
--- a/fs/ksmbd/smb_common.h
+++ b/fs/smb/server/smb_common.h
@@ -10,7 +10,7 @@
 
 #include "glob.h"
 #include "nterr.h"
-#include "../smbfs_common/smb2pdu.h"
+#include "../common/smb2pdu.h"
 #include "smb2pdu.h"
 
 /* ksmbd's Specific ERRNO */
diff --git a/fs/ksmbd/smbacl.c b/fs/smb/server/smbacl.c
similarity index 100%
rename from fs/ksmbd/smbacl.c
rename to fs/smb/server/smbacl.c
diff --git a/fs/ksmbd/smbacl.h b/fs/smb/server/smbacl.h
similarity index 100%
rename from fs/ksmbd/smbacl.h
rename to fs/smb/server/smbacl.h
diff --git a/fs/ksmbd/smbfsctl.h b/fs/smb/server/smbfsctl.h
similarity index 100%
rename from fs/ksmbd/smbfsctl.h
rename to fs/smb/server/smbfsctl.h
diff --git a/fs/ksmbd/smbstatus.h b/fs/smb/server/smbstatus.h
similarity index 100%
rename from fs/ksmbd/smbstatus.h
rename to fs/smb/server/smbstatus.h
diff --git a/fs/ksmbd/transport_ipc.c b/fs/smb/server/transport_ipc.c
similarity index 100%
rename from fs/ksmbd/transport_ipc.c
rename to fs/smb/server/transport_ipc.c
diff --git a/fs/ksmbd/transport_ipc.h b/fs/smb/server/transport_ipc.h
similarity index 100%
rename from fs/ksmbd/transport_ipc.h
rename to fs/smb/server/transport_ipc.h
diff --git a/fs/ksmbd/transport_rdma.c b/fs/smb/server/transport_rdma.c
similarity index 100%
rename from fs/ksmbd/transport_rdma.c
rename to fs/smb/server/transport_rdma.c
diff --git a/fs/ksmbd/transport_rdma.h b/fs/smb/server/transport_rdma.h
similarity index 100%
rename from fs/ksmbd/transport_rdma.h
rename to fs/smb/server/transport_rdma.h
diff --git a/fs/ksmbd/transport_tcp.c b/fs/smb/server/transport_tcp.c
similarity index 100%
rename from fs/ksmbd/transport_tcp.c
rename to fs/smb/server/transport_tcp.c
diff --git a/fs/ksmbd/transport_tcp.h b/fs/smb/server/transport_tcp.h
similarity index 100%
rename from fs/ksmbd/transport_tcp.h
rename to fs/smb/server/transport_tcp.h
diff --git a/fs/ksmbd/unicode.c b/fs/smb/server/unicode.c
similarity index 100%
rename from fs/ksmbd/unicode.c
rename to fs/smb/server/unicode.c
diff --git a/fs/ksmbd/unicode.h b/fs/smb/server/unicode.h
similarity index 100%
rename from fs/ksmbd/unicode.h
rename to fs/smb/server/unicode.h
diff --git a/fs/ksmbd/uniupr.h b/fs/smb/server/uniupr.h
similarity index 100%
rename from fs/ksmbd/uniupr.h
rename to fs/smb/server/uniupr.h
diff --git a/fs/ksmbd/vfs.c b/fs/smb/server/vfs.c
similarity index 100%
rename from fs/ksmbd/vfs.c
rename to fs/smb/server/vfs.c
diff --git a/fs/ksmbd/vfs.h b/fs/smb/server/vfs.h
similarity index 100%
rename from fs/ksmbd/vfs.h
rename to fs/smb/server/vfs.h
diff --git a/fs/ksmbd/vfs_cache.c b/fs/smb/server/vfs_cache.c
similarity index 100%
rename from fs/ksmbd/vfs_cache.c
rename to fs/smb/server/vfs_cache.c
diff --git a/fs/ksmbd/vfs_cache.h b/fs/smb/server/vfs_cache.h
similarity index 100%
rename from fs/ksmbd/vfs_cache.h
rename to fs/smb/server/vfs_cache.h
diff --git a/fs/ksmbd/xattr.h b/fs/smb/server/xattr.h
similarity index 100%
rename from fs/ksmbd/xattr.h
rename to fs/smb/server/xattr.h
-- 
2.34.1

From 449ef93f80ae51c0edac57d74aae3bc113dcca58 Mon Sep 17 00:00:00 2001
From: Steve French <stfrench@xxxxxxxxxxxxx>
Date: Mon, 22 May 2023 09:50:33 -0500
Subject: [PATCH 3/3] smb3: move Documentation/filesystems/cifs to
 Documentation/filesystems/smb

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>
Signed-off-by: Steve French <stfrench@xxxxxxxxxxxxx>
---
 Documentation/filesystems/{cifs => smb}/cifsroot.rst | 0
 Documentation/filesystems/{cifs => smb}/index.rst    | 0
 Documentation/filesystems/{cifs => smb}/ksmbd.rst    | 0
 MAINTAINERS                                          | 2 +-
 4 files changed, 1 insertion(+), 1 deletion(-)
 rename Documentation/filesystems/{cifs => smb}/cifsroot.rst (100%)
 rename Documentation/filesystems/{cifs => smb}/index.rst (100%)
 rename Documentation/filesystems/{cifs => smb}/ksmbd.rst (100%)

diff --git a/Documentation/filesystems/cifs/cifsroot.rst b/Documentation/filesystems/smb/cifsroot.rst
similarity index 100%
rename from Documentation/filesystems/cifs/cifsroot.rst
rename to Documentation/filesystems/smb/cifsroot.rst
diff --git a/Documentation/filesystems/cifs/index.rst b/Documentation/filesystems/smb/index.rst
similarity index 100%
rename from Documentation/filesystems/cifs/index.rst
rename to Documentation/filesystems/smb/index.rst
diff --git a/Documentation/filesystems/cifs/ksmbd.rst b/Documentation/filesystems/smb/ksmbd.rst
similarity index 100%
rename from Documentation/filesystems/cifs/ksmbd.rst
rename to Documentation/filesystems/smb/ksmbd.rst
diff --git a/MAINTAINERS b/MAINTAINERS
index 902f763e845d..6152a4251ce7 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -11300,7 +11300,7 @@ R:	Tom Talpey <tom@xxxxxxxxxx>
 L:	linux-cifs@xxxxxxxxxxxxxxx
 S:	Maintained
 T:	git git://git.samba.org/ksmbd.git
-F:	Documentation/filesystems/cifs/ksmbd.rst
+F:	Documentation/filesystems/smb/ksmbd.rst
 F:	fs/smb/common/
 F:	fs/smb/server/
 
-- 
2.34.1


[Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux