linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* NVMe Poll CQ on timeout
@ 2019-09-19 13:47 Bharat Kumar Gogada
  2019-09-19 14:13 ` Keith Busch
  0 siblings, 1 reply; 6+ messages in thread
From: Bharat Kumar Gogada @ 2019-09-19 13:47 UTC (permalink / raw)
  To: linux-kernel, linux-nvme; +Cc: Keith Busch, keith.busch

Hi All,

We are testing NVMe cards on ARM64 platform, the card uses MSI-X interrupts.
We are hitting following case in drivers/nvme/host/pci.c
/*
         * Did we miss an interrupt?
         */
        if (__nvme_poll(nvmeq, req->tag)) {
                dev_warn(dev->ctrl.device,
                         "I/O %d QID %d timeout, completion polled\n",
                         req->tag, nvmeq->qid);
                return BLK_EH_DONE;
        }

Can anyone tell when does nvme_timeout gets invoked ?
In what cases we see this interrupt miss ?

We are seeing this issue only for reads with following fio command 
fio --name=randwrite --ioengine=libaio --iodepth=1 --rw=randread --bs=128k --direct=0 \
--size=128M --numjobs=3 --group_reporting --filename=/dev/nvme0n1

We are not seeing issue with --rw=randwrite for same size.

Please let us know what can cause this issue. 

Regards,
Bharat

^ permalink raw reply	[flat|nested] 6+ messages in thread
* NVMe Poll CQ on timeout
@ 2018-04-26 14:59 Bharat Kumar Gogada
  2018-05-07  6:57 ` Bharat Kumar Gogada
  0 siblings, 1 reply; 6+ messages in thread
From: Bharat Kumar Gogada @ 2018-04-26 14:59 UTC (permalink / raw)
  To: linux-nvme, linux-kernel; +Cc: keith.busch, hch, axboe

Hi,

We are testing NVMe cards on ARM64 platform, the card uses legacy interrupts.
Intermittently we are hitting following case in drivers/nvme/host/pci.c
       /*
         * Did we miss an interrupt?
         */
        if (__nvme_poll(nvmeq, req->tag)) {
                dev_warn(dev->ctrl.device,
                         "I/O %d QID %d timeout, completion polled\n",
                         req->tag, nvmeq->qid);
                return BLK_EH_HANDLED;
        }

Can anyone tell when does nvme_timeout gets invoked ?
What does "Did we miss an interrupt mean" ? Does it mean host missing
to service a interrupt raised by EP card ?

Regards,
Bharat

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2019-09-19 14:13 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-09-19 13:47 NVMe Poll CQ on timeout Bharat Kumar Gogada
2019-09-19 14:13 ` Keith Busch
  -- strict thread matches above, loose matches on Subject: below --
2018-04-26 14:59 Bharat Kumar Gogada
2018-05-07  6:57 ` Bharat Kumar Gogada
2018-05-07 16:02   ` Keith Busch
2018-05-15 13:58     ` Bharat Kumar Gogada

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).