Device ID numbers always start at 1, not at 0. The first IOC_DEV_INFO call does not make sense, since it will always return ENODEV.
ioctl(3, BTRFS_IOC_DEV_INFO, {devid=0}) = -1 ENODEV (No such device) Signed-off-by: Hans van Kranenburg <hans.van.kranenb...@mendix.com> --- cmds-fi-usage.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmds-fi-usage.c b/cmds-fi-usage.c index 101a0c4..52c4c62 100644 --- a/cmds-fi-usage.c +++ b/cmds-fi-usage.c @@ -535,7 +535,7 @@ static int load_device_info(int fd, struct device_info **device_info_ptr, return 1; } - for (i = 0, ndevs = 0 ; i <= fi_args.max_id ; i++) { + for (i = 1, ndevs = 0 ; i <= fi_args.max_id ; i++) { if (ndevs >= fi_args.num_devices) { error("unexpected number of devices: %d >= %llu", ndevs, (unsigned long long)fi_args.num_devices); -- 2.11.0 -- To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html