Received: by 2002:a05:6602:2086:0:0:0:0 with SMTP id a6csp4428112ioa; Wed, 27 Apr 2022 03:46:13 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxg9Jok3L2ucDOJ3bkqFXNdMRuQOH0srw7sSfM9I+zJQcscO6mF2WkAicGB7s/tn6MRN0py X-Received: by 2002:a17:902:bf4c:b0:15c:3d1b:8a47 with SMTP id u12-20020a170902bf4c00b0015c3d1b8a47mr26658539pls.118.1651056373247; Wed, 27 Apr 2022 03:46:13 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1651056373; cv=none; d=google.com; s=arc-20160816; b=oAJ4KPUdl7KLL5M8vAVeieJcex5zfI/nSTp2Ls9ilojenoDhZRVGa9tOfC/aYPr5D1 bLFX1Y8j4zDLE43mU+RJhYDuZJquY+SK9pb9YUw32oFoKosJMgmI7wNIWdDRPgRzpSe1 FFgB4GhWa10d+VVoHJ1EpPwpY8KRBkeu2nPIXt1v/LWE6teC+d9NMGDARDHlw1nHh3lO nZF++nqnRfnZd7/bEx1pjmWY6p1BtWB5leqeYsbYa3RKQs8hv3hENdvjI6bSjchKEyGC eODRpsbwj6sBEWbaC32TrkL7sX7FfAyD65a8cHovAuIMS/rloG77SlHE9IGub29OVGpo Z0Gg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:in-reply-to :organization:from:references:cc:to:content-language:subject :user-agent:mime-version:date:message-id:dkim-signature :wdcironportexception:ironport-sdr:ironport-sdr:dkim-signature; bh=uBiHXbB2vbuCi8zkqrP/WxP0n00qmXlNJm4scsV0P9c=; b=BO7sgm1i/+7YBxlegOa7O8gt8JQQ9+ExDRP5ba/R4wL5EwEpKtXj/4NlKq4KzulXzq 7NqEPaUomye3uYI5IN+q45WuPQIaGZjRVMFwItqd79NZVgUfigv0MPcmoleQTyxUzrJK 8NKDEoKheBodpiGc8IuSOYN5zXxwGlrLtRWB2G5fJcxHsOHNFtBfsfO6htnl9aaCiTff Bc5JToTMWYhC/lD1m7KLDLkyeZX7cJ+qDDwoQyO4fk361vTHGz0kICfEeLu4t8xU7xhQ QxIKlFrHz+96uB48Xl1Ks3TQg9v+3jkq5no1oT2TQ9YRfN25Jgqk5qiEsTbac77iI2tb +itA== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@wdc.com header.s=dkim.wdc.com header.b=UocUzM1q; dkim=pass header.i=@opensource.wdc.com header.s=dkim header.b=ZeDu48TM; spf=softfail (google.com: domain of transitioning linux-kernel-owner@vger.kernel.org does not designate 23.128.96.19 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=opensource.wdc.com Return-Path: Received: from lindbergh.monkeyblade.net (lindbergh.monkeyblade.net. [23.128.96.19]) by mx.google.com with ESMTPS id l16-20020a170902f69000b001570d09613esi1341925plg.472.2022.04.27.03.46.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 27 Apr 2022 03:46:13 -0700 (PDT) Received-SPF: softfail (google.com: domain of transitioning linux-kernel-owner@vger.kernel.org does not designate 23.128.96.19 as permitted sender) client-ip=23.128.96.19; Authentication-Results: mx.google.com; dkim=fail header.i=@wdc.com header.s=dkim.wdc.com header.b=UocUzM1q; dkim=pass header.i=@opensource.wdc.com header.s=dkim header.b=ZeDu48TM; spf=softfail (google.com: domain of transitioning linux-kernel-owner@vger.kernel.org does not designate 23.128.96.19 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=opensource.wdc.com Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id E1ACC2C3917; Wed, 27 Apr 2022 02:58:14 -0700 (PDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1357038AbiD0CEY (ORCPT + 99 others); Tue, 26 Apr 2022 22:04:24 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:49916 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1349881AbiD0CER (ORCPT ); Tue, 26 Apr 2022 22:04:17 -0400 Received: from esa4.hgst.iphmx.com (esa4.hgst.iphmx.com [216.71.154.42]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 802A611C23 for ; Tue, 26 Apr 2022 19:01:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=wdc.com; i=@wdc.com; q=dns/txt; s=dkim.wdc.com; t=1651024868; x=1682560868; h=message-id:date:mime-version:subject:to:cc:references: from:in-reply-to:content-transfer-encoding; bh=aVEYVQf35+Uh7XzM6a1kJevWBsv5Uf3EWaUSl6Zi8N0=; b=UocUzM1qIfxCSJF7NWfoqXYekFW684jLBtzH2jlb2RWBGcCrVcdMPJ9F XiEFqrc0D3rXpOuRIe7xmKl/p437JlT5OfCrFUqAEjAI+TsmIXYyF4rYI M0qyp8TPiyUqlvd9bGRFvu1TkCrxGrlpxHCf95nyi6S4G2m5xvPiGB4cY FciILnk/Sb4D4JxOI9s10JJJNiLvLiy6MTG69/zdbFQIqs3s2n0/w+qb5 hMs8lu5kGRGq6YSHg5CYMXRDDNZsY2uFpUKUzlJGHO/LD4MolpCsMU0YI Am3cDZOFkGV7NnKXLtOZhdykUHAHrW+vcIPWqSl6SkXKPg2W44xn0rMbU A==; X-IronPort-AV: E=Sophos;i="5.90,292,1643644800"; d="scan'208";a="197753711" Received: from uls-op-cesaip01.wdc.com (HELO uls-op-cesaep01.wdc.com) ([199.255.45.14]) by ob1.hgst.iphmx.com with ESMTP; 27 Apr 2022 10:01:06 +0800 IronPort-SDR: KmSwHkVVMX6zPKYGZTwazbbH5nJkXirJXdo5QLBGrIq2rVEAiaarWuh3WkYCaQDKwc1ujwni4W GdvqAdXm9S6ctQtAfgWA0W2/oIPYCSA6IYOBKUw4d5EF6Yonot0mePxiB6epDphbQr/T5jyQSz NZumnUDok454zOzznBA5HU8WZ0b5gZWuPDGpWJ6V86Q3da0BdhcqVxtfGXHUf75SThq6fTH5Y4 P1h+FGU28FgZ2Lg/OlmnmkeRuyI9M6yHhBLd+7AsJjiNT7e3LcTAjXk7j1vZLTGJd9i+IZKVGs 4XoSkgi9Fxwy7NqT5KmaAQ9V Received: from uls-op-cesaip01.wdc.com ([10.248.3.36]) by uls-op-cesaep01.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 26 Apr 2022 18:32:00 -0700 IronPort-SDR: Xk5xSXGOZHjJQmG5okrqXGTE/IhgrDpTfQserdeiJTuB3l6i8piaSrQDbtz/osvR6phUiDY7x+ mAt0BRle8QeOfvnS/QyXjzWGxZyFm1jGwexTNIhIsYuhu4Bzl+g3ROmiKt7pYz060VHzcJkqhQ NwHXzwPSmrklHedgFKfaD5FZm+Cp0AQZHX5EWyIz28cykS3KHfS4L0VXKDLrUM6Bxw122s7LJG vzxmNjQexP29jcC3gsbfY7SBo3IFtpyNTTs8cIUNi7JEMXXlMsVTpv/1Y5lkiRr81Tk0U+rjnT 5Gc= WDCIronportException: Internal Received: from usg-ed-osssrv.wdc.com ([10.3.10.180]) by uls-op-cesaip01.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 26 Apr 2022 19:01:06 -0700 Received: from usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTP id 4Kp2694qRHz1SHwl for ; Tue, 26 Apr 2022 19:01:05 -0700 (PDT) Authentication-Results: usg-ed-osssrv.wdc.com (amavisd-new); dkim=pass reason="pass (just generated, assumed good)" header.d=opensource.wdc.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d= opensource.wdc.com; h=content-transfer-encoding:content-type :in-reply-to:organization:from:references:to:content-language :subject:user-agent:mime-version:date:message-id; s=dkim; t= 1651024864; x=1653616865; bh=aVEYVQf35+Uh7XzM6a1kJevWBsv5Uf3EWaU Sl6Zi8N0=; b=ZeDu48TMfnVRErQO6FzvxanT5ICopH9ORrv5SXtzpLS+TiS0T1L EslfKXJQX2/T9xqFy13DS5nGg7dJk8rDtOsBGPPKHcJJI+m7qA1MLvDaIJ998MgH pkygMtaPu/DXgGLux0zswiFie054ZB7iv3BT5mE/YBREugGO9xdrOgdEaf/dmqvB 72o8h+CGsfiWyOv75mY/aKeyV0zqngz0FPYSa68ifoXAbXUoa7Gju5gS3swYI1cO oewUYT/UGVPUfenfsXFN51gWKa7q3FgurVlWK29TzRw0BM4jlt75vWJUNhN9Gb0i gzdM0ndxIZDSjQm+VOEsWjcQE1YiHf6F9sA== X-Virus-Scanned: amavisd-new at usg-ed-osssrv.wdc.com Received: from usg-ed-osssrv.wdc.com ([127.0.0.1]) by usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id vCeM9lp0059W for ; Tue, 26 Apr 2022 19:01:04 -0700 (PDT) Received: from [10.225.163.27] (unknown [10.225.163.27]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTPSA id 4Kp25z67Pcz1Rvlc; Tue, 26 Apr 2022 19:00:55 -0700 (PDT) Message-ID: <76a89205-f4f1-1e51-aa23-c8082bfefd3c@opensource.wdc.com> Date: Wed, 27 Apr 2022 11:00:54 +0900 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.8.0 Subject: Re: [PATCH v4 00/10] Add Copy offload support Content-Language: en-US To: Nitesh Shetty Cc: chaitanyak@nvidia.com, linux-block@vger.kernel.org, linux-scsi@vger.kernel.org, dm-devel@redhat.com, linux-nvme@lists.infradead.org, linux-fsdevel@vger.kernel.org, axboe@kernel.dk, msnitzer@redhat.com, bvanassche@acm.org, martin.petersen@oracle.com, hare@suse.de, kbusch@kernel.org, hch@lst.de, Frederick.Knight@netapp.com, osandov@fb.com, lsf-pc@lists.linux-foundation.org, djwong@kernel.org, josef@toxicpanda.com, clm@fb.com, dsterba@suse.com, tytso@mit.edu, jack@suse.com, nitheshshetty@gmail.com, gost.dev@samsung.com, Alasdair Kergon , Mike Snitzer , Sagi Grimberg , James Smart , Chaitanya Kulkarni , Naohiro Aota , Johannes Thumshirn , Alexander Viro , linux-kernel@vger.kernel.org References: <20220426101241.30100-1-nj.shetty@samsung.com> From: Damien Le Moal Organization: Western Digital Research In-Reply-To: <20220426101241.30100-1-nj.shetty@samsung.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Spam-Status: No, score=-3.8 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,NICE_REPLY_A,RDNS_NONE,SPF_HELO_NONE autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 4/26/22 19:12, Nitesh Shetty wrote: > The patch series covers the points discussed in November 2021 virtual c= all > [LSF/MM/BFP TOPIC] Storage: Copy Offload[0]. > We have covered the Initial agreed requirements in this patchset. > Patchset borrows Mikulas's token based approach for 2 bdev > implementation. Please reduce the distribution list. List servers (and email clients) are complaining about it being too large. >=20 > Overall series supports =E2=80=93 >=20 > 1. Driver > - NVMe Copy command (single NS), including support in nvme-target (for > block and file backend) >=20 > 2. Block layer > - Block-generic copy (REQ_COPY flag), with interface accommodating > two block-devs, and multi-source/destination interface > - Emulation, when offload is natively absent > - dm-linear support (for cases not requiring split) >=20 > 3. User-interface > - new ioctl > - copy_file_range for zonefs >=20 > 4. In-kernel user > - dm-kcopyd > - copy_file_range in zonefs >=20 > For zonefs copy_file_range - Seems we cannot levearge fstest here. Limi= ted > testing is done at this point using a custom application for unit testi= ng. >=20 > Appreciate the inputs on plumbing and how to test this further? > Perhaps some of it can be discussed during LSF/MM too. >=20 > [0] https://lore.kernel.org/linux-nvme/CA+1E3rJ7BZ7LjQXXTdX+-0Edz=3DzT1= 4mmPGMiVCzUgB33C60tbQ@mail.gmail.com/ >=20 > Changes in v4: > - added copy_file_range support for zonefs > - added documentaion about new sysfs entries > - incorporated review comments on v3 > - minor fixes >=20 >=20 > Arnav Dawn (2): > nvmet: add copy command support for bdev and file ns > fs: add support for copy file range in zonefs >=20 > Nitesh Shetty (7): > block: Introduce queue limits for copy-offload support > block: Add copy offload support infrastructure > block: Introduce a new ioctl for copy > block: add emulation for copy > nvme: add copy offload support > dm: Add support for copy offload. > dm: Enable copy offload for dm-linear target >=20 > SelvaKumar S (1): > dm kcopyd: use copy offload support >=20 > Documentation/ABI/stable/sysfs-block | 83 +++++++ > block/blk-lib.c | 358 +++++++++++++++++++++++++++ > block/blk-map.c | 2 +- > block/blk-settings.c | 59 +++++ > block/blk-sysfs.c | 138 +++++++++++ > block/blk.h | 2 + > block/ioctl.c | 32 +++ > drivers/md/dm-kcopyd.c | 55 +++- > drivers/md/dm-linear.c | 1 + > drivers/md/dm-table.c | 45 ++++ > drivers/md/dm.c | 6 + > drivers/nvme/host/core.c | 116 ++++++++- > drivers/nvme/host/fc.c | 4 + > drivers/nvme/host/nvme.h | 7 + > drivers/nvme/host/pci.c | 25 ++ > drivers/nvme/host/rdma.c | 6 + > drivers/nvme/host/tcp.c | 14 ++ > drivers/nvme/host/trace.c | 19 ++ > drivers/nvme/target/admin-cmd.c | 8 +- > drivers/nvme/target/io-cmd-bdev.c | 65 +++++ > drivers/nvme/target/io-cmd-file.c | 49 ++++ > fs/zonefs/super.c | 178 ++++++++++++- > fs/zonefs/zonefs.h | 1 + > include/linux/blk_types.h | 21 ++ > include/linux/blkdev.h | 17 ++ > include/linux/device-mapper.h | 5 + > include/linux/nvme.h | 43 +++- > include/uapi/linux/fs.h | 23 ++ > 28 files changed, 1367 insertions(+), 15 deletions(-) >=20 >=20 > base-commit: e7d6987e09a328d4a949701db40ef63fbb970670 --=20 Damien Le Moal Western Digital Research