mbox series

[SRU,Xenial,0/1] UBUNTU: SAUCE: (no-up) virtio-scsi: Increment reqs counter.

Message ID cover.1528464636.git.joseph.salisbury@canonical.com
Headers show
Series UBUNTU: SAUCE: (no-up) virtio-scsi: Increment reqs counter. | expand

Message

Joseph Salisbury June 8, 2018, 5:48 p.m. UTC
BugLink: http://bugs.launchpad.net/bugs/1775235

== SRU Justification ==
The bug reporter noticed that Xenial guests running on Nutanix AHV stopped 
booting after they were upgraded to 4.4.0-127. Only guests with scsi mq 
enabled suffered from this problem. AHV is one of the few hypervisor 
products to offer multiqueue for virtio-scsi devices.

Upon further investigation, the saw that the kernel would hang during the 
scanning of scsi targets. More specifically, immediately after coming 
across a target without any luns present. 

It was found the following commit introduced this regression:
commit f1f609d8015e1d34d39458924dcd9524fccd4307
Author: Jay Vosburgh <jay.vosburgh@canonical.com>
Date: Thu Apr 19 21:40:00 2018 +0200

The patch spins on the target's 'reqs' counter waiting for the target to quiesce.

Further study revealed that virtio-scsi itself is broken in a way that it 
doesn't increment the 'reqs' counter when submitting requests on MQ in 
certain conditions. That caused the counter to go to -1 (on the completion 
of the first request) and the CPU to hang indefinitely.

This regression is fixed by the requested SAUCE patch.


== Fix ==
UBUNTU: SAUCE: (no-up) virtio-scsi: Increment reqs counter.

== Regression Potential ==
Low.  Limited to virtio and fixes a regression.

== Test Case ==
A test kernel was built with this patch and tested by the original bug reporter.
The bug reporter states the test kernel resolved the bug.

Felipe Franciosi (1):
  UBUNTU: SAUCE: (no-up) virtio-scsi: Increment reqs counter.

 drivers/scsi/virtio_scsi.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

Comments

Khalid Elmously June 8, 2018, 9:45 p.m. UTC | #1
Applied to Xenial

On 2018-06-08 13:48:26 , Joseph Salisbury wrote:
> BugLink: http://bugs.launchpad.net/bugs/1775235
> 
> == SRU Justification ==
> The bug reporter noticed that Xenial guests running on Nutanix AHV stopped 
> booting after they were upgraded to 4.4.0-127. Only guests with scsi mq 
> enabled suffered from this problem. AHV is one of the few hypervisor 
> products to offer multiqueue for virtio-scsi devices.
> 
> Upon further investigation, the saw that the kernel would hang during the 
> scanning of scsi targets. More specifically, immediately after coming 
> across a target without any luns present. 
> 
> It was found the following commit introduced this regression:
> commit f1f609d8015e1d34d39458924dcd9524fccd4307
> Author: Jay Vosburgh <jay.vosburgh@canonical.com>
> Date: Thu Apr 19 21:40:00 2018 +0200
> 
> The patch spins on the target's 'reqs' counter waiting for the target to quiesce.
> 
> Further study revealed that virtio-scsi itself is broken in a way that it 
> doesn't increment the 'reqs' counter when submitting requests on MQ in 
> certain conditions. That caused the counter to go to -1 (on the completion 
> of the first request) and the CPU to hang indefinitely.
> 
> This regression is fixed by the requested SAUCE patch.
> 
> 
> == Fix ==
> UBUNTU: SAUCE: (no-up) virtio-scsi: Increment reqs counter.
> 
> == Regression Potential ==
> Low.  Limited to virtio and fixes a regression.
> 
> == Test Case ==
> A test kernel was built with this patch and tested by the original bug reporter.
> The bug reporter states the test kernel resolved the bug.
> 
> Felipe Franciosi (1):
>   UBUNTU: SAUCE: (no-up) virtio-scsi: Increment reqs counter.
> 
>  drivers/scsi/virtio_scsi.c | 5 +++--
>  1 file changed, 3 insertions(+), 2 deletions(-)
> 
> -- 
> 2.7.4
> 
> 
> -- 
> kernel-team mailing list
> kernel-team@lists.ubuntu.com
> https://lists.ubuntu.com/mailman/listinfo/kernel-team