Message ID | 20230925194040.68592-9-vsementsov@yandex-team.ru |
---|---|
State | New |
Headers | show |
Series | coverity fixes | expand |
25.09.2023 22:40, Vladimir Sementsov-Ogievskiy wrote: > NVMeQueuePair::reqs as length NVME_NUM_REQS, which less than > NVME_QUEUE_SIZE by 1. > + if (cid == 0 || cid > NVME_NUM_REQS) { > + warn_report("NVMe: Unexpected CID in completion queue: %" PRIu32 > + ", should be within is: 1..%u", cid, NVME_NUM_REQS); - is: I guess :) /mjt
On Mon, 25 Sept 2023 at 20:42, Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru> wrote: > > NVMeQueuePair::reqs as length NVME_NUM_REQS, which less than > NVME_QUEUE_SIZE by 1. > > Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru> > --- > block/nvme.c | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/block/nvme.c b/block/nvme.c > index b6e95f0b7e..7f11ce1d46 100644 > --- a/block/nvme.c > +++ b/block/nvme.c > @@ -416,9 +416,9 @@ static bool nvme_process_completion(NVMeQueuePair *q) > q->cq_phase = !q->cq_phase; > } > cid = le16_to_cpu(c->cid); > - if (cid == 0 || cid > NVME_QUEUE_SIZE) { > - warn_report("NVMe: Unexpected CID in completion queue: %"PRIu32", " > - "queue size: %u", cid, NVME_QUEUE_SIZE); > + if (cid == 0 || cid > NVME_NUM_REQS) { > + warn_report("NVMe: Unexpected CID in completion queue: %" PRIu32 > + ", should be within is: 1..%u", cid, NVME_NUM_REQS); > continue; > } > trace_nvme_complete_command(s, q->index, cid); A slightly different patch for this one was sent to the list back in 2020 but apparently fell through the cracks: https://patchew.org/QEMU/20201208144452.91172-1-alex.chen@huawei.com/ -- PMM
diff --git a/block/nvme.c b/block/nvme.c index b6e95f0b7e..7f11ce1d46 100644 --- a/block/nvme.c +++ b/block/nvme.c @@ -416,9 +416,9 @@ static bool nvme_process_completion(NVMeQueuePair *q) q->cq_phase = !q->cq_phase; } cid = le16_to_cpu(c->cid); - if (cid == 0 || cid > NVME_QUEUE_SIZE) { - warn_report("NVMe: Unexpected CID in completion queue: %"PRIu32", " - "queue size: %u", cid, NVME_QUEUE_SIZE); + if (cid == 0 || cid > NVME_NUM_REQS) { + warn_report("NVMe: Unexpected CID in completion queue: %" PRIu32 + ", should be within is: 1..%u", cid, NVME_NUM_REQS); continue; } trace_nvme_complete_command(s, q->index, cid);
NVMeQueuePair::reqs as length NVME_NUM_REQS, which less than NVME_QUEUE_SIZE by 1. Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru> --- block/nvme.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-)