From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sagi Grimberg Subject: Re: [PATCH v2 14/14] nvme-tcp: add NVMe over TCP host driver Date: Wed, 21 Nov 2018 14:27:16 -0800 Message-ID: <09c340a0-0b7f-ff9b-f196-7ba48a0ee234@grimberg.me> References: <20181120030019.31738-1-sagi@grimberg.me> <20181120030019.31738-16-sagi@grimberg.me> <20181121085645.GA29747@lst.de> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Cc: linux-nvme@lists.infradead.org, linux-block@vger.kernel.org, netdev@vger.kernel.org, "David S. Miller" , Keith Busch To: Christoph Hellwig Return-path: Received: from mail-oi1-f195.google.com ([209.85.167.195]:38959 "EHLO mail-oi1-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1731518AbeKVJDh (ORCPT ); Thu, 22 Nov 2018 04:03:37 -0500 In-Reply-To: <20181121085645.GA29747@lst.de> Content-Language: en-US Sender: netdev-owner@vger.kernel.org List-ID: >> +struct nvme_tcp_send_ctx { >> + struct bio *curr_bio; >> + struct iov_iter iter; >> + size_t offset; >> + size_t data_sent; >> + enum nvme_tcp_send_state state; >> +}; >> + >> +struct nvme_tcp_recv_ctx { >> + struct iov_iter iter; >> + struct bio *curr_bio; >> +}; > > I don't understand these structures. There should only be > a bio to be send or receive, not both. Why do we need two > curr_bio pointers? We don't really need both... > To me it seems like both structures should just go away and > move into nvme_tcp_request ala: > > > struct bio *curr_bio; > > /* send state */ > struct iov_iter send_iter; > size_t send_offset; > enum nvme_tcp_send_state send_state; > size_t data_sent; > > /* receive state */ > struct iov_iter recv_iter; > Sure, will move this.