public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Jeff Layton <jlayton@redhat.com>
To: Christoph Hellwig <hch@infradead.org>,
	Long Li <longli@exchange.microsoft.com>
Cc: Steve French <sfrench@samba.org>,
	linux-cifs@vger.kernel.org, samba-technical@lists.samba.org,
	linux-kernel@vger.kernel.org, Long Li <longli@microsoft.com>
Subject: Re: [[PATCH v1] 08/37] [CIFS] SMBD: Define packet format for SMBD data transfer message
Date: Mon, 14 Aug 2017 06:24:39 -0400	[thread overview]
Message-ID: <1502706279.4978.3.camel@redhat.com> (raw)
In-Reply-To: <20170813101510.GC17287@infradead.org>

On Sun, 2017-08-13 at 03:15 -0700, Christoph Hellwig wrote:
> > +// SMBD data transfer packet with payload [MS-SMBD] 2.2.3
> > +struct smbd_data_transfer {
> > +	__le16 credits_requested;
> > +	__le16 credits_granted;
> > +	__le16 flags;
> > +	__le16 reserved;
> > +	__le32 remaining_data_length;
> > +	__le32 data_offset;
> > +	__le32 data_length;
> > +	__le32 padding;
> > +	char buffer[0];
> 
> Please use the actually standardized [] syntax for variable sized
> arrays.  Also normally this would be a __u8 to fit with the other
> types, but I haven't seen the usage yet.
> 

Yes, having a single-element array makes it harder to handle the
indexes, etc. Flexible arrays are better.
 
> > +} __packed;
> 
> The structure is natually packed already, no need to add the
> attribute.

I think this should remain on structs that are intended to go across the
wire. Could we ever end up with some exotic arch that stuffs some
padding in there? Maybe I'm just paranoid, but I don't see any harm in
leaving that here.

-- 
Jeff Layton <jlayton@redhat.com>

  reply	other threads:[~2017-08-14 10:24 UTC|newest]

Thread overview: 94+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-08-02 20:10 [[PATCH v1] 00/37] Implement SMBD protocol: Series 1 Long Li
2017-08-02 20:10 ` [[PATCH v1] 01/37] [CIFS] SMBD: Add parsing for new rdma mount option Long Li
2017-08-14 19:10   ` Tom Talpey
2017-08-14 22:53     ` Long Li
2017-08-02 20:10 ` [[PATCH v1] 02/37] [CIFS] SMBD: Add structure for SMBD transport Long Li
2017-08-08  6:58   ` Stefan Metzmacher
2017-08-12  8:32     ` Long Li
2017-08-12 18:49       ` Christoph Hellwig
2017-08-14 13:41       ` Stefan Metzmacher
2017-08-14 18:10         ` Long Li
2017-08-13 10:10   ` Christoph Hellwig
2017-08-02 20:10 ` [[PATCH v1] 03/37] [CIFS] SMBD: Add logging functions for debug Long Li
2017-08-02 20:10 ` [[PATCH v1] 04/37] [CIFS] SMBD: Define per-channel SMBD transport parameters and default values Long Li
2017-08-13 10:11   ` Christoph Hellwig
2017-08-14 19:28     ` Tom Talpey
2017-08-14 22:57       ` Long Li
2017-08-02 20:10 ` [[PATCH v1] 05/37] [CIFS] SMBD: Implement API for upper layer to create SMBD transport and establish RDMA connection Long Li
2017-08-14 19:54   ` Tom Talpey
2017-08-30  2:35     ` Long Li
2017-08-02 20:10 ` [[PATCH v1] 06/37] [CIFS] SMBD: Add definition and cache for SMBD response Long Li
2017-08-02 20:10 ` [[PATCH v1] 07/37] [CIFS] SMBD: Implement receive buffer for handling " Long Li
2017-08-14 20:09   ` Tom Talpey
2017-08-19 23:41     ` Long Li
2017-08-02 20:10 ` [[PATCH v1] 08/37] [CIFS] SMBD: Define packet format for SMBD data transfer message Long Li
2017-08-13 10:15   ` Christoph Hellwig
2017-08-14 10:24     ` Jeff Layton [this message]
2017-08-02 20:10 ` [[PATCH v1] 09/37] [CIFS] SMBD: Add SMBD request and cache Long Li
2017-08-02 20:10 ` [[PATCH v1] 10/37] [CIFS] SMBD: Introduce wait queue when sending SMBD request Long Li
2017-08-02 20:10 ` [[PATCH v1] 11/37] [CIFS] SMBD: Post a receive request Long Li
2017-08-13 10:18   ` Christoph Hellwig
2017-08-02 20:10 ` [[PATCH v1] 12/37] [CIFS] SMBD: Handle send completion from CQ Long Li
2017-08-13 10:19   ` Christoph Hellwig
2017-08-14 18:16     ` Long Li
2017-08-02 20:10 ` [[PATCH v1] 13/37] [CIFS] SMBD: Implement SMBD protocol negotiation Long Li
2017-08-13 10:22   ` Christoph Hellwig
2017-08-02 20:10 ` [[PATCH v1] 14/37] [CIFS] SMBD: Post a SMBD data transfer message with page payload Long Li
2017-08-14 20:23   ` Tom Talpey
2017-08-14 22:58     ` Long Li
2017-08-02 20:10 ` [[PATCH v1] 15/37] [CIFS] SMBD: Post a SMBD data transfer message with data payload Long Li
2017-08-13 10:23   ` Christoph Hellwig
2017-08-30  2:17     ` Long Li
2017-08-30  8:51       ` Christoph Hellwig
2017-08-30 18:17         ` Long Li
2017-08-14 20:26   ` Tom Talpey
2017-08-02 20:10 ` [[PATCH v1] 16/37] [CIFS] SMBD: Post a SMBD message with no payload Long Li
2017-08-13 10:24   ` Christoph Hellwig
2017-08-14 18:20     ` Long Li
2017-08-14 19:00       ` Tom Talpey
2017-08-14 22:51         ` Long Li
2017-08-14 23:12           ` Tom Talpey
2017-08-02 20:10 ` [[PATCH v1] 17/37] [CIFS] SMBD: Track status for transport Long Li
2017-08-02 20:10 ` [[PATCH v1] 18/37] [CIFS] SMBD: Implement API for upper layer to send data Long Li
2017-08-14 20:44   ` Tom Talpey
2017-08-19 23:41     ` Long Li
2017-08-30  2:30     ` Long Li
2017-08-02 20:10 ` [[PATCH v1] 19/37] [CIFS] SMBD: Manage credits on SMBD client and server Long Li
2017-08-14 20:47   ` Tom Talpey
2017-08-14 23:03     ` Long Li
2017-08-02 20:10 ` [[PATCH v1] 20/37] [CIFS] SMBD: Implement reassembly queue for receiving data Long Li
2017-08-02 20:10 ` [[PATCH v1] 21/37] [CIFS] SMBD: Implement API for upper layer to receive data Long Li
2017-08-14 20:57   ` Tom Talpey
2017-08-14 23:24     ` Long Li
2017-08-14 23:35       ` Tom Talpey
2017-08-02 20:10 ` [[PATCH v1] 22/37] [CIFS] SMBD: Implement API for upper layer to receive data to page Long Li
2017-08-14 20:59   ` Tom Talpey
2017-08-02 20:10 ` [[PATCH v1] 23/37] [CIFS] SMBD: Implement API for upper layer to reconnect transport Long Li
2017-08-14 21:02   ` Tom Talpey
2017-08-14 23:37     ` Long Li
2017-08-02 20:10 ` [[PATCH v1] 24/37] [CIFS] SMBD: Support for SMBD keep alive protocol Long Li
2017-08-14 21:06   ` Tom Talpey
2017-08-14 23:27     ` Long Li
2017-08-02 20:10 ` [[PATCH v1] 25/37] [CIFS] SMBD: Support SMBD idle connection timer Long Li
2017-08-14 21:12   ` Tom Talpey
2017-08-14 23:29     ` Long Li
2017-08-14 23:42       ` Tom Talpey
2017-08-15  0:10         ` Long Li
2017-08-02 20:10 ` [[PATCH v1] 26/37] [CIFS] SMBD: Send an immediate packet when it's needed Long Li
2017-08-14 21:15   ` Tom Talpey
2017-08-02 20:10 ` [[PATCH v1] 27/37] [CIFS] SMBD: Destroy transport when RDMA channel is disconnected Long Li
2017-08-02 20:10 ` [[PATCH v1] 28/37] [CIFS] SMBD: Implement API for upper layer to destroy the transport Long Li
2017-08-02 20:10 ` [[PATCH v1] 29/37] [CIFS] SMBD: Disconnect RDMA connection on QP errors Long Li
2017-08-02 20:10 ` [[PATCH v1] 30/37] [CIFS] SMBD: Add SMBDirect transport to Makefile Long Li
2017-08-14 21:20   ` Tom Talpey
2017-08-14 23:30     ` Long Li
2017-08-02 20:10 ` [[PATCH v1] 31/37] [CIFS] Add SMBD transport to SMB session context Long Li
2017-08-02 20:10 ` [[PATCH v1] 32/37] [CIFS] Add SMBD debug couters to CIFS debug exports Long Li
2017-08-02 20:10 ` [[PATCH v1] 33/37] [CIFS] Connect to SMBD transport when specified in mount option Long Li
2017-08-02 20:10 ` [[PATCH v1] 34/37] [CIFS] Reconnect to SMBD transport when it's used Long Li
2017-08-02 20:10 ` [[PATCH v1] 35/37] [CIFS] Destroy SMBD transport on exit Long Li
2017-08-02 20:10 ` [[PATCH v1] 36/37] [CIFS] Read from SMBD transport when it's used Long Li
2017-08-02 20:10 ` [[PATCH v1] 37/37] [CIFS] Write to " Long Li
2017-08-13 10:27 ` [[PATCH v1] 00/37] Implement SMBD protocol: Series 1 Christoph Hellwig
2017-08-13 10:31   ` Christoph Hellwig
2017-08-14 17:04   ` Long Li

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=1502706279.4978.3.camel@redhat.com \
    --to=jlayton@redhat.com \
    --cc=hch@infradead.org \
    --cc=linux-cifs@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=longli@exchange.microsoft.com \
    --cc=longli@microsoft.com \
    --cc=samba-technical@lists.samba.org \
    --cc=sfrench@samba.org \
    /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