Message ID | d1ba801f925579ccb692da1c2d74da43f921991d.1445886511.git.joseph.salisbury@canonical.com |
---|---|
State | New |
Headers | show |
diff --git a/drivers/scsi/storvsc_drv.c b/drivers/scsi/storvsc_drv.c index f10c7f8..292bc93 100644 --- a/drivers/scsi/storvsc_drv.c +++ b/drivers/scsi/storvsc_drv.c @@ -1838,6 +1838,11 @@ static int storvsc_probe(struct hv_device *device, * from the host. */ host->sg_tablesize = (stor_device->max_transfer_bytes >> PAGE_SHIFT); +#if defined(CONFIG_X86_32) + dev_warn(&device->device, "adjusting sg_tablesize 0x%x -> 0x%x", + host->sg_tablesize, MAX_MULTIPAGE_BUFFER_COUNT); + host->sg_tablesize = MAX_MULTIPAGE_BUFFER_COUNT; +#endif /* Register the HBA and start the scsi bus scan */ ret = scsi_add_host(host, &device->device);
This patch is still under discussion upstream: https://lkml.org/lkml/2015/10/2/550 However, this bug is a regression and preventing 32 bit guests from booting on Hyper-V, so it probably worth discussing before it lands in mainline. OriginalAuthor: Olaf Hering <olaf@aepfle.de> BugLink: http://bugs.launchpad.net/bugs/1495983 Signed-off-by: Joseph Salisbury <joseph.salisbury@canonical.com> --- drivers/scsi/storvsc_drv.c | 5 +++++ 1 file changed, 5 insertions(+)