Message ID | 20241024001026.1842458-1-ipylypiv@google.com |
---|---|
State | New |
Headers | show |
Series | scsi: pm8001: Increase request sg length to support 4MiB requests | expand |
On Thu, Oct 24, 2024 at 12:10:26AM +0000, Igor Pylypiv wrote: > Increasing the per-request size maximum (max_sectors_kb) to 4096 KiB > runs into the per-device DMA scatter gather list limit (max_segments) > for users of the io vector system calls (e.g. readv and writev). > > This change increases the max scatter gather list length to 1024 to > enable kernel to send 4MiB (1024 * 4KiB page size) requests. > > Signed-off-by: Igor Pylypiv <ipylypiv@google.com> > --- > drivers/scsi/pm8001/pm8001_defs.h | 3 +-- > 1 file changed, 1 insertion(+), 2 deletions(-) > > diff --git a/drivers/scsi/pm8001/pm8001_defs.h b/drivers/scsi/pm8001/pm8001_defs.h > index 501b574239e8..f6e6fe3f4cd6 100644 > --- a/drivers/scsi/pm8001/pm8001_defs.h > +++ b/drivers/scsi/pm8001/pm8001_defs.h > @@ -92,8 +92,7 @@ enum port_type { > #define PM8001_MAX_MSIX_VEC 64 /* max msi-x int for spcv/ve */ > #define PM8001_RESERVE_SLOT 8 > > -#define CONFIG_SCSI_PM8001_MAX_DMA_SG 528 > -#define PM8001_MAX_DMA_SG CONFIG_SCSI_PM8001_MAX_DMA_SG > +#define PM8001_MAX_DMA_SG 1024 Just realized that I forgot to include setting .max_sectors to 8192 in pm8001_sht. I'll fix that in v2. Thanks, Igor > > enum memory_region_num { > AAP1 = 0x0, /* application acceleration processor */ > -- > 2.47.0.105.g07ac214952-goog >
diff --git a/drivers/scsi/pm8001/pm8001_defs.h b/drivers/scsi/pm8001/pm8001_defs.h index 501b574239e8..f6e6fe3f4cd6 100644 --- a/drivers/scsi/pm8001/pm8001_defs.h +++ b/drivers/scsi/pm8001/pm8001_defs.h @@ -92,8 +92,7 @@ enum port_type { #define PM8001_MAX_MSIX_VEC 64 /* max msi-x int for spcv/ve */ #define PM8001_RESERVE_SLOT 8 -#define CONFIG_SCSI_PM8001_MAX_DMA_SG 528 -#define PM8001_MAX_DMA_SG CONFIG_SCSI_PM8001_MAX_DMA_SG +#define PM8001_MAX_DMA_SG 1024 enum memory_region_num { AAP1 = 0x0, /* application acceleration processor */
Increasing the per-request size maximum (max_sectors_kb) to 4096 KiB runs into the per-device DMA scatter gather list limit (max_segments) for users of the io vector system calls (e.g. readv and writev). This change increases the max scatter gather list length to 1024 to enable kernel to send 4MiB (1024 * 4KiB page size) requests. Signed-off-by: Igor Pylypiv <ipylypiv@google.com> --- drivers/scsi/pm8001/pm8001_defs.h | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-)