Linux/linux 3cd8b19fs/smb/client smbdirect.c, fs/smb/common/smbdirect smbdirect_connection.c smbdirect_connect.c

Merge tag 'v7.1-rc-part1-smbdirect-fixes' of git://git.samba.org/ksmbd

Pull smbdirect updates from Steve French:
 "Move smbdirect server and client code to common directory:

   - temporary use of smbdirect_all_c_files.c to allow micro steps

   - factor out common functions into a smbdirect.ko.

   - convert cifs.ko to use smbdirect.ko

   - convert ksmbd.ko to use smbdirect.ko

   - let smbdirect.ko use global workqueues

   - move ib_client logic from ksmbd.ko into smbdirect.ko

   - remove smbdirect_all_c_files.c hack again


    [24 lines not shown]
DeltaFile
+166-2,958fs/smb/client/smbdirect.c
+225-2,739fs/smb/server/transport_rdma.c
+2,181-0fs/smb/common/smbdirect/smbdirect_connection.c
+925-0fs/smb/common/smbdirect/smbdirect_connect.c
+857-0fs/smb/common/smbdirect/smbdirect_accept.c
+743-0fs/smb/common/smbdirect/smbdirect_socket.c
+5,097-5,69724 files not shown
+7,133-5,83730 files

Linux/linux d3d9443tools/testing/selftests/livepatch test-livepatch.sh test-ftrace.sh, tools/testing/selftests/livepatch/test_modules test_klp_mod_patch.c test_klp_mod_target.c

Merge tag 'livepatching-for-7.1' of git://git.kernel.org/pub/scm/linux/kernel/git/livepatching/livepatching

Pull livepatching updates from Petr Mladek:

 - Add two new selftests

* tag 'livepatching-for-7.1' of git://git.kernel.org/pub/scm/linux/kernel/git/livepatching/livepatching:
  selftests/livepatch: add test for module function patching
  selftests: livepatch: test-ftrace: livepatch a traced function
DeltaFile
+100-0tools/testing/selftests/livepatch/test-livepatch.sh
+53-0tools/testing/selftests/livepatch/test_modules/test_klp_mod_patch.c
+39-0tools/testing/selftests/livepatch/test_modules/test_klp_mod_target.c
+36-0tools/testing/selftests/livepatch/test-ftrace.sh
+2-0tools/testing/selftests/livepatch/test_modules/Makefile
+230-05 files

Linux/linux 090748earch/m68k/include/asm ucontext.h, arch/m68k/include/uapi/asm ucontext.h

Merge tag 'm68k-for-v7.1-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k

Pull m68k updates from Geert Uytterhoeven:

 - Add support for QEMU virt-ctrl, and use it for system reset
   and power off on the virt platform

 - defconfig updates

 - Miscellaneous fixes and improvements

* tag 'm68k-for-v7.1-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k:
  m68k: virt: Switch to qemu-virt-ctrl driver
  power: reset: Add QEMU virt-ctrl driver
  m68k: defconfig: Update defconfigs for v7.0-rc1
  m68k: emu: Replace unbounded sprintf() in nfhd_init_one()
  m68k: uapi: Add ucontext.h
  m68k: defconfig: hp300: Enable monochrome and 16-color linux logos
  m68k: q40: Remove commented out code
DeltaFile
+122-0drivers/power/reset/qemu-virt-ctrl.c
+1-41arch/m68k/virt/config.c
+34-0arch/m68k/include/uapi/asm/ucontext.h
+0-31arch/m68k/include/asm/ucontext.h
+17-3arch/m68k/virt/platform.c
+0-15arch/m68k/q40/config.c
+174-9012 files not shown
+208-9418 files

Linux/linux 948ef73drivers/firmware/efi memattr.c efi.c, drivers/firmware/efi/libstub fdt.c

Merge tag 'efi-next-for-v7.1' of git://git.kernel.org/pub/scm/linux/kernel/git/efi/efi

Pull EFI updates from Ard Biesheuvel:
 "Again not a busy cycle for EFI, just some minor tweaks and bug fixes:

   - Enable boot graphics resource table (BGRT) on Xen/x86

   - Correct a misguided assumption in the memory attributes table
     sanity check

   - Start tagging efi_mem_reserve()'d regions as MEMBLOCK_RSRV_KERN

   - Some other minor fixes and cleanups"

* tag 'efi-next-for-v7.1' of git://git.kernel.org/pub/scm/linux/kernel/git/efi/efi:
  efi/capsule-loader: fix incorrect sizeof in phys array reallocation
  efi: Tag memblock reservations of boot services regions as RSRV_KERN
  memblock: Permit existing reserved regions to be marked RSRV_KERN
  efi/memattr: Fix thinko in table size sanity check

    [4 lines not shown]
DeltaFile
+28-9drivers/firmware/efi/memattr.c
+12-19drivers/firmware/efi/efi.c
+0-21include/linux/efi.h
+15-0mm/memblock.c
+6-6drivers/firmware/efi/libstub/fdt.c
+5-2drivers/firmware/efi/efi-bgrt.c
+66-572 files not shown
+68-588 files

Linux/linux f0bf3eadrivers/vfio group.c, drivers/vfio/pci/ism main.c

Merge tag 'vfio-v7.1-rc1' of https://github.com/awilliam/linux-vfio

Pull VFIO updates from Alex Williamson:

 - Update QAT vfio-pci variant driver for Gen 5, 420xx devices (Vijay
   Sundar Selvamani, Suman Kumar Chakraborty, Giovanni Cabiddu)

 - Fix vfio selftest MMIO DMA mapping selftest (Alex Mastro)

 - Conversions to const struct class in support of class_create()
   deprecation (Jori Koolstra)

 - Improve selftest compiler compatibility by avoiding initializer on
   variable-length array (Manish Honap)

 - Define new uAPI for drivers supporting migration to advise user-
   space of new initial data for reducing target startup latency.
   Implemented for mlx5 vfio-pci variant driver (Yishai Hadas)


    [45 lines not shown]
DeltaFile
+408-0drivers/vfio/pci/ism/main.c
+74-50drivers/vfio/pci/mlx5/main.c
+26-18drivers/vfio/pci/xe/main.c
+40-2include/linux/vfio.h
+14-19samples/vfio-mdev/mtty.c
+11-15drivers/vfio/group.c
+573-10424 files not shown
+741-16830 files

Linux/linux 448c0f8tools/testing/selftests/livepatch test-livepatch.sh, tools/testing/selftests/livepatch/test_modules test_klp_mod_patch.c test_klp_mod_target.c

Merge branch 'for-7.1/module-function-test' into for-linus
DeltaFile
+100-0tools/testing/selftests/livepatch/test-livepatch.sh
+53-0tools/testing/selftests/livepatch/test_modules/test_klp_mod_patch.c
+39-0tools/testing/selftests/livepatch/test_modules/test_klp_mod_target.c
+2-0tools/testing/selftests/livepatch/test_modules/Makefile
+194-04 files

Linux/linux 25c2e34fs/smb/common/smbdirect smbdirect_socket.c

smb: smbdirect: fix the logic in smbdirect_socket_destroy_sync() without an error

If smbdirect_socket_destroy_sync() and sc->first_error was not set
we should set -ESHUTDOWN, that's a better condition
doing it only implicitly with the
sc->status < SMBDIRECT_SOCKET_DISCONNECTING check.

Cc: Steve French <smfrench at gmail.com>
Cc: Tom Talpey <tom at talpey.com>
Cc: Long Li <longli at microsoft.com>
Cc: Namjae Jeon <linkinjeon at kernel.org>
Cc: David Howells <dhowells at redhat.com>
Cc: Henrique Carvalho <henrique.carvalho at suse.com>
Cc: linux-cifs at vger.kernel.org
Cc: samba-technical at lists.samba.org
Signed-off-by: Stefan Metzmacher <metze at samba.org>
Signed-off-by: Steve French <stfrench at microsoft.com>
DeltaFile
+21-7fs/smb/common/smbdirect/smbdirect_socket.c
+21-71 files

Linux/linux 1adde16fs/smb/common/smbdirect smbdirect_main.c smbdirect_internal.h

smb: smbdirect: introduce global workqueues

These will be used in future and callers should no
longer use smbdirect_socket_set_custom_workqueue().

Cc: Steve French <smfrench at gmail.com>
Cc: Tom Talpey <tom at talpey.com>
Cc: Long Li <longli at microsoft.com>
Cc: Namjae Jeon <linkinjeon at kernel.org>
Cc: linux-cifs at vger.kernel.org
Cc: samba-technical at lists.samba.org
Signed-off-by: Stefan Metzmacher <metze at samba.org>
Acked-by: Namjae Jeon <linkinjeon at kernel.org>
Signed-off-by: Steve French <stfrench at microsoft.com>
DeltaFile
+72-1fs/smb/common/smbdirect/smbdirect_main.c
+9-0fs/smb/common/smbdirect/smbdirect_internal.h
+7-2fs/smb/common/smbdirect/smbdirect_socket.h
+88-33 files

Linux/linux 00ac2a4fs/smb/common/smbdirect smbdirect_mr.c

smb: smbdirect: remove unused smbdirect_connection_mr_io_recovery_work()

This would actually never be used as we only move to
SMBDIRECT_MR_ERROR when we directly call
smbdirect_socket_schedule_cleanup().

Doing an ib_dereg_mr/ib_alloc_mr dance on
working connection is not needed and
it's also pointless on a broken connection
as we don't reuse any ib_pd.

Cc: Steve French <smfrench at gmail.com>
Cc: Tom Talpey <tom at talpey.com>
Cc: Long Li <longli at microsoft.com>
Cc: Namjae Jeon <linkinjeon at kernel.org>
Cc: linux-cifs at vger.kernel.org
Cc: samba-technical at lists.samba.org
Signed-off-by: Stefan Metzmacher <metze at samba.org>
Acked-by: Namjae Jeon <linkinjeon at kernel.org>
Signed-off-by: Steve French <stfrench at microsoft.com>
DeltaFile
+10-85fs/smb/common/smbdirect/smbdirect_mr.c
+10-851 files

Linux/linux 81a7a3afs/smb/common/smbdirect smbdirect_devices.c smbdirect_internal.h

smb: smbdirect: introduce smbdirect_netdev_rdma_capable_mode_type()

This is basically a copy of ksmbd_rdma_capable_netdev() in the
server, but this also prints a message when a device is renamed.

The differences are:
- It uses rdma_for_each_port() instead of implementing the
  same logic again.
- It returns RDMA_NODE_{UNSPECIFIED,IB_CA,RNIC} values instead of bool

Cc: Steve French <smfrench at gmail.com>
Cc: Tom Talpey <tom at talpey.com>
Cc: Long Li <longli at microsoft.com>
Cc: Namjae Jeon <linkinjeon at kernel.org>
Cc: linux-cifs at vger.kernel.org
Cc: samba-technical at lists.samba.org
Signed-off-by: Stefan Metzmacher <metze at samba.org>
Acked-by: Namjae Jeon <linkinjeon at kernel.org>
Signed-off-by: Steve French <stfrench at microsoft.com>
DeltaFile
+277-0fs/smb/common/smbdirect/smbdirect_devices.c
+18-0fs/smb/common/smbdirect/smbdirect_internal.h
+12-2fs/smb/common/smbdirect/smbdirect_main.c
+3-0fs/smb/common/smbdirect/smbdirect_public.h
+1-0fs/smb/common/smbdirect/Makefile
+311-25 files

Linux/linux 98bdc5ffs/smb/server connection.c connection.h

smb: server: remove unused ksmbd_transport_ops.prepare()

This is no longer needed for smbdirect.

Cc: Namjae Jeon <linkinjeon at kernel.org>
Cc: Steve French <smfrench at gmail.com>
Cc: Tom Talpey <tom at talpey.com>
Cc: linux-cifs at vger.kernel.org
Cc: samba-technical at lists.samba.org
Signed-off-by: Stefan Metzmacher <metze at samba.org>
Acked-by: Namjae Jeon <linkinjeon at kernel.org>
Signed-off-by: Steve French <stfrench at microsoft.com>
DeltaFile
+0-4fs/smb/server/connection.c
+0-1fs/smb/server/connection.h
+0-52 files

Linux/linux 33b2894fs/smb/server transport_rdma.c

smb: server: make use of smbdirect_netdev_rdma_capable_mode_type()

This removes is basically the same logic.

Cc: Steve French <smfrench at gmail.com>
Cc: Tom Talpey <tom at talpey.com>
Cc: Long Li <longli at microsoft.com>
Cc: Namjae Jeon <linkinjeon at kernel.org>
Cc: linux-cifs at vger.kernel.org
Cc: samba-technical at lists.samba.org
Signed-off-by: Stefan Metzmacher <metze at samba.org>
Acked-by: Namjae Jeon <linkinjeon at kernel.org>
Signed-off-by: Steve French <stfrench at microsoft.com>
DeltaFile
+2-120fs/smb/server/transport_rdma.c
+2-1201 files

Linux/linux e4ce1fcfs/smb/common/smbdirect smbdirect_connection.c smbdirect_socket.h

smb: smbdirect: prepare use of dedicated workqueues for different steps

This is a preparation in order to have global workqueues in
the smbdirect module instead of having the caller to
provide one.

Cc: Steve French <smfrench at gmail.com>
Cc: Tom Talpey <tom at talpey.com>
Cc: Long Li <longli at microsoft.com>
Cc: Namjae Jeon <linkinjeon at kernel.org>
Cc: linux-cifs at vger.kernel.org
Cc: samba-technical at lists.samba.org
Signed-off-by: Stefan Metzmacher <metze at samba.org>
Acked-by: Namjae Jeon <linkinjeon at kernel.org>
Signed-off-by: Steve French <stfrench at microsoft.com>
DeltaFile
+9-9fs/smb/common/smbdirect/smbdirect_connection.c
+9-2fs/smb/common/smbdirect/smbdirect_socket.h
+7-2fs/smb/common/smbdirect/smbdirect_socket.c
+4-4fs/smb/common/smbdirect/smbdirect_accept.c
+4-4fs/smb/common/smbdirect/smbdirect_connect.c
+33-215 files

Linux/linux 3892007fs/smb/common/smbdirect smbdirect.h

smb: smbdirect: fix copyright header of smbdirect.h

Everything in smbdirect.h was taken from my out of
tree prototype.

Cc: Steve French <smfrench at gmail.com>
Cc: Tom Talpey <tom at talpey.com>
Cc: Long Li <longli at microsoft.com>
Cc: Namjae Jeon <linkinjeon at kernel.org>
Cc: David Howells <dhowells at redhat.com>
Cc: Henrique Carvalho <henrique.carvalho at suse.com>
Cc: linux-cifs at vger.kernel.org
Cc: samba-technical at lists.samba.org
Signed-off-by: Stefan Metzmacher <metze at samba.org>
Signed-off-by: Steve French <stfrench at microsoft.com>
DeltaFile
+1-2fs/smb/common/smbdirect/smbdirect.h
+1-21 files

Linux/linux a40e6f0fs/smb/common/smbdirect smbdirect_socket.c

smb: smbdirect: wrap rdma_disconnect() in rdma_[un]lock_handler()

This might not be needed, but it controls the order
of ib_drain_qp() and rdma_disconnect().

Cc: Steve French <smfrench at gmail.com>
Cc: Tom Talpey <tom at talpey.com>
Cc: Long Li <longli at microsoft.com>
Cc: Namjae Jeon <linkinjeon at kernel.org>
Cc: linux-cifs at vger.kernel.org
Cc: samba-technical at lists.samba.org
Signed-off-by: Stefan Metzmacher <metze at samba.org>
Acked-by: Namjae Jeon <linkinjeon at kernel.org>
Signed-off-by: Steve French <stfrench at microsoft.com>
DeltaFile
+13-0fs/smb/common/smbdirect/smbdirect_socket.c
+13-01 files

Linux/linux 73dc52dfs/smb/client smbdirect.c smbdirect.h

smb: client: no longer use smbdirect_socket_set_custom_workqueue()

smbdirect.ko has global workqueues now, so we should use these
default once.

Cc: Steve French <smfrench at gmail.com>
Cc: Tom Talpey <tom at talpey.com>
Cc: Long Li <longli at microsoft.com>
Cc: Namjae Jeon <linkinjeon at kernel.org>
Cc: linux-cifs at vger.kernel.org
Cc: samba-technical at lists.samba.org
Signed-off-by: Stefan Metzmacher <metze at samba.org>
Acked-by: Namjae Jeon <linkinjeon at kernel.org>
Signed-off-by: Steve French <stfrench at microsoft.com>
DeltaFile
+0-12fs/smb/client/smbdirect.c
+0-1fs/smb/client/smbdirect.h
+0-132 files

Linux/linux aa43bb2fs/smb/common/smbdirect smbdirect_socket.c smbdirect_public.h

smb: smbdirect: remove unused SMBDIRECT_USE_INLINE_C_FILES logic

We always build as standalone module (or as part of the core kernel).

This also removes unused elements from struct smbdirect_socket
and unused exports.

Cc: Steve French <smfrench at gmail.com>
Cc: Tom Talpey <tom at talpey.com>
Cc: Long Li <longli at microsoft.com>
Cc: Namjae Jeon <linkinjeon at kernel.org>
Cc: linux-cifs at vger.kernel.org
Cc: samba-technical at lists.samba.org
Signed-off-by: Stefan Metzmacher <metze at samba.org>
Acked-by: Namjae Jeon <linkinjeon at kernel.org>
Signed-off-by: Steve French <stfrench at microsoft.com>
DeltaFile
+0-71fs/smb/common/smbdirect/smbdirect_socket.c
+0-43fs/smb/common/smbdirect/smbdirect_public.h
+3-35fs/smb/common/smbdirect/smbdirect_internal.h
+0-31fs/smb/common/smbdirect/smbdirect_connection.c
+0-25fs/smb/common/smbdirect/smbdirect_all_c_files.c
+0-15fs/smb/common/smbdirect/smbdirect_socket.h
+3-2206 files not shown
+3-23312 files

Linux/linux ff7673ffs/smb/server transport_rdma.c

smb: server: make use of smbdirect_socket_create_accepting()/smbdirect_socket_release()

With this we no longer embed struct smbdirect_socket, which will allow
us to make it private in the following commits.

Cc: Namjae Jeon <linkinjeon at kernel.org>
Cc: Steve French <smfrench at gmail.com>
Cc: Tom Talpey <tom at talpey.com>
Cc: linux-cifs at vger.kernel.org
Cc: samba-technical at lists.samba.org
Signed-off-by: Stefan Metzmacher <metze at samba.org>
Acked-by: Namjae Jeon <linkinjeon at kernel.org>
Signed-off-by: Steve French <stfrench at microsoft.com>
DeltaFile
+23-30fs/smb/server/transport_rdma.c
+23-301 files

Linux/linux 735610dfs/smb/common/smbdirect smbdirect_socket.c smbdirect.h

smb: smbdirect: change smbdirect_socket_parameters.{initiator_depth,responder_resources} to __u16

We still limit this to U8_MAX as the rdma api only uses __u8
and that's also the limit for Infiniband and RoCE*,
while iWarp would be able to support larger values at
the protocol level.

As struct smbdirect_socket_parameters will be part
of the uapi for IPPROTO_SMBDIRECT in future, change it
now even if userspace sockets won't be supported yet.

Cc: Steve French <smfrench at gmail.com>
Cc: Tom Talpey <tom at talpey.com>
Cc: Long Li <longli at microsoft.com>
Cc: Namjae Jeon <linkinjeon at kernel.org>
Cc: David Howells <dhowells at redhat.com>
Cc: linux-cifs at vger.kernel.org
Cc: samba-technical at lists.samba.org
Acked-by: Henrique Carvalho <henrique.carvalho at suse.com>

    [2 lines not shown]
DeltaFile
+5-0fs/smb/common/smbdirect/smbdirect_socket.c
+2-2fs/smb/common/smbdirect/smbdirect.h
+7-22 files

Linux/linux 2eff5e5fs/smb/server transport_rdma.c

smb: server: make use of smbdirect_socket_{listen,accept}()

We no longer need the custom rdma listener.

The code logic is very similar to transport_tcp.c now
using a kernel thread that loops over smbdirect_socket_accept().

This is the first step in the direction of using IPPROTO_SMBDIRECT
sockets in future.

Cc: Namjae Jeon <linkinjeon at kernel.org>
Cc: Steve French <smfrench at gmail.com>
Cc: Tom Talpey <tom at talpey.com>
Cc: linux-cifs at vger.kernel.org
Cc: samba-technical at lists.samba.org
Signed-off-by: Stefan Metzmacher <metze at samba.org>
Acked-by: Namjae Jeon <linkinjeon at kernel.org>
Signed-off-by: Steve French <stfrench at microsoft.com>
DeltaFile
+128-132fs/smb/server/transport_rdma.c
+128-1321 files

Linux/linux 9460416fs/smb/server transport_rdma.c

smb: server: make use of smbdirect_{socket_init_accepting,connection_wait_for_connected}()

This means we finally only use common functions in the server.

We still use the embedded struct smbdirect_socket and are
able to access internals, but the will be removed in the
next commits as well.

Cc: Namjae Jeon <linkinjeon at kernel.org>
Cc: Steve French <smfrench at gmail.com>
Cc: Tom Talpey <tom at talpey.com>
Cc: linux-cifs at vger.kernel.org
Cc: samba-technical at lists.samba.org
Signed-off-by: Stefan Metzmacher <metze at samba.org>
Acked-by: Namjae Jeon <linkinjeon at kernel.org>
Signed-off-by: Steve French <stfrench at microsoft.com>
DeltaFile
+29-713fs/smb/server/transport_rdma.c
+29-7131 files

Linux/linux 50bdab9fs/smb/server transport_rdma.c Kconfig

smb: server: make use of smbdirect.ko

This means we no longer inline the common smbdirect
.c files and use the exported functions from the
module instead.

Note the connection specific logging is still
redirect to ksmbd.ko functions via
smbdirect_socket_set_logging().

We still don't use real socket layer,
but we're very close...

Cc: Namjae Jeon <linkinjeon at kernel.org>
Cc: Steve French <smfrench at gmail.com>
Cc: Tom Talpey <tom at talpey.com>
Cc: linux-cifs at vger.kernel.org
Cc: samba-technical at lists.samba.org
Signed-off-by: Stefan Metzmacher <metze at samba.org>

    [2 lines not shown]
DeltaFile
+0-10fs/smb/server/transport_rdma.c
+3-2fs/smb/server/Kconfig
+3-122 files

Linux/linux 4b4c21afs/smb/server transport_rdma.c

smb: server: make use of smbdirect_connection_send_iter() and related functions

This makes use of common code for sending messages, this will
allow to make more use of common code in the next commits.

Cc: Namjae Jeon <linkinjeon at kernel.org>
Cc: Steve French <smfrench at gmail.com>
Cc: Tom Talpey <tom at talpey.com>
Cc: linux-cifs at vger.kernel.org
Cc: samba-technical at lists.samba.org
Signed-off-by: Stefan Metzmacher <metze at samba.org>
Acked-by: Namjae Jeon <linkinjeon at kernel.org>
Signed-off-by: Steve French <stfrench at microsoft.com>
DeltaFile
+4-427fs/smb/server/transport_rdma.c
+4-4271 files

Linux/linux d09a040fs/smb/common/smbdirect smbdirect_mr.c

smb: smbdirect: let smbdirect_connection_deregister_mr_io unlock while waiting

We should not hold a mutex locked during wait_for_completion()
holding a reference is enough.

Cc: Steve French <smfrench at gmail.com>
Cc: Tom Talpey <tom at talpey.com>
Cc: Long Li <longli at microsoft.com>
Cc: Namjae Jeon <linkinjeon at kernel.org>
Cc: David Howells <dhowells at redhat.com>
Cc: Henrique Carvalho <henrique.carvalho at suse.com>
Cc: linux-cifs at vger.kernel.org
Cc: samba-technical at lists.samba.org
Signed-off-by: Stefan Metzmacher <metze at samba.org>
Signed-off-by: Steve French <stfrench at microsoft.com>
DeltaFile
+8-0fs/smb/common/smbdirect/smbdirect_mr.c
+8-01 files

Linux/linux 649c475fs/smb/server transport_rdma.c transport_rdma.h

smb: server: no longer use smbdirect_socket_set_custom_workqueue()

smbdirect.ko has global workqueues now, so we should use these
default once.

Cc: Namjae Jeon <linkinjeon at kernel.org>
Cc: Steve French <smfrench at gmail.com>
Cc: Tom Talpey <tom at talpey.com>
Cc: linux-cifs at vger.kernel.org
Cc: samba-technical at lists.samba.org
Signed-off-by: Stefan Metzmacher <metze at samba.org>
Acked-by: Namjae Jeon <linkinjeon at kernel.org>
Signed-off-by: Steve French <stfrench at microsoft.com>
DeltaFile
+0-30fs/smb/server/transport_rdma.c
+0-2fs/smb/server/transport_rdma.h
+0-1fs/smb/server/connection.c
+0-333 files

Linux/linux 1b2d94afs/smb/server transport_rdma.c transport_rdma.h

smb: server: only use public smbdirect functions

Also remove a lot of unused includes...

Cc: Namjae Jeon <linkinjeon at kernel.org>
Cc: Steve French <smfrench at gmail.com>
Cc: Tom Talpey <tom at talpey.com>
Cc: linux-cifs at vger.kernel.org
Cc: samba-technical at lists.samba.org
Signed-off-by: Stefan Metzmacher <metze at samba.org>
Acked-by: Namjae Jeon <linkinjeon at kernel.org>
Signed-off-by: Steve French <stfrench at microsoft.com>
DeltaFile
+9-16fs/smb/server/transport_rdma.c
+2-0fs/smb/server/transport_rdma.h
+0-1fs/smb/server/smb2pdu.c
+11-173 files

Linux/linux 8688d7afs/smb/server transport_rdma.c

smb: server: make use of smbdirect_map_sges_from_iter()

It will make it easier to move stuff into common code when
both client and server use smbdirect_map_sges_from_iter().

Cc: Namjae Jeon <linkinjeon at kernel.org>
Cc: Steve French <smfrench at gmail.com>
Cc: Tom Talpey <tom at talpey.com>
Cc: linux-cifs at vger.kernel.org
Cc: samba-technical at lists.samba.org
Signed-off-by: Stefan Metzmacher <metze at samba.org>
Acked-by: Namjae Jeon <linkinjeon at kernel.org>
Signed-off-by: Steve French <stfrench at microsoft.com>
DeltaFile
+18-37fs/smb/server/transport_rdma.c
+18-371 files

Linux/linux ab8e924fs/smb/server transport_rdma.c

smb: server: make use of smbdirect_connection_qp_event_handler()

This is a copy of smb_direct_qpair_handler()...

It will allow more code to be moved to common functions
soon.

Cc: Namjae Jeon <linkinjeon at kernel.org>
Cc: Steve French <smfrench at gmail.com>
Cc: Tom Talpey <tom at talpey.com>
Cc: linux-cifs at vger.kernel.org
Cc: samba-technical at lists.samba.org
Signed-off-by: Stefan Metzmacher <metze at samba.org>
Acked-by: Namjae Jeon <linkinjeon at kernel.org>
Signed-off-by: Steve French <stfrench at microsoft.com>
DeltaFile
+1-18fs/smb/server/transport_rdma.c
+1-181 files

Linux/linux bb1d5c4fs/smb/server transport_rdma.c

smb: server: make use of smbdirect_connection_send_io_done()

This also wakes up send_io.pending.dec_wait_queue, which
is currently always empty in the server, but that might
change in future. And we also don't spam the logs on IB_WC_WR_FLUSH_ERR.

Cc: Namjae Jeon <linkinjeon at kernel.org>
Cc: Steve French <smfrench at gmail.com>
Cc: Tom Talpey <tom at talpey.com>
Cc: linux-cifs at vger.kernel.org
Cc: samba-technical at lists.samba.org
Signed-off-by: Stefan Metzmacher <metze at samba.org>
Acked-by: Namjae Jeon <linkinjeon at kernel.org>
Signed-off-by: Steve French <stfrench at microsoft.com>
DeltaFile
+1-67fs/smb/server/transport_rdma.c
+1-671 files

Linux/linux 8ecb32afs/smb/server transport_rdma.c

smb: server: make use of smbdirect_connection_{alloc,free}_send_io()

These are basically copies of smb_direct_{alloc,free}_sendmsg() just
a bit simpler and with the gfp_mask mask abstracted.

For now we still use KSMBD_DEFAULT_GFP, which includes
__GFP_RETRY_MAYFAIL.

The only difference is that we use ib_dma_unmap_page() for all sges,
this simplifies the logic and doesn't matter as
ib_dma_unmap_single() and ib_dma_unmap_page() both operate
on dma_addr_t and dma_unmap_single_attrs() is just an
alias for dma_unmap_page_attrs().
We already had such an inconsistency in the client
code where we use ib_dma_unmap_single(), while we mapped
using ib_dma_map_page().

Cc: Namjae Jeon <linkinjeon at kernel.org>
Cc: Steve French <smfrench at gmail.com>

    [6 lines not shown]
DeltaFile
+11-47fs/smb/server/transport_rdma.c
+11-471 files