diff mbox series

IB/iser: Support up to 16MB data transfer in a single command

Message ID 20190911125340.19017-1-sergeygo@mellanox.com (mailing list archive)
State Superseded
Headers show
Series IB/iser: Support up to 16MB data transfer in a single command | expand

Commit Message

Sergey Gorenko Sept. 11, 2019, 12:53 p.m. UTC
Maximum supported IO size is 8MB for the iSER driver. The
current value is limited by the ISCSI_ISER_MAX_SG_TABLESIZE
macro. But the driver is able to handle 16MB IOs without any
significant changes. Increasing this limit can be useful for
the storage arrays which are fine tuned for IOs larger than
8 MB.

This commit allows to configure maximum IO size up to 16MB
using the max_sectors module parameter.

Signed-off-by: Sergey Gorenko <sergeygo@mellanox.com>
Reviewed-by: Max Gurtovoy <maxg@mellanox.com>
---
 drivers/infiniband/ulp/iser/iscsi_iser.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Comments

Sagi Grimberg Sept. 11, 2019, 4:54 p.m. UTC | #1
> Maximum supported IO size is 8MB for the iSER driver. The
> current value is limited by the ISCSI_ISER_MAX_SG_TABLESIZE
> macro. But the driver is able to handle 16MB IOs without any
> significant changes. Increasing this limit can be useful for
> the storage arrays which are fine tuned for IOs larger than
> 8 MB.
> 
> This commit allows to configure maximum IO size up to 16MB
> using the max_sectors module parameter.
> 
> Signed-off-by: Sergey Gorenko <sergeygo@mellanox.com>
> Reviewed-by: Max Gurtovoy <maxg@mellanox.com>
> ---
>   drivers/infiniband/ulp/iser/iscsi_iser.h | 4 ++--
>   1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/infiniband/ulp/iser/iscsi_iser.h b/drivers/infiniband/ulp/iser/iscsi_iser.h
> index 39bf213444cb..fe478c576846 100644
> --- a/drivers/infiniband/ulp/iser/iscsi_iser.h
> +++ b/drivers/infiniband/ulp/iser/iscsi_iser.h
> @@ -103,8 +103,8 @@
>   /* Default support is 512KB I/O size */
>   #define ISER_DEF_MAX_SECTORS		1024
>   #define ISCSI_ISER_DEF_SG_TABLESIZE	((ISER_DEF_MAX_SECTORS * 512) >> SHIFT_4K)
> -/* Maximum support is 8MB I/O size */
> -#define ISCSI_ISER_MAX_SG_TABLESIZE	((16384 * 512) >> SHIFT_4K)
> +/* Maximum support is 16MB I/O size */
> +#define ISCSI_ISER_MAX_SG_TABLESIZE	((32768 * 512) >> SHIFT_4K)

Maybe while we're at it, we can change 512 to SECTOR_SIZE.

Other than that, looks good,

Acked-by: Sagi Grimberg <sagi@grimberg.me>
diff mbox series

Patch

diff --git a/drivers/infiniband/ulp/iser/iscsi_iser.h b/drivers/infiniband/ulp/iser/iscsi_iser.h
index 39bf213444cb..fe478c576846 100644
--- a/drivers/infiniband/ulp/iser/iscsi_iser.h
+++ b/drivers/infiniband/ulp/iser/iscsi_iser.h
@@ -103,8 +103,8 @@ 
 /* Default support is 512KB I/O size */
 #define ISER_DEF_MAX_SECTORS		1024
 #define ISCSI_ISER_DEF_SG_TABLESIZE	((ISER_DEF_MAX_SECTORS * 512) >> SHIFT_4K)
-/* Maximum support is 8MB I/O size */
-#define ISCSI_ISER_MAX_SG_TABLESIZE	((16384 * 512) >> SHIFT_4K)
+/* Maximum support is 16MB I/O size */
+#define ISCSI_ISER_MAX_SG_TABLESIZE	((32768 * 512) >> SHIFT_4K)
 
 #define ISER_DEF_XMIT_CMDS_DEFAULT		512
 #if ISCSI_DEF_XMIT_CMDS_MAX > ISER_DEF_XMIT_CMDS_DEFAULT