On Feb 12 12:30, Maxim Levitsky wrote: > On Tue, 2020-02-04 at 10:51 +0100, Klaus Jensen wrote: > > 0xffff is not an allowed value for NCQR and NSQR in Set Features on > > Number of Queues. > > > > Signed-off-by: Klaus Jensen <k.jen...@samsung.com> > > --- > > hw/block/nvme.c | 4 ++++ > > 1 file changed, 4 insertions(+) > > > > diff --git a/hw/block/nvme.c b/hw/block/nvme.c > > index 30c5b3e7a67d..900732bb2f38 100644 > > --- a/hw/block/nvme.c > > +++ b/hw/block/nvme.c > > @@ -1133,6 +1133,10 @@ static uint16_t nvme_set_feature(NvmeCtrl *n, > > NvmeCmd *cmd, NvmeRequest *req) > > blk_set_enable_write_cache(n->conf.blk, dw11 & 1); > > break; > > case NVME_NUMBER_OF_QUEUES: > > + if ((dw11 & 0xffff) == 0xffff || ((dw11 >> 16) & 0xffff) == > > 0xffff) { > > + return NVME_INVALID_FIELD | NVME_DNR; > > + } > Very minor nitpick: since this spec requirement is not obvious, a > quote/reference to the spec > would be nice to have here. >
Added. > > + > > trace_nvme_dev_setfeat_numq((dw11 & 0xFFFF) + 1, > > ((dw11 >> 16) & 0xFFFF) + 1, n->params.num_queues - 1, > > n->params.num_queues - 1); > > Reviewed-by: Maxim Levitsky <mlevi...@redhat.com> > > Best regards, > Maxim Levitsky >