[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <MWHPR21MB1593657F4149BAFBE041842BD79F9@MWHPR21MB1593.namprd21.prod.outlook.com>
Date: Wed, 24 Feb 2021 17:03:59 +0000
From: Michael Kelley <mikelley@...rosoft.com>
To: Christoph Hellwig <hch@...radead.org>,
vkuznets <vkuznets@...hat.com>
CC: KY Srinivasan <kys@...rosoft.com>,
"martin.petersen@...cle.com" <martin.petersen@...cle.com>,
Long Li <longli@...rosoft.com>,
"wei.liu@...nel.org" <wei.liu@...nel.org>,
"jejb@...ux.ibm.com" <jejb@...ux.ibm.com>,
"linux-hyperv@...r.kernel.org" <linux-hyperv@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"linux-scsi@...r.kernel.org" <linux-scsi@...r.kernel.org>
Subject: RE: [PATCH 1/1] scsi: storvsc: Enable scatterlist entry lengths >
4Kbytes
From: Christoph Hellwig <hch@...radead.org> Sent: Wednesday, February 24, 2021 7:53 AM
>
> Shouldn't storvsc just use blk_queue_virt_boundary instead of all this
> mess?
The storvsc driver does set the virt boundary to PAGE_SIZE - 1. But
the driver still has to translate the scatterlist into a list of guest
physical frame numbers (each representing 4K bytes) that the
Hyper-V host understands so it can do the I/O.
This patch improves that translation so it can handle a single
scatterlist entry that represents more than PAGE_SIZE bytes of
data. Then the SCSI dma_boundary (which turns into the blk level
segment_boundary) no longer needs to be set to restrict scatterlist
entries to just PAGE_SIZE bytes.
We also have to preserve the ability to run guests on ARM64 with
PAGE_SIZE of 16K or 64K, while Hyper-V still expects each PFN to
represent only 4K bytes.
Michael
Powered by blists - more mailing lists