Re: [dm-devel] [PATCH] multipathd: Added support to handle FPIN-Li events for FC-NVMe

2023-09-20 Thread Muneendra Kumar M
Hi Martin, Thanks for the review. I will incorporate your review comments and will post the v2 soon. Regards, Muneendra. -Original Message- From: Martin Wilck Sent: Friday, September 15, 2023 5:14 PM To: Muneendra Kumar ; dm-devel@redhat.com; bmarz...@redhat.com Cc: mku...@redhat.com Sub

Re: [dm-devel] [PATCH -next v2 02/28] md: use 'mddev->suspended' for is_md_suspended()

2023-09-20 Thread Xiao Ni
On Mon, Aug 28, 2023 at 10:04 AM Yu Kuai wrote: > > From: Yu Kuai > > 'pers->prepare_suspend' is introduced to prevent a deadlock for raid456, > this change prepares to clean this up in later patches while refactoring > mddev_suspend(). Specifically allow reshape to make progress while > waiting

[dm-devel] [PATCH v16 07/12] nvme: add copy offload support

2023-09-20 Thread Nitesh Shetty
Current design only supports single source range. We receive a request with REQ_OP_COPY_SRC. Parse this request which consists of src(1st) and dst(2nd) bios. Form a copy command (TP 4065) trace event support for nvme_copy_cmd. Set the device copy limits to queue limits. Reviewed-by: Hannes Reinec

[dm-devel] [PATCH v16 01/12] block: Introduce queue limits and sysfs for copy-offload support

2023-09-20 Thread Nitesh Shetty
Add device limits as sysfs entries, - copy_max_bytes (RW) - copy_max_hw_bytes (RO) Above limits help to split the copy payload in block layer. copy_max_bytes: maximum total length of copy in single payload. copy_max_hw_bytes: Reflects the device supported maximum limit. Reviewed-b

[dm-devel] [PATCH v16 11/12] null: Enable trace capability for null block

2023-09-20 Thread Nitesh Shetty
This is a prep patch to enable copy trace capability. At present only zoned null_block is using trace, so we decoupled trace and zoned dependency to make it usable in null_blk driver also. Reviewed-by: Hannes Reinecke Signed-off-by: Nitesh Shetty Signed-off-by: Anuj Gupta --- drivers/block/nul

[dm-devel] [PATCH v16 03/12] block: add copy offload support

2023-09-20 Thread Nitesh Shetty
Introduce blkdev_copy_offload to perform copy offload. Issue REQ_OP_COPY_SRC with source info along with taking a plug. This flows till request layer and waits for dst bio to arrive. Issue REQ_OP_COPY_DST with destination info and this bio reaches request layer and merges with src request. For any

[dm-devel] [PATCH v16 06/12] fs, block: copy_file_range for def_blk_ops for direct block device

2023-09-20 Thread Nitesh Shetty
For direct block device opened with O_DIRECT, use copy_file_range to issue device copy offload, or use generic_copy_file_range in case device copy offload capability is absent or the device files are not open with O_DIRECT. Reviewed-by: Hannes Reinecke Signed-off-by: Anuj Gupta Signed-off-by: Ni

[dm-devel] [PATCH v16 10/12] dm: Enable copy offload for dm-linear target

2023-09-20 Thread Nitesh Shetty
Setting copy_offload_supported flag to enable offload. Reviewed-by: Hannes Reinecke Signed-off-by: Nitesh Shetty --- drivers/md/dm-linear.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/md/dm-linear.c b/drivers/md/dm-linear.c index f4448d520ee9..1d1ee30bbefb 100644 --- a/drivers/m

[dm-devel] [PATCH v16 05/12] fs/read_write: Enable copy_file_range for block device.

2023-09-20 Thread Nitesh Shetty
From: Anuj Gupta This is a prep patch. Allow copy_file_range to work for block devices. Relaxing generic_copy_file_checks allows us to reuse the existing infra, instead of adding a new user interface for block copy offload. Change generic_copy_file_checks to use ->f_mapping->host for both inode_i

[dm-devel] [PATCH v16 09/12] dm: Add support for copy offload

2023-09-20 Thread Nitesh Shetty
Before enabling copy for dm target, check if underlying devices and dm target support copy. Avoid split happening inside dm target. Fail early if the request needs split, currently splitting copy request is not supported. Signed-off-by: Nitesh Shetty --- drivers/md/dm-table.c | 37 ++

[dm-devel] [PATCH v16 04/12] block: add emulation for copy

2023-09-20 Thread Nitesh Shetty
For the devices which does not support copy, copy emulation is added. It is required for in-kernel users like fabrics, where file descriptor is not available and hence they can't use copy_file_range. Copy-emulation is implemented by reading from source into memory and writing to the corresponding d

[dm-devel] [PATCH v16 02/12] Add infrastructure for copy offload in block and request layer.

2023-09-20 Thread Nitesh Shetty
We add two new opcode REQ_OP_COPY_SRC, REQ_OP_COPY_DST. Since copy is a composite operation involving src and dst sectors/lba, each needs to be represented by a separate bio to make it compatible with device mapper. We expect caller to take a plug and send bio with source information, followed by b

[dm-devel] [PATCH v16 12/12] null_blk: add support for copy offload

2023-09-20 Thread Nitesh Shetty
Implementation is based on existing read and write infrastructure. copy_max_bytes: A new configfs and module parameter is introduced, which can be used to set hardware/driver supported maximum copy limit. Only request based queue mode will support for copy offload. Added tracefs support to copy IO

[dm-devel] [PATCH v16 08/12] nvmet: add copy command support for bdev and file ns

2023-09-20 Thread Nitesh Shetty
Add support for handling nvme_cmd_copy command on target. For bdev-ns if backing device supports copy offload we call device copy offload (blkdev_copy_offload). In case of absence of device copy offload capability, we use copy emulation (blkdev_copy_emulation) For file-ns we call vfs_copy_file_ra

[dm-devel] [PATCH v16 00/12] Implement copy offload support

2023-09-20 Thread Nitesh Shetty
The patch series covers the points discussed in past and most recently in LSFMM'23[0]. We have covered the initial agreed requirements in this patch set and further additional features suggested by community. This is next iteration of our previous patch set v15[1]. Copy offload is performed using

Re: [dm-devel] [PATCH v16 12/12] null_blk: add support for copy offload

2023-09-20 Thread kernel test robot
Hi Nitesh, kernel test robot noticed the following build warnings: [auto build test WARNING on 7fc7222d9680366edeecc219c21ca96310bdbc10] url: https://github.com/intel-lab-lkp/linux/commits/Nitesh-Shetty/block-Introduce-queue-limits-and-sysfs-for-copy-offload-support/20230920-170132 base

Re: [dm-devel] [PATCH] dm-zoned: free dmz->ddev array in dmz_put_zoned_device

2023-09-20 Thread Hannes Reinecke
On 9/20/23 12:51, Fedor Pchelkin wrote: Commit 4dba12881f88 ("dm zoned: support arbitrary number of devices") made the pointers to additional zoned devices to be stored in a dynamically allocated dmz->ddev array. However, this array is not freed. Free it when cleaning up zoned device information

[dm-devel] [PATCH] dm-zoned: free dmz->ddev array in dmz_put_zoned_device

2023-09-20 Thread Fedor Pchelkin
Commit 4dba12881f88 ("dm zoned: support arbitrary number of devices") made the pointers to additional zoned devices to be stored in a dynamically allocated dmz->ddev array. However, this array is not freed. Free it when cleaning up zoned device information inside dmz_put_zoned_device(). Assigning

Re: [dm-devel] [PATCH] dm-zoned: free dmz->ddev array in dmz_put_zoned_device

2023-09-20 Thread Fedor Pchelkin
On 23/09/20 04:06PM, Hannes Reinecke wrote: > On 9/20/23 12:51, Fedor Pchelkin wrote: > > Commit 4dba12881f88 ("dm zoned: support arbitrary number of devices") > > made the pointers to additional zoned devices to be stored in a > > dynamically allocated dmz->ddev array. However, this array is not f

Re: [dm-devel] dm-zoned: free dmz->ddev array in dmz_put_zoned_device

2023-09-20 Thread Mike Snitzer
On Wed, Sep 20 2023 at 10:35P -0400, Fedor Pchelkin wrote: > On 23/09/20 04:06PM, Hannes Reinecke wrote: > > On 9/20/23 12:51, Fedor Pchelkin wrote: > > > Commit 4dba12881f88 ("dm zoned: support arbitrary number of devices") > > > made the pointers to additional zoned devices to be stored in a >

Re: [dm-devel] dm-zoned: free dmz->ddev array in dmz_put_zoned_device

2023-09-20 Thread Fedor Pchelkin
On 23/09/20 01:54PM, Mike Snitzer wrote: > On Wed, Sep 20 2023 at 10:35P -0400, > Fedor Pchelkin wrote: > > > On 23/09/20 04:06PM, Hannes Reinecke wrote: > > > On 9/20/23 12:51, Fedor Pchelkin wrote: > > > > Commit 4dba12881f88 ("dm zoned: support arbitrary number of devices") > > > > made the po