[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 02/15] block/nvme: Trace nvme_poll_queue() per queue
From: |
Philippe Mathieu-Daudé |
Subject: |
[PATCH 02/15] block/nvme: Trace nvme_poll_queue() per queue |
Date: |
Wed, 14 Oct 2020 17:57:57 +0200 |
As we want to enable multiple queues, report the event
in each nvme_poll_queue() call, rather than once in
the callback calling nvme_poll_queues().
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
---
block/nvme.c | 2 +-
block/trace-events | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/block/nvme.c b/block/nvme.c
index a534c61b6b6..7c253eafa7f 100644
--- a/block/nvme.c
+++ b/block/nvme.c
@@ -585,6 +585,7 @@ static bool nvme_poll_queue(NVMeQueuePair *q)
const size_t cqe_offset = q->cq.head * NVME_CQ_ENTRY_BYTES;
NvmeCqe *cqe = (NvmeCqe *)&q->cq.queue[cqe_offset];
+ trace_nvme_poll_queue(q->s, q->index);
/*
* Do an early check for completions. q->lock isn't needed because
* nvme_process_completion() only runs in the event loop thread and
@@ -633,7 +634,6 @@ static bool nvme_poll_cb(void *opaque)
BDRVNVMeState *s = container_of(e, BDRVNVMeState,
irq_notifier[MSIX_SHARED_IRQ_IDX]);
- trace_nvme_poll_cb(s);
return nvme_poll_queues(s);
}
diff --git a/block/trace-events b/block/trace-events
index 0e351c3fa3d..fa50af6b6f3 100644
--- a/block/trace-events
+++ b/block/trace-events
@@ -143,7 +143,7 @@ nvme_complete_command(void *s, int index, int cid) "s %p
queue %d cid %d"
nvme_submit_command(void *s, int index, int cid) "s %p queue %d cid %d"
nvme_submit_command_raw(int c0, int c1, int c2, int c3, int c4, int c5, int
c6, int c7) "%02x %02x %02x %02x %02x %02x %02x %02x"
nvme_handle_event(void *s) "s %p"
-nvme_poll_cb(void *s) "s %p"
+nvme_poll_queue(void *s, unsigned q_index) "s %p q #%u"
nvme_prw_aligned(void *s, int is_write, uint64_t offset, uint64_t bytes, int
flags, int niov) "s %p is_write %d offset %"PRId64" bytes %"PRId64" flags %d
niov %d"
nvme_write_zeroes(void *s, uint64_t offset, uint64_t bytes, int flags) "s %p
offset %"PRId64" bytes %"PRId64" flags %d"
nvme_qiov_unaligned(const void *qiov, int n, void *base, size_t size, int
align) "qiov %p n %d base %p size 0x%zx align 0x%x"
--
2.26.2
- [PATCH 00/15] block/nvme: Improve debugging experience and minor fixes, Philippe Mathieu-Daudé, 2020/10/14
- [PATCH 02/15] block/nvme: Trace nvme_poll_queue() per queue,
Philippe Mathieu-Daudé <=
- [PATCH 01/15] block/nvme: Move nvme_poll_cb() earlier, Philippe Mathieu-Daudé, 2020/10/14
- [PATCH 03/15] block/nvme: Use unsigned integer for queue counter/size, Philippe Mathieu-Daudé, 2020/10/14
- [PATCH 04/15] block/nvme: Improve nvme_free_req_queue_wait() trace information, Philippe Mathieu-Daudé, 2020/10/14
- [PATCH 05/15] block/nvme: Trace queue pair creation/deletion, Philippe Mathieu-Daudé, 2020/10/14
- [PATCH 06/15] block/nvme: Make nvme_identify() return boolean indicating error, Philippe Mathieu-Daudé, 2020/10/14
- [PATCH 07/15] block/nvme: Make nvme_init_queue() return boolean indicating error, Philippe Mathieu-Daudé, 2020/10/14
- [PATCH 09/15] block/nvme: Introduce Completion Queue definitions, Philippe Mathieu-Daudé, 2020/10/14
- [PATCH 10/15] block/nvme: Use definitions instead of magic values in add_io_queue(), Philippe Mathieu-Daudé, 2020/10/14
- [PATCH 08/15] block/nvme: Pass AioContext argument to nvme_add_io_queue(), Philippe Mathieu-Daudé, 2020/10/14