From cc791a99030064d5deebf72fef08306bc6adab69 Mon Sep 17 00:00:00 2001 From: Jens Axboe Date: Sat, 3 Sep 2022 11:01:19 -0600 Subject: [PATCH] t/io_uring: properly detect numa nodes for passthrough mode We need to use a different path for the char nodes. With this, my setup correctly detects the nodes for all devices: submitter=0, tid=4746, file=/dev/ng0n1, node=6 submitter=1, tid=4747, file=/dev/ng1n1, node=6 submitter=2, tid=4748, file=/dev/ng2n1, node=6 submitter=3, tid=4749, file=/dev/ng3n1, node=6 submitter=4, tid=4750, file=/dev/ng4n1, node=4 submitter=5, tid=4751, file=/dev/ng5n1, node=4 submitter=6, tid=4752, file=/dev/ng6n1, node=4 submitter=7, tid=4753, file=/dev/ng7n1, node=4 submitter=8, tid=4754, file=/dev/ng8n1, node=4 submitter=9, tid=4755, file=/dev/ng9n1, node=4 submitter=10, tid=4756, file=/dev/ng10n1, node=4 submitter=12, tid=4758, file=/dev/ng12n1, node=10 submitter=11, tid=4757, file=/dev/ng11n1, node=4 submitter=13, tid=4759, file=/dev/ng13n1, node=10 [...] Signed-off-by: Jens Axboe --- t/io_uring.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/t/io_uring.c b/t/io_uring.c index 9d580b5a..3bce9e7e 100644 --- a/t/io_uring.c +++ b/t/io_uring.c @@ -856,7 +856,10 @@ static int detect_node(struct submitter *s, const char *name) char str[128]; int ret, fd, node; - sprintf(str, "/sys/block/%s/device/numa_node", base); + if (pt) + sprintf(str, "/sys/class/nvme-generic/%s/device/numa_node", base); + else + sprintf(str, "/sys/block/%s/device/numa_node", base); fd = open(str, O_RDONLY); if (fd < 0) return -1; -- 2.25.1