linux-cifs.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Steve French <smfrench@gmail.com>
To: Namjae Jeon <linkinjeon@kernel.org>
Cc: Stefan Metzmacher <metze@samba.org>, Tom Talpey <tom@talpey.com>,
	linux-cifs@vger.kernel.org,  samba-technical@lists.samba.org
Subject: Re: replace for-next-next... Re: [PATCH v4 000/142] smb: smbdirect/client/server: make use of common structures
Date: Fri, 12 Sep 2025 19:03:01 -0500	[thread overview]
Message-ID: <CAH2r5ms8JUL+R8zDVa4L2=ydESUFjvPPLdJxHTeOWPFmwCBHQQ@mail.gmail.com> (raw)
In-Reply-To: <CAKYAXd8fJtjESeMiNmAACw8jGkEU_JWCQd3=9XFf_rdx6TxqUw@mail.gmail.com>

updated cifs-2.6.git for-next with the client patch

On Wed, Sep 10, 2025 at 6:36 PM Namjae Jeon <linkinjeon@kernel.org> wrote:
>
> On Thu, Sep 11, 2025 at 4:05 AM Stefan Metzmacher <metze@samba.org> wrote:
> >
> > Hi Steve, hi Namjae,
> Hi Metze,
> >
> > I found "ksmbd: smbdirect: validate data_offset and data_length field of smb_direct_data_transfer"
> > https://git.samba.org/?p=ksmbd.git;a=commitdiff;h=927f8fe05e334d016c598d2cc965161c2808d9ba
> > in ksmbd-for-next-next.
> >
> > I added a Fixes and Reviewed-by tag
> > https://git.samba.org/?p=metze/linux/wip.git;a=commitdiff;h=fa36db4e8d62aa9c3ba1200323d8e01e4eb88b19
> > and two additional patches:
> I will update it with your tags.
> > ksmbd: smbdirect: verify remaining_data_length respects max_fragmented_recv_size
> > https://git.samba.org/?p=metze/linux/wip.git;a=commitdiff;h=9e881174900e53dd2b17c0c0933cc4395ceb47a6
> Looks good to me. I will apply it to #ksmbd-for-next-next.
>
> > smb: client: let recv_done verify data_offset, data_length and remaining_data_length
> > https://git.samba.org/?p=metze/linux/wip.git;a=commitdiff;h=174faeea9ee496b724206d405b74db8b05729f11
> Looks good to me. Reviewed-by: Namjae Jeon <linkinjeon@kernel.org> for
> this client patch.
>
> Thanks!
> >
> > I think these should go into 6.17.
> >
> > As there as conflicts with for-next-next I rebased it again
> > and made sure each commit compiles and the result still passes
> > the tests I made last time.
> >
> > The result can be found under
> > git fetch https://git.samba.org/metze/linux/wip.git for-6.18/fs-smb-20250910-v6
> > https://git.samba.org/?p=metze/linux/wip.git;a=shortlog;h=refs/heads/for-6.18/fs-smb-20250910-v6
> >
> > Please have a look and replace for-next-next again...
> > The diff against the current for-next-next (e2e99af785ee91ce20c6d583e396660494db77a2)
> > and for-6.18/fs-smb-20250910-v6 (1fb2a52741e836f54a4691cbd74d9d70d736e506) follows below.
> >
> > Thanks!
> > metze
> >
> >   fs/smb/client/smbdirect.c                  | 19 ++++++++++++++++++-
> >   fs/smb/common/smbdirect/smbdirect_socket.h |  2 +-
> >   fs/smb/server/transport_rdma.c             | 25 +++++++++++++++++--------
> >   3 files changed, 36 insertions(+), 10 deletions(-)
> >
> > diff --git a/fs/smb/client/smbdirect.c b/fs/smb/client/smbdirect.c
> > index 322334097e30..6215a6e91c67 100644
> > --- a/fs/smb/client/smbdirect.c
> > +++ b/fs/smb/client/smbdirect.c
> > @@ -548,7 +548,9 @@ static void recv_done(struct ib_cq *cq, struct ib_wc *wc)
> >         struct smbdirect_socket *sc = response->socket;
> >         struct smbdirect_socket_parameters *sp = &sc->parameters;
> >         u16 old_recv_credit_target;
> > -       int data_length = 0;
> > +       u32 data_offset = 0;
> > +       u32 data_length = 0;
> > +       u32 remaining_data_length = 0;
> >         bool negotiate_done = false;
> >
> >         log_rdma_recv(INFO,
> > @@ -600,7 +602,22 @@ static void recv_done(struct ib_cq *cq, struct ib_wc *wc)
> >         /* SMBD data transfer packet */
> >         case SMBDIRECT_EXPECT_DATA_TRANSFER:
> >                 data_transfer = smbdirect_recv_io_payload(response);
> > +
> > +               if (wc->byte_len <
> > +                   offsetof(struct smbdirect_data_transfer, padding))
> > +                       goto error;
> > +
> > +               remaining_data_length = le32_to_cpu(data_transfer->remaining_data_length);
> > +               data_offset = le32_to_cpu(data_transfer->data_offset);
> >                 data_length = le32_to_cpu(data_transfer->data_length);
> > +               if (wc->byte_len < data_offset ||
> > +                   wc->byte_len < (u64)data_offset + data_length)
> > +                       goto error;
> > +
> > +               if (remaining_data_length > sp->max_fragmented_recv_size ||
> > +                   data_length > sp->max_fragmented_recv_size ||
> > +                   (u64)remaining_data_length + (u64)data_length > (u64)sp->max_fragmented_recv_size)
> > +                       goto error;
> >
> >                 if (data_length) {
> >                         if (sc->recv_io.reassembly.full_packet_received)
> > diff --git a/fs/smb/common/smbdirect/smbdirect_socket.h b/fs/smb/common/smbdirect/smbdirect_socket.h
> > index 8542de12002a..91eb02fb1600 100644
> > --- a/fs/smb/common/smbdirect/smbdirect_socket.h
> > +++ b/fs/smb/common/smbdirect/smbdirect_socket.h
> > @@ -63,7 +63,7 @@ const char *smbdirect_socket_status_string(enum smbdirect_socket_status status)
> >         case SMBDIRECT_SOCKET_DISCONNECTING:
> >                 return "DISCONNECTING";
> >         case SMBDIRECT_SOCKET_DISCONNECTED:
> > -               return "DISCONNECTED,";
> > +               return "DISCONNECTED";
> >         case SMBDIRECT_SOCKET_DESTROYED:
> >                 return "DESTROYED";
> >         }
> > diff --git a/fs/smb/server/transport_rdma.c b/fs/smb/server/transport_rdma.c
> > index 33d2f5bdb827..e371d8f4c80b 100644
> > --- a/fs/smb/server/transport_rdma.c
> > +++ b/fs/smb/server/transport_rdma.c
> > @@ -538,7 +538,7 @@ static void recv_done(struct ib_cq *cq, struct ib_wc *wc)
> >         case SMBDIRECT_EXPECT_DATA_TRANSFER: {
> >                 struct smbdirect_data_transfer *data_transfer =
> >                         (struct smbdirect_data_transfer *)recvmsg->packet;
> > -               unsigned int data_length;
> > +               u32 remaining_data_length, data_offset, data_length;
> >                 u16 old_recv_credit_target;
> >
> >                 if (wc->byte_len <
> > @@ -548,15 +548,24 @@ static void recv_done(struct ib_cq *cq, struct ib_wc *wc)
> >                         return;
> >                 }
> >
> > +               remaining_data_length = le32_to_cpu(data_transfer->remaining_data_length);
> >                 data_length = le32_to_cpu(data_transfer->data_length);
> > -               if (data_length) {
> > -                       if (wc->byte_len < sizeof(struct smbdirect_data_transfer) +
> > -                           (u64)data_length) {
> > -                               put_recvmsg(sc, recvmsg);
> > -                               smb_direct_disconnect_rdma_connection(sc);
> > -                               return;
> > -                       }
> > +               data_offset = le32_to_cpu(data_transfer->data_offset);
> > +               if (wc->byte_len < data_offset ||
> > +                   wc->byte_len < (u64)data_offset + data_length) {
> > +                       put_recvmsg(sc, recvmsg);
> > +                       smb_direct_disconnect_rdma_connection(sc);
> > +                       return;
> > +               }
> > +               if (remaining_data_length > sp->max_fragmented_recv_size ||
> > +                   data_length > sp->max_fragmented_recv_size ||
> > +                   (u64)remaining_data_length + (u64)data_length > (u64)sp->max_fragmented_recv_size) {
> > +                       put_recvmsg(sc, recvmsg);
> > +                       smb_direct_disconnect_rdma_connection(sc);
> > +                       return;
> > +               }
> >
> > +               if (data_length) {
> >                         if (sc->recv_io.reassembly.full_packet_received)
> >                                 recvmsg->first_segment = true;
> >
> >
> >
> >



-- 
Thanks,

Steve

      reply	other threads:[~2025-09-13  0:03 UTC|newest]

Thread overview: 154+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-08-25 20:39 [PATCH v4 000/142] smb: smbdirect/client/server: make use of common structures Stefan Metzmacher
2025-08-25 20:39 ` [PATCH v4 001/142] smb: smbdirect: introduce smbdirect_socket.status_wait Stefan Metzmacher
2025-08-25 20:39 ` [PATCH v4 002/142] smb: smbdirect: introduce smbdirect_socket_init() Stefan Metzmacher
2025-08-25 20:39 ` [PATCH v4 003/142] smb: smbdirect: introduce smbdirect_socket.disconnect_work Stefan Metzmacher
2025-08-25 20:39 ` [PATCH v4 004/142] smb: smbdirect: introduce smbdirect_socket.send_io.pending.{count,wait_queue} Stefan Metzmacher
2025-09-08  8:49   ` [PATCH v4 004/142] smb: smbdirect: introduce smbdirect_socket.send_io.pending.{count, wait_queue} Stefan Metzmacher
2025-08-25 20:39 ` [PATCH v4 005/142] smb: smbdirect: introduce smbdirect_socket.send_io.credits.{count,wait_queue} Stefan Metzmacher
2025-08-25 20:39 ` [PATCH v4 006/142] smb: smbdirect: introduce struct smbdirect_send_batch Stefan Metzmacher
2025-08-25 20:39 ` [PATCH v4 007/142] smb: smbdirect: introduce smbdirect_socket.rw_io.credits Stefan Metzmacher
2025-08-25 20:39 ` [PATCH v4 008/142] smb: smbdirect: introduce struct smbdirect_rw_io Stefan Metzmacher
2025-08-25 20:39 ` [PATCH v4 009/142] smb: smbdirect: introduce smbdirect_socket.recv_io.{posted,credits} Stefan Metzmacher
2025-08-25 20:39 ` [PATCH v4 010/142] smb: smbdirect: introduce smbdirect_socket_parameters.{resolve_{addr,route},rdma_connect,negotiate}_timeout_msec Stefan Metzmacher
2025-08-25 20:39 ` [PATCH v4 011/142] smb: smbdirect: introduce smbdirect_socket_parameters.{initiator_depth,responder_resources} Stefan Metzmacher
2025-08-25 20:39 ` [PATCH v4 012/142] smb: smbdirect: introduce smbdirect_socket.rdma.legacy_iwarp Stefan Metzmacher
2025-08-25 20:39 ` [PATCH v4 013/142] smb: smbdirect: introduce smbdirect_socket.idle.{keepalive,immediate_work,timer_work} Stefan Metzmacher
2025-08-25 20:39 ` [PATCH v4 014/142] smb: smbdirect: introduce smbdirect_socket.statistics Stefan Metzmacher
2025-08-25 20:39 ` [PATCH v4 015/142] smb: smbdirect: introduce smbdirect_socket.workqueue Stefan Metzmacher
2025-08-25 20:39 ` [PATCH v4 016/142] smb: smbdirect: introduce struct smbdirect_mr_io Stefan Metzmacher
2025-08-25 20:39 ` [PATCH v4 017/142] smb: smbdirect: introduce smbdirect_socket_parameters.max_frmr_depth Stefan Metzmacher
2025-08-25 20:39 ` [PATCH v4 018/142] smb: smbdirect: introduce smbdirect_socket.mr_io.* Stefan Metzmacher
2025-08-25 20:39 ` [PATCH v4 019/142] smb: client/smbdirect: replace SMBDIRECT_SOCKET_CONNECTING with more detailed states Stefan Metzmacher
2025-08-25 20:39 ` [PATCH v4 020/142] smb: client: use status_wait and SMBDIRECT_SOCKET_NEGOTIATE_RUNNING for completion Stefan Metzmacher
2025-08-25 20:39 ` [PATCH v4 021/142] smb: client: use status_wait and SMBDIRECT_SOCKET_RESOLVE_{ADDR,ROUTE}_RUNNING " Stefan Metzmacher
2025-08-25 20:39 ` [PATCH v4 022/142] smb: client: make use of smbdirect_socket.status_wait Stefan Metzmacher
2025-08-25 20:39 ` [PATCH v4 023/142] smb: client: make only use of wake_up[_all]() in smbdirect.c Stefan Metzmacher
2025-08-25 20:39 ` [PATCH v4 024/142] smb: client: make use of smbdirect_socket_init() Stefan Metzmacher
2025-08-25 20:39 ` [PATCH v4 025/142] smb: client: make use of smbdirect_socket.disconnect_work Stefan Metzmacher
2025-08-25 20:39 ` [PATCH v4 026/142] smb: client: make use of smbdirect_socket.send_io.pending.{count,wait_queue} Stefan Metzmacher
2025-09-08  8:53   ` Stefan Metzmacher
2025-08-25 20:39 ` [PATCH v4 027/142] smb: client: make use of smbdirect_socket.send_io.credits.{count,wait_queue} Stefan Metzmacher
2025-08-25 20:39 ` [PATCH v4 028/142] smb: client: make sure smbd_disconnect_rdma_work() doesn't run after smbd_destroy() took over Stefan Metzmacher
2025-08-25 20:39 ` [PATCH v4 029/142] smb: client: use disable[_delayed]_work_sync in smbdirect.c Stefan Metzmacher
2025-08-25 20:39 ` [PATCH v4 030/142] smb: client: let smbd_destroy() call disable_work_sync(&info->post_send_credits_work) Stefan Metzmacher
2025-08-25 20:39 ` [PATCH v4 031/142] smb: client: queue post_recv_credits_work also if the peer raises the credit target Stefan Metzmacher
2025-08-25 20:39 ` [PATCH v4 032/142] smb: client: make use of ib_wc_status_msg() and skip IB_WC_WR_FLUSH_ERR logging Stefan Metzmacher
2025-08-25 20:39 ` [PATCH v4 033/142] smb: client: remove info->wait_receive_queues handling in smbd_destroy() Stefan Metzmacher
2025-08-25 20:39 ` [PATCH v4 034/142] smb: client: limit the range of info->receive_credit_target Stefan Metzmacher
2025-08-25 20:39 ` [PATCH v4 035/142] smb: client: count the number of posted recv_io messages in order to calculated credits Stefan Metzmacher
2025-08-25 20:39 ` [PATCH v4 036/142] smb: client: make use of smbdirect_socket.recv_io.{posted,credits} Stefan Metzmacher
2025-08-25 20:39 ` [PATCH v4 037/142] smb: client: remove useless smbd_connection.send_immediate Stefan Metzmacher
2025-08-25 20:39 ` [PATCH v4 038/142] smb: client: fill smbdirect_socket_parameters at the beginning and use the values from there Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 039/142] smb: client: make use of smbdirect_socket_parameters.{resolve_{addr,route},rdma_connect,negotiate}_timeout_msec Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 040/142] smb: client: make use of smbdirect_socket_parameters.{initiator_depth,responder_resources} Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 041/142] smb: client: make use of smbdirect_socket.rdma.legacy_iwarp Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 042/142] smb: client: send empty packets via send_immediate_work Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 043/142] smb: client: fix smbdirect keep alive handling to match the documentation Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 044/142] smb: client: make use of smbdirect_socket.idle.{keepalive,immediate_work,timer_work} Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 045/142] smb: client: remove unused smbd_connection->protocol Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 046/142] smb: client: remove unused smbd_connection.count_reassembly_queue Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 047/142] smb: client: make use of smbdirect_socket.statistics Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 048/142] smb: client: don't check sc->send_io.pending.count is below sp->send_credit_target Stefan Metzmacher
2025-09-08  9:03   ` Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 049/142] smb: client: move rdma_readwrite_threshold from smbd_connection to TCP_Server_Info Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 050/142] smb: client: make use of smbdirect_socket.workqueue Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 051/142] smb: client: add and use smbd_get_parameters() Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 052/142] smb: client: make use of struct smbdirect_mr_io Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 053/142] smb: client: make use of smbdirect_socket_parameters.max_frmr_depth Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 054/142] smb: client: make use of smbdirect_socket.mr_io Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 055/142] smb: client: pass struct smbdirect_socket to {get,put}_receive_buffer() Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 056/142] smb: client: pass struct smbdirect_socket to {allocate,destroy}_receive_buffers() Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 057/142] smb: client: pass struct smbdirect_socket to {allocate,destroy}_caches_and_workqueue() Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 058/142] smb: client: pass struct smbdirect_socket to {enqueue,_get_first}_reassembly() Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 059/142] smb: client: pass struct smbdirect_socket to {allocate,destroy}_mr_list() Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 060/142] smb: client: pass struct smbdirect_socket to smbd_disconnect_rdma_connection() Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 061/142] smb: client: pass struct smbdirect_socket to smbd_post_recv() Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 062/142] smb: client: pass struct smbdirect_socket to manage_credits_prior_sending() Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 063/142] smb: client: pass struct smbdirect_socket to smbd_post_send() Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 064/142] smb: client: pass struct smbdirect_socket to manage_keep_alive_before_sending() Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 065/142] smb: client: pass struct smbdirect_socket to smbd_post_send_iter() Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 066/142] smb: client: pass struct smbdirect_socket to smbd_post_send_empty() Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 067/142] smb: client: pass struct smbdirect_socket to smbd_post_send_full_iter() Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 068/142] smb: client: pass struct smbdirect_socket to smbd_conn_upcall() Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 069/142] smb: client: pass struct smbdirect_socket to smbd_qp_async_error_upcall() Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 070/142] smb: client: pass struct smbdirect_socket to smbd_create_id() Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 071/142] smb: client: pass struct smbdirect_socket to smbd_ia_open() Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 072/142] smb: client: pass struct smbdirect_socket to smbd_post_send_negotiate_req() Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 073/142] smb: client: pass struct smbdirect_socket to smbd_negotiate() Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 074/142] smb: client: pass struct smbdirect_socket to get_mr() Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 075/142] smb: client: remove unused struct smbdirect_socket argument of smbd_iter_to_mr() Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 076/142] smb: server: make use of common smbdirect_pdu.h Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 077/142] smb: server: make use of common smbdirect.h Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 078/142] smb: server: make use of common smbdirect_socket Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 079/142] smb: server: make use of common smbdirect_socket_parameters Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 080/142] smb: server: make use of smbdirect_socket->recv_io.expected Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 081/142] smb: server: make use of struct smbdirect_recv_io Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 082/142] smb: server: make use of smbdirect_socket.recv_io.free.{list,lock} Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 083/142] smb: server: make use of smbdirect_socket.recv_io.reassembly.* Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 084/142] smb: server: make use of SMBDIRECT_RECV_IO_MAX_SGE Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 085/142] smb: server: make use of struct smbdirect_send_io Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 086/142] smb: server: make use of smbdirect_socket.{send,recv}_io.mem.{cache,pool} Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 087/142] smb: server: make only use of wake_up[_all]() in transport_rdma.c Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 088/142] smb: server: add a pr_info() when the server starts running Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 089/142] smb: server: don't use delayed_work for post_recv_credits_work Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 090/142] smb: server: queue post_recv_credits_work in put_recvmsg() and avoid count_avail_recvmsg Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 091/142] smb: server: make use of smbdirect_socket.status_wait Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 092/142] smb: server: only turn into SMBDIRECT_SOCKET_CONNECTED when negotiation is done Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 093/142] smb: server: use disable_work_sync in transport_rdma.c Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 094/142] smb: server: move smb_direct_disconnect_rdma_work() into free_transport() Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 095/142] smb: server: don't wait for info->send_pending == 0 on error Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 096/142] smb: server: make use of smbdirect_socket_init() Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 097/142] smb: server: make use of smbdirect_socket.disconnect_work Stefan Metzmacher
2025-08-25 20:40 ` [PATCH v4 098/142] smb: server: make use of smbdirect_socket.send_io.pending.{count,wait_queue} Stefan Metzmacher
2025-09-08  9:18   ` Stefan Metzmacher
2025-08-25 20:41 ` [PATCH v4 099/142] smb: server: make use of smbdirect_socket.send_io.credits.{count,wait_queue} Stefan Metzmacher
2025-08-25 20:41 ` [PATCH v4 100/142] smb: server: make use of struct smbdirect_send_batch Stefan Metzmacher
2025-08-25 20:41 ` [PATCH v4 101/142] smb: server: make use smbdirect_socket.rw_io.credits Stefan Metzmacher
2025-08-25 20:41 ` [PATCH v4 102/142] smb: server: make use of struct smbdirect_rw_io Stefan Metzmacher
2025-08-25 20:41 ` [PATCH v4 103/142] smb: server: take the recv_credit_target from the negotiate req and always limit the range Stefan Metzmacher
2025-08-25 20:41 ` [PATCH v4 104/142] smb: server: manage recv credits by counting posted recv_io and granted credits Stefan Metzmacher
2025-08-25 20:41 ` [PATCH v4 105/142] smb: server: make use of smbdirect_socket.recv_io.{posted,credits} Stefan Metzmacher
2025-08-25 20:41 ` [PATCH v4 106/142] smb: server: replace smb_trans_direct_transfort() with SMBD_TRANS() Stefan Metzmacher
2025-08-25 20:41 ` [PATCH v4 107/142] smb: server: remove useless casts from KSMBD_TRANS/SMBD_TRANS Stefan Metzmacher
2025-08-25 20:41 ` [PATCH v4 108/142] smb: server: pass ksmbd_transport to get_smbd_max_read_write_size() Stefan Metzmacher
2025-08-25 20:41 ` [PATCH v4 109/142] smb: server: fill smbdirect_socket_parameters at the beginning and use the values from there Stefan Metzmacher
2025-08-25 20:41 ` [PATCH v4 110/142] smb: server: make use of smbdirect_socket_parameters.negotiate_timeout_msec and change to 5s Stefan Metzmacher
2025-08-25 20:41 ` [PATCH v4 111/142] smb: server: make use of smbdirect_socket_parameters.{initiator_depth,responder_resources} Stefan Metzmacher
2025-08-25 20:41 ` [PATCH v4 112/142] smb: server: make use of smbdirect_socket.rdma.legacy_iwarp Stefan Metzmacher
2025-08-25 20:41 ` [PATCH v4 113/142] smb: server: make use of smbdirect_socket.idle.immediate_work Stefan Metzmacher
2025-08-25 20:41 ` [PATCH v4 114/142] smb: server: implement correct keepalive and timeout handling for smbdirect Stefan Metzmacher
2025-08-25 20:41 ` [PATCH v4 115/142] smb: server: make use of smbdirect_socket.workqueue Stefan Metzmacher
2025-08-25 20:41 ` [PATCH v4 116/142] smb: server: pass struct smbdirect_socket to {get_free,put}_recvmsg() Stefan Metzmacher
2025-08-25 20:41 ` [PATCH v4 117/142] smb: server: pass struct smbdirect_socket to smb_direct_{create,destroy}_pools() Stefan Metzmacher
2025-08-25 20:41 ` [PATCH v4 118/142] smb: server: pass struct smbdirect_socket to smb_direct_get_max_fr_pages() Stefan Metzmacher
2025-08-25 20:41 ` [PATCH v4 119/142] smb: server: pass struct smbdirect_socket to smb_direct_init_params() Stefan Metzmacher
2025-08-25 20:41 ` [PATCH v4 120/142] smb: server: pass struct smbdirect_socket to smb_direct_disconnect_rdma_connection() Stefan Metzmacher
2025-08-25 20:41 ` [PATCH v4 121/142] smb: server: pass struct smbdirect_socket to smb_direct_cm_handler() Stefan Metzmacher
2025-08-25 20:41 ` [PATCH v4 122/142] smb: server: pass struct smbdirect_socket to smb_direct_qpair_handler() Stefan Metzmacher
2025-08-25 20:41 ` [PATCH v4 123/142] smb: server: pass struct smbdirect_socket to smb_direct_create_qpair() Stefan Metzmacher
2025-08-25 20:41 ` [PATCH v4 124/142] smb: server: pass struct smbdirect_socket to smb_direct_post_recv() Stefan Metzmacher
2025-08-25 20:41 ` [PATCH v4 125/142] smb: server: pass struct smbdirect_socket to smb_direct_accept_client() Stefan Metzmacher
2025-08-25 20:41 ` [PATCH v4 126/142] smb: server: pass struct smbdirect_socket to smb_direct_prepare_negotiation() Stefan Metzmacher
2025-08-25 20:41 ` [PATCH v4 127/142] smb: server: pass struct smbdirect_socket to smb_direct_connect() Stefan Metzmacher
2025-08-25 20:41 ` [PATCH v4 128/142] smb: server: pass struct smbdirect_socket to smb_direct_{alloc,free}_sendmsg() Stefan Metzmacher
2025-08-25 20:41 ` [PATCH v4 129/142] smb: server: remove unused struct struct smb_direct_transport argument from smb_direct_send_ctx_init() Stefan Metzmacher
2025-08-25 20:41 ` [PATCH v4 130/142] smb: server: pass struct smbdirect_socket to smb_direct_post_send() Stefan Metzmacher
2025-08-25 20:41 ` [PATCH v4 131/142] smb: server: pass struct smbdirect_socket to smb_direct_flush_send_list() Stefan Metzmacher
2025-08-25 20:41 ` [PATCH v4 132/142] smb: server: pass struct smbdirect_socket to wait_for_credits() Stefan Metzmacher
2025-08-25 20:41 ` [PATCH v4 133/142] smb: server: pass struct smbdirect_socket to wait_for_send_credits() Stefan Metzmacher
2025-08-25 20:41 ` [PATCH v4 134/142] smb: server: pass struct smbdirect_socket to wait_for_rw_credits() Stefan Metzmacher
2025-08-25 20:41 ` [PATCH v4 135/142] smb: server: pass struct smbdirect_socket to calc_rw_credits() Stefan Metzmacher
2025-08-25 20:41 ` [PATCH v4 136/142] smb: server: pass struct smbdirect_socket to manage_credits_prior_sending() Stefan Metzmacher
2025-08-25 20:41 ` [PATCH v4 137/142] smb: server: pass struct smbdirect_socket to manage_keep_alive_before_sending() Stefan Metzmacher
2025-08-25 20:41 ` [PATCH v4 138/142] smb: server: pass struct smbdirect_socket to smb_direct_create_header() Stefan Metzmacher
2025-08-25 20:41 ` [PATCH v4 139/142] smb: server: pass struct smbdirect_socket to post_sendmsg() Stefan Metzmacher
2025-08-25 20:41 ` [PATCH v4 140/142] smb: server: pass struct smbdirect_socket to smb_direct_post_send_data() Stefan Metzmacher
2025-08-25 20:41 ` [PATCH v4 141/142] smb: server: pass struct smbdirect_socket to {enqueue,get_first}_reassembly() Stefan Metzmacher
2025-08-25 20:41 ` [PATCH v4 142/142] smb: server: pass struct smbdirect_socket to smb_direct_send_negotiate_response() Stefan Metzmacher
2025-08-29  1:39 ` [PATCH v4 000/142] smb: smbdirect/client/server: make use of common structures Namjae Jeon
2025-09-08 16:08 ` replace for-next-next... " Stefan Metzmacher
2025-09-09  0:00   ` Namjae Jeon
2025-09-09  3:26   ` Steve French
2025-09-10 19:05     ` Stefan Metzmacher
2025-09-10 23:35       ` Namjae Jeon
2025-09-13  0:03         ` Steve French [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAH2r5ms8JUL+R8zDVa4L2=ydESUFjvPPLdJxHTeOWPFmwCBHQQ@mail.gmail.com' \
    --to=smfrench@gmail.com \
    --cc=linkinjeon@kernel.org \
    --cc=linux-cifs@vger.kernel.org \
    --cc=metze@samba.org \
    --cc=samba-technical@lists.samba.org \
    --cc=tom@talpey.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).