kernel-packages team mailing list archive
-
kernel-packages team
-
Mailing list archive
-
Message #184054
[Bug 1588449] Re: NVMe max_segments queue parameter gets set to 1
------- Comment From heitors@xxxxxxxxxx 2016-06-14 15:19 EDT-------
(In reply to comment #7)
> This bug is awaiting verification that the kernel in -proposed solves the
> problem. Please test the kernel and update this bug with the results. If the
> problem is solved, change the tag 'verification-needed-xenial' to
> 'verification-done-xenial'.
>
> If verification is not done by 5 working days from today, this fix will be
> dropped from the source code, and this bug will be closed.
>
> See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to
> enable and use -proposed. Thank you!
Tested on 4.4.0-25-generic, patches seem to be included:
root@everest-lp13:~/halves# ./queue.sh nvme0n1
/sys/block/nvme0n1/queue/add_random = 0
/sys/block/nvme0n1/queue/discard_granularity = 4096
/sys/block/nvme0n1/queue/discard_max_bytes = 2199023255040
/sys/block/nvme0n1/queue/discard_max_hw_bytes = 4294966784
/sys/block/nvme0n1/queue/discard_zeroes_data = 0
/sys/block/nvme0n1/queue/hw_sector_size = 4096
/sys/block/nvme0n1/queue/io_poll = 0
/sys/block/nvme0n1/queue/iostats = 1
/sys/block/nvme0n1/queue/logical_block_size = 4096
/sys/block/nvme0n1/queue/max_hw_sectors_kb = 2147483647
/sys/block/nvme0n1/queue/max_integrity_segments = 0
/sys/block/nvme0n1/queue/max_sectors_kb = 1280
/sys/block/nvme0n1/queue/max_segments = 65535
/sys/block/nvme0n1/queue/max_segment_size = 65536
/sys/block/nvme0n1/queue/minimum_io_size = 4096
/sys/block/nvme0n1/queue/nomerges = 2
/sys/block/nvme0n1/queue/nr_requests = 1023
/sys/block/nvme0n1/queue/optimal_io_size = 0
/sys/block/nvme0n1/queue/physical_block_size = 4096
/sys/block/nvme0n1/queue/read_ahead_kb = 128
/sys/block/nvme0n1/queue/rotational = 0
/sys/block/nvme0n1/queue/rq_affinity = 1
/sys/block/nvme0n1/queue/scheduler = none
/sys/block/nvme0n1/queue/write_same_max_bytes = 0
root@everest-lp13:~/halves# uname -r
4.4.0-25-generic
Moving to verified. Thanks!
** Tags removed: verification-needed-xenial
** Tags added: verification-done-xenial
--
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux in Ubuntu.
https://bugs.launchpad.net/bugs/1588449
Title:
NVMe max_segments queue parameter gets set to 1
Status in linux package in Ubuntu:
Fix Released
Status in linux source package in Xenial:
Fix Committed
Status in linux source package in Yakkety:
Fix Released
Bug description:
== Comment: #0 - Heitor Ricardo Alves de Siqueira - 2016-06-02 10:41:18 ==
There are some upstream patches missing from the 16.04 nvme driver, and this limits adapter performance. We need to include these so that NVMe devices are correctly set up.
I would like to ask Canonical to cherry pick the following patches for the 16.04 kernel:
* da35825d9a09 ("nvme: set queue limits for the admin queue")
* 45686b6198bd ("nvme: fix max_segments integer truncation")
* f21018427cb0 ("block: fix blk_rq_get_max_sectors for driver private requests")
---uname output---
Linux ubuntu 4.4.0-22-generic #40-Ubuntu SMP Thu May 12 22:03:35 UTC 2016 ppc64le ppc64le ppc64le GNU/Linux
---Steps to Reproduce---
Boot the system with an NVMe adapter connected, and verify the queue parameters:
root@ubuntu:~# ./queue.sh nvme0n1
/sys/block/nvme0n1/queue/add_random = 0
/sys/block/nvme0n1/queue/discard_granularity = 4096
/sys/block/nvme0n1/queue/discard_max_bytes = 2199023255040
/sys/block/nvme0n1/queue/discard_max_hw_bytes = 4294966784
/sys/block/nvme0n1/queue/discard_zeroes_data = 0
/sys/block/nvme0n1/queue/hw_sector_size = 4096
/sys/block/nvme0n1/queue/io_poll = 0
/sys/block/nvme0n1/queue/iostats = 1
/sys/block/nvme0n1/queue/logical_block_size = 4096
/sys/block/nvme0n1/queue/max_hw_sectors_kb = 2147483647
/sys/block/nvme0n1/queue/max_integrity_segments = 0
/sys/block/nvme0n1/queue/max_sectors_kb = 1280
/sys/block/nvme0n1/queue/max_segments = 1 <---------------------
/sys/block/nvme0n1/queue/max_segment_size = 65536
/sys/block/nvme0n1/queue/minimum_io_size = 4096
/sys/block/nvme0n1/queue/nomerges = 2
/sys/block/nvme0n1/queue/nr_requests = 1023
/sys/block/nvme0n1/queue/optimal_io_size = 0
/sys/block/nvme0n1/queue/physical_block_size = 4096
/sys/block/nvme0n1/queue/read_ahead_kb = 128
/sys/block/nvme0n1/queue/rotational = 0
/sys/block/nvme0n1/queue/rq_affinity = 1
/sys/block/nvme0n1/queue/scheduler = none
/sys/block/nvme0n1/queue/write_same_max_bytes = 0
We should have max_segments set to 65535 by default.
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1588449/+subscriptions
References