Re: [PATCH v2 net-next 06/21] nvme-tcp: Add DDP offload control path

2021-01-30 Thread Boris Pismenny
On 19/01/2021 5:47, David Ahern wrote: > On 1/14/21 8:10 AM, Boris Pismenny wrote: >> +static >> +int nvme_tcp_offload_socket(struct nvme_tcp_queue *queue) >> +{ >> +struct net_device *netdev = get_netdev_for_sock(queue->sock->sk, true); >> +struct nvme_tcp_ddp_config config = {}; >> +i

Re: [PATCH v2 net-next 06/21] nvme-tcp: Add DDP offload control path

2021-01-18 Thread David Ahern
On 1/14/21 8:10 AM, Boris Pismenny wrote: > +static > +int nvme_tcp_offload_socket(struct nvme_tcp_queue *queue) > +{ > + struct net_device *netdev = get_netdev_for_sock(queue->sock->sk, true); > + struct nvme_tcp_ddp_config config = {}; > + int ret; > + > + if (!netdev) { > +

[PATCH v2 net-next 06/21] nvme-tcp: Add DDP offload control path

2021-01-14 Thread Boris Pismenny
This commit introduces direct data placement offload to NVME TCP. There is a context per queue, which is established after the handshake using the tcp_ddp_sk_add/del NDOs. Additionally, a resynchronization routine is used to assist hardware recovery from TCP OOO, and continue the offload. Resynchr