On Sun, Oct 15, 2017 at 10:30:29AM +0000, Sironi, Filippo wrote:
On 14. Oct 2017, at 17:15, Kevin O'Connor kevin@koconnor.net wrote:
On Thu, Oct 12, 2017 at 12:42:34AM +0200, Filippo Sironi wrote:
Use the Maximum Queue Entries Supported (MQES) to initialize I/O queues depth rather than picking a fixed number (256) which might not be supported by some NVMe controllers (the NVMe specification says that an NVMe controller may support any number between 2 to 4096).
Still cap the I/O queues depth to 256 since, during my testing, SeaBIOS was running out of memory when using something higher than 256 (4096 on the NVMe controller that I've had a chance to try).
Okay, thanks. So, it sounds like it is a bug fix (as it could prevent a failure if the hardware queue depth is less than 256).
I'd prefer not to introduce min()/max() macros to individual driver files. (I'm fine with a patch that globally introduces min/max, but I don't think we should be adding them piecemeal.) Are you okay with the patch below instead?
-Kevin
Looks good to me.
Thanks. I committed this change.
-Kevin