From: Stefan Metzmacher Date: Tue, 4 Nov 2025 16:31:25 +0000 (+0100) Subject: smb: client: no longer use smbdirect_socket_set_custom_workqueue() X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=73dc52d2942ccf4d4f680176c1e7f36aadba4ce8;p=thirdparty%2Fkernel%2Flinux.git 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 Cc: Tom Talpey Cc: Long Li Cc: Namjae Jeon Cc: linux-cifs@vger.kernel.org Cc: samba-technical@lists.samba.org Signed-off-by: Stefan Metzmacher Acked-by: Namjae Jeon Signed-off-by: Steve French --- diff --git a/fs/smb/client/smbdirect.c b/fs/smb/client/smbdirect.c index 73fc86312bbf4..9e67adcdc7d3e 100644 --- a/fs/smb/client/smbdirect.c +++ b/fs/smb/client/smbdirect.c @@ -211,7 +211,6 @@ void smbd_destroy(struct TCP_Server_Info *server) smbdirect_socket_release(info->socket); - destroy_workqueue(info->workqueue); kfree(info); server->smbd_conn = NULL; } @@ -261,7 +260,6 @@ static struct smbd_connection *_smbd_get_connection( struct smbdirect_socket_parameters *sp; __be16 *sport; u64 port_flags = 0; - char wq_name[80]; int ret; switch (port) { @@ -306,10 +304,6 @@ static struct smbd_connection *_smbd_get_connection( info = kzalloc_obj(*info); if (!info) return NULL; - scnprintf(wq_name, ARRAY_SIZE(wq_name), "smbd_%p", info); - info->workqueue = create_workqueue(wq_name); - if (!info->workqueue) - goto create_wq_failed; ret = smbdirect_socket_create_kern(net, &sc); if (ret) goto socket_init_failed; @@ -320,9 +314,6 @@ static struct smbd_connection *_smbd_get_connection( ret = smbdirect_socket_set_kernel_settings(sc, IB_POLL_SOFTIRQ, GFP_KERNEL); if (ret) goto set_settings_failed; - ret = smbdirect_socket_set_custom_workqueue(sc, info->workqueue); - if (ret) - goto set_workqueue_failed; if (dstaddr->sa_family == AF_INET6) sport = &((struct sockaddr_in6 *)dstaddr)->sin6_port; @@ -342,13 +333,10 @@ static struct smbd_connection *_smbd_get_connection( return info; connect_failed: -set_workqueue_failed: set_settings_failed: set_params_failed: smbdirect_socket_release(sc); socket_init_failed: - destroy_workqueue(info->workqueue); -create_wq_failed: kfree(info); return NULL; } diff --git a/fs/smb/client/smbdirect.h b/fs/smb/client/smbdirect.h index bd03ae72e9c82..0017d5b2de449 100644 --- a/fs/smb/client/smbdirect.h +++ b/fs/smb/client/smbdirect.h @@ -25,7 +25,6 @@ extern int smbd_receive_credit_max; struct smbd_connection { struct smbdirect_socket *socket; - struct workqueue_struct *workqueue; }; /* Create a SMBDirect session */