[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <BYAPR04MB49652982D00724001AE758C986729@BYAPR04MB4965.namprd04.prod.outlook.com>
Date: Sat, 10 Apr 2021 00:29:59 +0000
From: Chaitanya Kulkarni <Chaitanya.Kulkarni@....com>
To: Max Gurtovoy <mgurtovoy@...dia.com>,
SelvaKumar S <selvakuma.s1@...sung.com>,
"linux-nvme@...ts.infradead.org" <linux-nvme@...ts.infradead.org>
CC: "axboe@...nel.dk" <axboe@...nel.dk>,
Damien Le Moal <Damien.LeMoal@....com>,
"kch@...nel.org" <kch@...nel.org>,
"sagi@...mberg.me" <sagi@...mberg.me>,
"snitzer@...hat.com" <snitzer@...hat.com>,
"selvajove@...il.com" <selvajove@...il.com>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"nj.shetty@...sung.com" <nj.shetty@...sung.com>,
"linux-block@...r.kernel.org" <linux-block@...r.kernel.org>,
"linux-fsdevel@...r.kernel.org" <linux-fsdevel@...r.kernel.org>,
"dm-devel@...hat.com" <dm-devel@...hat.com>,
"joshi.k@...sung.com" <joshi.k@...sung.com>,
"javier.gonz@...sung.com" <javier.gonz@...sung.com>,
"kbusch@...nel.org" <kbusch@...nel.org>,
"joshiiitr@...il.com" <joshiiitr@...il.com>,
"hch@....de" <hch@....de>
Subject: Re: [RFC PATCH v5 0/4] add simple copy support
On 4/9/21 17:22, Max Gurtovoy wrote:
> On 2/19/2021 2:45 PM, SelvaKumar S wrote:
>> This patchset tries to add support for TP4065a ("Simple Copy Command"),
>> v2020.05.04 ("Ratified")
>>
>> The Specification can be found in following link.
>> https://nvmexpress.org/wp-content/uploads/NVM-Express-1.4-Ratified-TPs-1.zip
>>
>> Simple copy command is a copy offloading operation and is used to copy
>> multiple contiguous ranges (source_ranges) of LBA's to a single destination
>> LBA within the device reducing traffic between host and device.
>>
>> This implementation doesn't add native copy offload support for stacked
>> devices rather copy offload is done through emulation. Possible use
>> cases are F2FS gc and BTRFS relocation/balance.
>>
>> *blkdev_issue_copy* takes source bdev, no of sources, array of source
>> ranges (in sectors), destination bdev and destination offset(in sectors).
>> If both source and destination block devices are same and copy_offload = 1,
>> then copy is done through native copy offloading. Copy emulation is used
>> in other cases.
>>
>> As SCSI XCOPY can take two different block devices and no of source range is
>> equal to 1, this interface can be extended in future to support SCSI XCOPY.
> Any idea why this TP wasn't designed for copy offload between 2
> different namespaces in the same controller ?
Yes, it was the first attempt so to keep it simple.
Further work is needed to add incremental TP so that we can also do a copy
between the name-spaces of same controller (if we can't already) and to the
namespaces that belongs to the different controller.
> And a simple copy will be the case where the src_nsid == dst_nsid ?
>
> Also why there are multiple source ranges and only one dst range ? We
> could add a bit to indicate if this range is src or dst..
>
>
Powered by blists - more mailing lists