[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1471380303.21107.38.camel@linux.intel.com>
Date: Tue, 16 Aug 2016 13:45:03 -0700
From: J Freyensee <james_p_freyensee@...ux.intel.com>
To: Helen Koike <helen.koike@...labora.co.uk>, hch@...radead.org,
mlin@...nel.org, fes@...gle.com, keith.busch@...el.com,
rlnelson@...gle.com, axboe@...com, digitaleric@...gle.com,
tytso@....edu, mikew@...gle.com, monish@...gle.com
Cc: open list <linux-kernel@...r.kernel.org>,
"open list:NVM EXPRESS DRIVER" <linux-nvme@...ts.infradead.org>,
"Huffman, Amber" <amber.huffman@...el.com>,
"Minturn, Dave B" <dave.b.minturn@...el.com>
Subject: Re: [PATCH v3 RFC 2/2] nvme: improve performance for virtual NVMe
devices
On Mon, 2016-08-15 at 22:41 -0300, Helen Koike wrote:
>
> +struct nvme_doorbell_memory {
> + __u8 opcode;
> + __u8 flags;
> + __u16 command_id;
> + __u32 rsvd1[5];
> + __le64 prp1;
> + __le64 prp2;
> + __u32 rsvd12[6];
> +};
> +
> struct nvme_command {
> union {
> struct nvme_common_command common;
> @@ -845,6 +858,7 @@ struct nvme_command {
> struct nvmf_connect_command connect;
> struct nvmf_property_set_command prop_set;
> struct nvmf_property_get_command prop_get;
> + struct nvme_doorbell_memory doorbell_memory;
> };
> };
This looks like a new NVMe command being introduced, not found in the
latest NVMe specs (NVMe 1.2.1 spec or NVMe-over-Fabrics 1.0 spec)?
This is a big NACK, the command needs to be part of the NVMe standard
before adding it to the NVMe code base (this is exactly how NVMe-over-
Fabrics standard got implemented). I would bring your proposal to
nvmexpress.org.
Jay
>
> @@ -934,6 +948,9 @@ enum {
> /*
> * Media and Data Integrity Errors:
> */
> +#ifdef CONFIG_NVME_VDB
> + NVME_SC_DOORBELL_MEMORY_INVALID = 0x1C0,
> +#endif
> NVME_SC_WRITE_FAULT = 0x280,
> NVME_SC_READ_ERROR = 0x281,
> NVME_SC_GUARD_CHECK = 0x282,
Powered by blists - more mailing lists