linux-fsdevel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Re: [PATCH v20 03/12] block: add copy offload support
@ 2024-06-06  5:56 Christoph Hellwig
  0 siblings, 0 replies; 87+ messages in thread
From: Christoph Hellwig @ 2024-06-06  5:56 UTC (permalink / raw)
  To: Nitesh Shetty
  Cc: Christoph Hellwig, Jens Axboe, Jonathan Corbet, Alasdair Kergon,
	Mike Snitzer, Mikulas Patocka, Keith Busch, Sagi Grimberg,
	Chaitanya Kulkarni, Alexander Viro, Christian Brauner, Jan Kara,
	martin.petersen, bvanassche, david, hare, damien.lemoal, anuj20.g,
	joshi.k, nitheshshetty, gost.dev, linux-block, linux-kernel,
	linux-doc, dm-devel, linux-nvme, linux-fsdevel

On Tue, Jun 04, 2024 at 10:50:26AM +0000, Nitesh Shetty wrote:
>>> +	if (!cio)
>>> +		return -ENOMEM;
>>> +	atomic_set(&cio->refcount, 1);
>>> +	cio->waiter = current;
>>> +	cio->endio = endio;
>>> +	cio->private = private;
>>
>> For the main use this could be allocated on-stack.  Is there any good
>> reason to not let callers that really want an async version to implement
>> the async behavior themselves using suitable helpers?
>>
> We cannot do on-stack allocation of cio as we use it in endio handler.
> cio will be used to track partial IO completion as well.
> Callers requiring async implementation would need to manage all this
> bookkeeping themselves, leading to duplication of code. We felt it is
> better to do it here onetime.
> Do you see it any differently ?

We don't really to these async variants for other in-kernel I/O,
so unless we have a really good reason I'd not do here.  The usual
approach is to just have a submission helper for async in-kernel
special bios types, and the let the caller handle the rest.


^ permalink raw reply	[flat|nested] 87+ messages in thread

end of thread, other threads:[~2024-06-28 13:54 UTC | newest]

Thread overview: 87+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <CGME20240520102747epcas5p33497a911ca70c991e5da8e22c5d1336b@epcas5p3.samsung.com>
2024-05-20 10:20 ` [PATCH v20 00/12] Implement copy offload support Nitesh Shetty
     [not found]   ` <CGME20240520102830epcas5p27274901f3d0c2738c515709890b1dec4@epcas5p2.samsung.com>
2024-05-20 10:20     ` [PATCH v20 01/12] block: Introduce queue limits and sysfs for copy-offload support Nitesh Shetty
2024-05-20 14:33       ` Damien Le Moal
2024-05-21  8:15         ` Nitesh Shetty
2024-05-20 22:42       ` Bart Van Assche
2024-05-21 14:25         ` Nitesh Shetty
2024-05-22 17:49           ` Bart Van Assche
2024-05-23  7:05             ` Nitesh Shetty
2024-05-21  6:57       ` Hannes Reinecke
2024-06-01  5:53       ` Christoph Hellwig
2024-06-03  6:43         ` Nitesh Shetty
     [not found]   ` <CGME20240520102842epcas5p4949334c2587a15b8adab2c913daa622f@epcas5p4.samsung.com>
2024-05-20 10:20     ` [PATCH v20 02/12] Add infrastructure for copy offload in block and request layer Nitesh Shetty
2024-05-20 15:00       ` Damien Le Moal
2024-05-21 10:50         ` Nitesh Shetty
2024-05-20 23:00       ` Bart Van Assche
2024-05-21 11:17         ` Nitesh Shetty
2024-05-22 17:58           ` Bart Van Assche
2024-05-21  7:01       ` Hannes Reinecke
2024-05-24  6:54         ` Nitesh Shetty
     [not found]         ` <66503bc7.630a0220.56c85.8b9dSMTPIN_ADDED_BROKEN@mx.google.com>
2024-05-24 13:52           ` Bart Van Assche
2024-05-27  8:27             ` Nitesh Shetty
2024-05-28 14:07         ` Bart Van Assche
2024-05-22 18:05       ` Bart Van Assche
2024-05-23 11:34         ` Nitesh Shetty
2024-05-24 20:33       ` Bart Van Assche
2024-05-29  6:17         ` Nitesh Shetty
2024-05-29  7:48           ` Damien Le Moal
2024-05-29 22:41             ` Bart Van Assche
2024-05-30  7:16               ` Nitesh Shetty
     [not found]               ` <665850bd.050a0220.a5e6b.5b72SMTPIN_ADDED_BROKEN@mx.google.com>
2024-05-30 17:11                 ` Bart Van Assche
2024-05-31 10:17                   ` Nitesh Shetty
     [not found]                   ` <6659b691.630a0220.90195.d0ebSMTPIN_ADDED_BROKEN@mx.google.com>
2024-05-31 23:45                     ` Bart Van Assche
2024-06-01  5:59                   ` Christoph Hellwig
2024-06-03 17:12                     ` Bart Van Assche
2024-06-04  4:40                       ` Christoph Hellwig
2024-06-04 11:44                         ` Bart Van Assche
2024-06-05  8:20                           ` Christoph Hellwig
     [not found]                             ` <CGME20240624105121epcas5p3a5a8c73bd5ef19c02e922e5829a4dff0@epcas5p3.samsung.com>
2024-06-24 10:44                               ` Nitesh Shetty
     [not found]                               ` <6679526f.170a0220.9ffd.aefaSMTPIN_ADDED_BROKEN@mx.google.com>
2024-06-24 16:25                                 ` Bart Van Assche
2024-06-24 21:55                                   ` Damien Le Moal
2024-06-25 18:18                                     ` Bart Van Assche
2024-06-25 21:18                                       ` Damien Le Moal
2024-06-26  5:22                                         ` Christoph Hellwig
2024-06-28 13:53                                           ` Bart Van Assche
     [not found]                               ` <66795280.630a0220.f3ccd.b80cSMTPIN_ADDED_BROKEN@mx.google.com>
2024-06-24 22:58                                 ` Keith Busch
     [not found]                           ` <CGME20240606072827epcas5p285de8d4f3b0f6d3a87f8341414336b42@epcas5p2.samsung.com>
2024-06-06  7:28                             ` Nitesh Shetty
     [not found]                             ` <66618886.630a0220.4d4fc.1c9cSMTPIN_ADDED_BROKEN@mx.google.com>
2024-06-06 16:44                               ` Bart Van Assche
2024-06-01  5:57             ` Christoph Hellwig
     [not found]   ` <CGME20240520102853epcas5p42d635d6712b8876ea22a45d730cb1378@epcas5p4.samsung.com>
2024-05-20 10:20     ` [PATCH v20 03/12] block: add copy offload support Nitesh Shetty
2024-06-01  6:16       ` Christoph Hellwig
2024-06-04 10:50         ` Nitesh Shetty
     [not found]   ` <CGME20240520102906epcas5p15b5a0b3c8edd0bf3073030a792a328bb@epcas5p1.samsung.com>
2024-05-20 10:20     ` [PATCH v20 04/12] block: add emulation for copy Nitesh Shetty
2024-05-21  7:06       ` Hannes Reinecke
2024-05-21 11:29         ` Nitesh Shetty
2024-06-01  6:18       ` Christoph Hellwig
     [not found]   ` <CGME20240520102917epcas5p1bda532309b9174bf2702081f6f58daf7@epcas5p1.samsung.com>
2024-05-20 10:20     ` [PATCH v20 05/12] fs/read_write: Enable copy_file_range for block device Nitesh Shetty
2024-05-21  7:07       ` Hannes Reinecke
2024-05-25 23:02       ` Dave Chinner
2024-05-28  5:57         ` Nitesh Shetty
     [not found]   ` <CGME20240520102929epcas5p2f4456f6fa0005d90769615eb2c2bf273@epcas5p2.samsung.com>
2024-05-20 10:20     ` [PATCH v20 06/12] fs, block: copy_file_range for def_blk_ops for direct " Nitesh Shetty
2024-05-25 23:09       ` Dave Chinner
2024-05-27  8:43         ` Nitesh Shetty
     [not found]   ` <CGME20240520102940epcas5p2b5f38ceabe94bed3905fb386a0d65ec7@epcas5p2.samsung.com>
2024-05-20 10:20     ` [PATCH v20 07/12] nvme: add copy offload support Nitesh Shetty
2024-06-01  6:22       ` Christoph Hellwig
2024-06-03 11:43         ` Nitesh Shetty
     [not found]   ` <CGME20240520102952epcas5p18716d203d1810c38397e7fcc9a26922a@epcas5p1.samsung.com>
2024-05-20 10:20     ` [PATCH v20 08/12] nvmet: add copy command support for bdev and file ns Nitesh Shetty
     [not found]   ` <CGME20240520103004epcas5p4a18f3f6ba0f218d57b0ab4bb84c6ff18@epcas5p4.samsung.com>
2024-05-20 10:20     ` [PATCH v20 09/12] dm: Add support for copy offload Nitesh Shetty
2024-05-21  7:11       ` Hannes Reinecke
2024-05-21 14:08         ` Nitesh Shetty
2024-05-22  6:22           ` Hannes Reinecke
2024-05-22  7:10             ` Nitesh Shetty
     [not found]   ` <CGME20240520103016epcas5p31b9a0f3637959626d49763609ebda6ef@epcas5p3.samsung.com>
2024-05-20 10:20     ` [PATCH v20 10/12] dm: Enable copy offload for dm-linear target Nitesh Shetty
2024-05-20 23:25       ` Bart Van Assche
2024-05-21 14:48         ` Nitesh Shetty
     [not found]   ` <CGME20240520103027epcas5p4789defe8ab3bff23bd2abcf019689fa2@epcas5p4.samsung.com>
2024-05-20 10:20     ` [PATCH v20 11/12] null: Enable trace capability for null block Nitesh Shetty
2024-05-20 23:27       ` Bart Van Assche
2024-06-01  6:23       ` Christoph Hellwig
2024-06-03 11:04         ` Nitesh Shetty
     [not found]   ` <CGME20240520103039epcas5p4373f7234162a32222ac225b976ae30ce@epcas5p4.samsung.com>
2024-05-20 10:20     ` [PATCH v20 12/12] null_blk: add support for copy offload Nitesh Shetty
2024-05-20 23:42       ` Bart Van Assche
2024-05-21 14:46         ` Nitesh Shetty
2024-05-22 17:52           ` Bart Van Assche
2024-05-23  6:55             ` Nitesh Shetty
2024-05-20 22:54   ` [PATCH v20 00/12] Implement copy offload support Bart Van Assche
2024-06-01  5:47   ` Christoph Hellwig
2024-06-03 10:53     ` Nitesh Shetty
2024-06-06  5:56 [PATCH v20 03/12] block: add " Christoph Hellwig

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).