All of lore.kernel.org
 help / color / mirror / Atom feed
From: Kanchan Joshi <joshiiitr@gmail.com>
To: "Martin K. Petersen" <martin.petersen@oracle.com>
Cc: SelvaKumar S <selvakuma.s1@samsung.com>,
	linux-nvme@lists.infradead.org, linux-block@vger.kernel.org,
	linux-api@vger.kernel.org, linux-scsi@vger.kernel.org,
	linux-fsdevel@vger.kernel.org, dm-devel@redhat.com,
	Keith Busch <kbusch@kernel.org>, Jens Axboe <axboe@kernel.dk>,
	Damien Le Moal <damien.lemoal@wdc.com>,
	Pavel Begunkov <asml.silence@gmail.com>,
	Johannes Thumshirn <johannes.thumshirn@wdc.com>,
	Christoph Hellwig <hch@lst.de>,
	Matthew Wilcox <willy@infradead.org>,
	kch@kernel.org, mpatocka@redhat.com, bvanassche@acm.org,
	djwong@kernel.org, snitzer@redhat.com, agk@redhat.com,
	Selva Jove <selvajove@gmail.com>,
	Nitesh Shetty <nj.shetty@samsung.com>,
	nitheshshetty@gmail.com, KANCHAN JOSHI <joshi.k@samsung.com>,
	Javier Gonzalez <javier.gonz@samsung.com>
Subject: Re: [PATCH 3/7] block: copy offload support infrastructure
Date: Fri, 20 Aug 2021 16:41:15 +0530	[thread overview]
Message-ID: <CA+1E3rKmS6LSPDb9C8S7Ap-b40TB9dfogC-PYm7ehLeBTn+Ukw@mail.gmail.com> (raw)
In-Reply-To: <yq1sfz6loh9.fsf@ca-mkp.ca.oracle.com>

On Thu, Aug 19, 2021 at 12:05 AM Martin K. Petersen
<martin.petersen@oracle.com> wrote:
>
>
> > Native copy offload is not supported for stacked devices.
>
> One of the main reasons that the historic attempts at supporting copy
> offload did not get merged was that the ubiquitous deployment scenario,
> stacked block devices, was not handled well.
>
> Pitfalls surrounding stacking has been brought up several times in
> response to your series. It is critically important that both kernel
> plumbing and user-facing interfaces are defined in a way that works for
> the most common use cases. This includes copying between block devices
> and handling block device stacking. Stacking being one of the most
> fundamental operating principles of the Linux block layer!
>
> Proposing a brand new interface that out of the gate is incompatible
> with both stacking and the copy offload capability widely implemented in
> shipping hardware makes little sense. While NVMe currently only supports
> copy operations inside a single namespace, it is surely only a matter of
> time before that restriction is lifted.
>
> Changing existing interfaces is painful, especially when these are
> exposed to userland. We obviously can't predict every field or feature
> that may be needed in the future. But we should at the very least build
> the infrastructure around what already exists. And that's where the
> proposed design falls short...
>
Certainly, on user-space interface. We've got few cracks to be filled
there, missing the future viability.
But on stacking, can that be additive. Could you please take a look at
the other response (comment from Bart) for the trade-offs.


-- 
Joshi

WARNING: multiple messages have this Message-ID (diff)
From: Kanchan Joshi <joshiiitr@gmail.com>
To: "Martin K. Petersen" <martin.petersen@oracle.com>
Cc: SelvaKumar S <selvakuma.s1@samsung.com>,
	linux-nvme@lists.infradead.org,  linux-block@vger.kernel.org,
	linux-api@vger.kernel.org,  linux-scsi@vger.kernel.org,
	linux-fsdevel@vger.kernel.org,  dm-devel@redhat.com,
	Keith Busch <kbusch@kernel.org>, Jens Axboe <axboe@kernel.dk>,
	 Damien Le Moal <damien.lemoal@wdc.com>,
	Pavel Begunkov <asml.silence@gmail.com>,
	Johannes Thumshirn <johannes.thumshirn@wdc.com>,
	Christoph Hellwig <hch@lst.de>,
	Matthew Wilcox <willy@infradead.org>,
	kch@kernel.org, mpatocka@redhat.com,  bvanassche@acm.org,
	djwong@kernel.org, snitzer@redhat.com, agk@redhat.com,
	 Selva Jove <selvajove@gmail.com>,
	Nitesh Shetty <nj.shetty@samsung.com>,
	nitheshshetty@gmail.com,  KANCHAN JOSHI <joshi.k@samsung.com>,
	Javier Gonzalez <javier.gonz@samsung.com>
Subject: Re: [PATCH 3/7] block: copy offload support infrastructure
Date: Fri, 20 Aug 2021 16:41:15 +0530	[thread overview]
Message-ID: <CA+1E3rKmS6LSPDb9C8S7Ap-b40TB9dfogC-PYm7ehLeBTn+Ukw@mail.gmail.com> (raw)
In-Reply-To: <yq1sfz6loh9.fsf@ca-mkp.ca.oracle.com>

On Thu, Aug 19, 2021 at 12:05 AM Martin K. Petersen
<martin.petersen@oracle.com> wrote:
>
>
> > Native copy offload is not supported for stacked devices.
>
> One of the main reasons that the historic attempts at supporting copy
> offload did not get merged was that the ubiquitous deployment scenario,
> stacked block devices, was not handled well.
>
> Pitfalls surrounding stacking has been brought up several times in
> response to your series. It is critically important that both kernel
> plumbing and user-facing interfaces are defined in a way that works for
> the most common use cases. This includes copying between block devices
> and handling block device stacking. Stacking being one of the most
> fundamental operating principles of the Linux block layer!
>
> Proposing a brand new interface that out of the gate is incompatible
> with both stacking and the copy offload capability widely implemented in
> shipping hardware makes little sense. While NVMe currently only supports
> copy operations inside a single namespace, it is surely only a matter of
> time before that restriction is lifted.
>
> Changing existing interfaces is painful, especially when these are
> exposed to userland. We obviously can't predict every field or feature
> that may be needed in the future. But we should at the very least build
> the infrastructure around what already exists. And that's where the
> proposed design falls short...
>
Certainly, on user-space interface. We've got few cracks to be filled
there, missing the future viability.
But on stacking, can that be additive. Could you please take a look at
the other response (comment from Bart) for the trade-offs.


-- 
Joshi

_______________________________________________
Linux-nvme mailing list
Linux-nvme@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-nvme

WARNING: multiple messages have this Message-ID (diff)
From: Kanchan Joshi <joshiiitr@gmail.com>
To: "Martin K. Petersen" <martin.petersen@oracle.com>
Cc: snitzer@redhat.com, djwong@kernel.org,
	linux-nvme@lists.infradead.org, dm-devel@redhat.com,
	Christoph Hellwig <hch@lst.de>,
	agk@redhat.com, bvanassche@acm.org, linux-scsi@vger.kernel.org,
	nitheshshetty@gmail.com, Matthew Wilcox <willy@infradead.org>,
	Nitesh Shetty <nj.shetty@samsung.com>,
	kch@kernel.org, SelvaKumar S <selvakuma.s1@samsung.com>,
	Selva Jove <selvajove@gmail.com>,
	linux-block@vger.kernel.org, mpatocka@redhat.com,
	Keith Busch <kbusch@kernel.org>, Jens Axboe <axboe@kernel.dk>,
	Damien Le Moal <damien.lemoal@wdc.com>,
	KANCHAN JOSHI <joshi.k@samsung.com>,
	linux-api@vger.kernel.org,
	Johannes Thumshirn <johannes.thumshirn@wdc.com>,
	linux-fsdevel@vger.kernel.org,
	Javier Gonzalez <javier.gonz@samsung.com>,
	Pavel Begunkov <asml.silence@gmail.com>
Subject: Re: [dm-devel] [PATCH 3/7] block: copy offload support infrastructure
Date: Fri, 20 Aug 2021 16:41:15 +0530	[thread overview]
Message-ID: <CA+1E3rKmS6LSPDb9C8S7Ap-b40TB9dfogC-PYm7ehLeBTn+Ukw@mail.gmail.com> (raw)
In-Reply-To: <yq1sfz6loh9.fsf@ca-mkp.ca.oracle.com>

On Thu, Aug 19, 2021 at 12:05 AM Martin K. Petersen
<martin.petersen@oracle.com> wrote:
>
>
> > Native copy offload is not supported for stacked devices.
>
> One of the main reasons that the historic attempts at supporting copy
> offload did not get merged was that the ubiquitous deployment scenario,
> stacked block devices, was not handled well.
>
> Pitfalls surrounding stacking has been brought up several times in
> response to your series. It is critically important that both kernel
> plumbing and user-facing interfaces are defined in a way that works for
> the most common use cases. This includes copying between block devices
> and handling block device stacking. Stacking being one of the most
> fundamental operating principles of the Linux block layer!
>
> Proposing a brand new interface that out of the gate is incompatible
> with both stacking and the copy offload capability widely implemented in
> shipping hardware makes little sense. While NVMe currently only supports
> copy operations inside a single namespace, it is surely only a matter of
> time before that restriction is lifted.
>
> Changing existing interfaces is painful, especially when these are
> exposed to userland. We obviously can't predict every field or feature
> that may be needed in the future. But we should at the very least build
> the infrastructure around what already exists. And that's where the
> proposed design falls short...
>
Certainly, on user-space interface. We've got few cracks to be filled
there, missing the future viability.
But on stacking, can that be additive. Could you please take a look at
the other response (comment from Bart) for the trade-offs.


-- 
Joshi

--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel


  reply	other threads:[~2021-08-20 11:11 UTC|newest]

Thread overview: 92+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <CGME20210817101741epcas5p174ca0a539587da6a67b9f58cd13f2bad@epcas5p1.samsung.com>
2021-08-17 10:14 ` [PATCH 0/7] add simple copy support SelvaKumar S
2021-08-17 10:14   ` [dm-devel] " SelvaKumar S
2021-08-17 10:14   ` SelvaKumar S
     [not found]   ` <CGME20210817101747epcas5p1242e63ec29b127b03b6f9f5f1b57f86e@epcas5p1.samsung.com>
2021-08-17 10:14     ` [PATCH 1/7] block: make bio_map_kern() non static SelvaKumar S
2021-08-17 10:14       ` [dm-devel] " SelvaKumar S
2021-08-17 10:14       ` SelvaKumar S
     [not found]   ` <CGME20210817101753epcas5p4f4257f8edda27e184ecbb273b700ccbc@epcas5p4.samsung.com>
2021-08-17 10:14     ` [PATCH 2/7] block: Introduce queue limits for copy-offload support SelvaKumar S
2021-08-17 10:14       ` [dm-devel] " SelvaKumar S
2021-08-17 10:14       ` SelvaKumar S
2021-08-17 13:08       ` Greg KH
2021-08-17 13:08         ` [dm-devel] " Greg KH
2021-08-17 13:08         ` Greg KH
2021-08-17 14:42         ` Nitesh Shetty
2021-08-17 14:42           ` [dm-devel] " Nitesh Shetty
2021-08-17 14:42           ` Nitesh Shetty
     [not found]   ` <CGME20210817101758epcas5p1ec353b3838d64654e69488229256d9eb@epcas5p1.samsung.com>
2021-08-17 10:14     ` [PATCH 3/7] block: copy offload support infrastructure SelvaKumar S
2021-08-17 10:14       ` [dm-devel] " SelvaKumar S
2021-08-17 10:14       ` SelvaKumar S
2021-08-17 17:14       ` Bart Van Assche
2021-08-17 17:14         ` [dm-devel] " Bart Van Assche
2021-08-17 17:14         ` Bart Van Assche
2021-08-17 20:41         ` Mikulas Patocka
2021-08-17 20:41           ` [dm-devel] " Mikulas Patocka
2021-08-17 20:41           ` Mikulas Patocka
2021-08-17 21:53           ` Douglas Gilbert
2021-08-17 21:53             ` [dm-devel] " Douglas Gilbert
2021-08-17 21:53             ` Douglas Gilbert
2021-08-17 22:06             ` Bart Van Assche
2021-08-17 22:06               ` Bart Van Assche
2021-08-17 22:06               ` [dm-devel] " Bart Van Assche
2021-08-20 10:39         ` Kanchan Joshi
2021-08-20 10:39           ` [dm-devel] " Kanchan Joshi
2021-08-20 10:39           ` Kanchan Joshi
2021-08-20 21:18           ` Bart Van Assche
2021-08-20 21:18             ` [dm-devel] " Bart Van Assche
2021-08-20 21:18             ` Bart Van Assche
2021-08-26  7:46             ` Nitesh Shetty
2021-08-26  7:46               ` [dm-devel] " Nitesh Shetty
2021-08-26  7:46               ` Nitesh Shetty
2021-08-17 20:35       ` kernel test robot
2021-08-17 20:35         ` kernel test robot
2021-08-17 20:35         ` [dm-devel] " kernel test robot
2021-08-17 20:35         ` kernel test robot
2021-08-18 18:35       ` Martin K. Petersen
2021-08-18 18:35         ` [dm-devel] " Martin K. Petersen
2021-08-18 18:35         ` Martin K. Petersen
2021-08-20 11:11         ` Kanchan Joshi [this message]
2021-08-20 11:11           ` [dm-devel] " Kanchan Joshi
2021-08-20 11:11           ` Kanchan Joshi
     [not found]   ` <CGME20210817101803epcas5p10cda1d52f8a8f1172e34b1f9cf8eef3b@epcas5p1.samsung.com>
2021-08-17 10:14     ` [PATCH 4/7] block: Introduce a new ioctl for simple copy SelvaKumar S
2021-08-17 10:14       ` [dm-devel] " SelvaKumar S
2021-08-17 10:14       ` SelvaKumar S
2021-08-17 13:09       ` Greg KH
2021-08-17 13:09         ` [dm-devel] " Greg KH
2021-08-17 13:09         ` Greg KH
2021-08-17 13:10       ` Greg KH
2021-08-17 13:10         ` [dm-devel] " Greg KH
2021-08-17 13:10         ` Greg KH
2021-08-17 14:48         ` Nitesh Shetty
2021-08-17 14:48           ` [dm-devel] " Nitesh Shetty
2021-08-17 14:48           ` Nitesh Shetty
2021-08-17 23:36       ` Darrick J. Wong
2021-08-17 23:36         ` [dm-devel] " Darrick J. Wong
2021-08-17 23:36         ` Darrick J. Wong
2021-08-18 15:37         ` Nitesh Shetty
2021-08-18 15:37           ` [dm-devel] " Nitesh Shetty
2021-08-18 15:37           ` Nitesh Shetty
2021-08-18 16:17           ` Darrick J. Wong
2021-08-18 16:17             ` [dm-devel] " Darrick J. Wong
2021-08-18 16:17             ` Darrick J. Wong
     [not found]   ` <CGME20210817101809epcas5p39eed3531ed82f5f08127eb3dba1fc50f@epcas5p3.samsung.com>
2021-08-17 10:14     ` [PATCH 5/7] block: add emulation " SelvaKumar S
2021-08-17 10:14       ` [dm-devel] " SelvaKumar S
2021-08-17 10:14       ` SelvaKumar S
2021-08-17 22:10       ` kernel test robot
2021-08-17 22:10         ` kernel test robot
2021-08-17 22:10         ` [dm-devel] " kernel test robot
2021-08-17 22:10         ` kernel test robot
     [not found]   ` <CGME20210817101814epcas5p41db3d7269f5139efcaf2ca685cd04a16@epcas5p4.samsung.com>
2021-08-17 10:14     ` [PATCH 6/7] nvme: add simple copy support SelvaKumar S
2021-08-17 10:14       ` [dm-devel] " SelvaKumar S
2021-08-17 10:14       ` SelvaKumar S
     [not found]   ` <CGME20210817101822epcas5p470644cf681d5e8db5367dc7998305c65@epcas5p4.samsung.com>
2021-08-17 10:14     ` [PATCH 7/7] dm kcopyd: add simple copy offload support SelvaKumar S
2021-08-17 10:14       ` [dm-devel] " SelvaKumar S
2021-08-17 10:14       ` SelvaKumar S
2021-08-17 20:29       ` [dm-devel] " Mikulas Patocka
2021-08-17 20:29         ` Mikulas Patocka
2021-08-17 20:29         ` Mikulas Patocka
2021-08-17 23:37   ` [PATCH 0/7] add simple copy support Darrick J. Wong
2021-08-17 23:37     ` [dm-devel] " Darrick J. Wong
2021-08-17 23:37     ` Darrick J. Wong
2021-08-18 15:40     ` Nitesh Shetty
2021-08-18 15:40       ` [dm-devel] " Nitesh Shetty
2021-08-18 15:40       ` Nitesh Shetty

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CA+1E3rKmS6LSPDb9C8S7Ap-b40TB9dfogC-PYm7ehLeBTn+Ukw@mail.gmail.com \
    --to=joshiiitr@gmail.com \
    --cc=agk@redhat.com \
    --cc=asml.silence@gmail.com \
    --cc=axboe@kernel.dk \
    --cc=bvanassche@acm.org \
    --cc=damien.lemoal@wdc.com \
    --cc=djwong@kernel.org \
    --cc=dm-devel@redhat.com \
    --cc=hch@lst.de \
    --cc=javier.gonz@samsung.com \
    --cc=johannes.thumshirn@wdc.com \
    --cc=joshi.k@samsung.com \
    --cc=kbusch@kernel.org \
    --cc=kch@kernel.org \
    --cc=linux-api@vger.kernel.org \
    --cc=linux-block@vger.kernel.org \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-nvme@lists.infradead.org \
    --cc=linux-scsi@vger.kernel.org \
    --cc=martin.petersen@oracle.com \
    --cc=mpatocka@redhat.com \
    --cc=nitheshshetty@gmail.com \
    --cc=nj.shetty@samsung.com \
    --cc=selvajove@gmail.com \
    --cc=selvakuma.s1@samsung.com \
    --cc=snitzer@redhat.com \
    --cc=willy@infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.