From: Christoph Hellwig <hch@lst.de>
To: Anuj Gupta <anuj20.g@samsung.com>
Cc: Christoph Hellwig <hch@lst.de>,
axboe@kernel.dk, kbusch@kernel.org, martin.petersen@oracle.com,
asml.silence@gmail.com, anuj1072538@gmail.com, krisman@suse.de,
io-uring@vger.kernel.org, linux-nvme@lists.infradead.org,
linux-block@vger.kernel.org, gost.dev@samsung.com,
linux-scsi@vger.kernel.org, vishak.g@samsung.com,
Kanchan Joshi <joshi.k@samsung.com>
Subject: Re: [PATCH v4 07/11] io_uring/rw: add support to send meta along with read/write
Date: Tue, 22 Oct 2024 08:02:33 +0200 [thread overview]
Message-ID: <20241022060233.GA10327@lst.de> (raw)
In-Reply-To: <20241021053110.GA2720@green245>
On Mon, Oct 21, 2024 at 11:01:10AM +0530, Anuj Gupta wrote:
> > What is the meta_type for? To distintinguish PI from non-PI metadata?
>
> meta_type field is kept so that meta_types beyond integrity can also
> be supported in future. Pavel suggested this to Kanchan when this was
> discussed in LSF/MM.
>
> > Why doesn't this support non-PI metadata?
>
> It supports that. We have tested that (pi_type = 0 case).
What other metadata except for PI and plain non-integrity data
do you plan to support? This seems like a weird field. In doubt
just leave reserved space that is checked for 0 instead of adding
an encondig that doesn't make much sense. If we actually do end
up with a metadata scheme we can't encode into the pi_type we can
still use that reserved space.
>
> > Also PI or TO_PI might be
> > a better name than the rather generic integrity. (but I'll defer to
> > Martin if he has any good arguments for naming here).
>
> Open to a different/better name.
metadata?
> > > + /* Exclude meta IO as we don't support partial completion for that */
> > > return req->flags & REQ_F_ISREG ||
> > > - S_ISBLK(file_inode(req->file)->i_mode);
> > > + S_ISBLK(file_inode(req->file)->i_mode) ||
> > > + !(rw->kiocb.ki_flags & IOCB_HAS_METADATA);
> > > }
> >
> > What partial ocmpletions aren't supported? Note that this would
> > trigger easily as right now metadata is only added for block devices
> > anyway.
>
> It seems that this scenario is less likely to happen. The plumbing
> seemed a bit non trivial. I have the plan to look at it, once the
> initial version of this series goes in.
I still don't understand what this is trying to do, especially as
it is dead code with the checks above.
> >
> > > + if (unlikely(kiocb->ki_flags & IOCB_HAS_METADATA)) {
> >
> > For a workload using metadata this is everything but unlikely. Is
> > there a specific reason you're trying to override the existing
> > branch predictor here (although on at least x86_64 gcc these kinds
> > of unlikely calls tend to be no-ops anyway).
>
> The branch predictions were added to make it a bit friendly for
> non-metadata read/write case.
Throwing in these hints unless you have numbers justifying them is not
a good idea.
next prev parent reply other threads:[~2024-10-22 6:02 UTC|newest]
Thread overview: 48+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <CGME20241016113705epcas5p1edc284b347de99bc34802b0b0c5e1b27@epcas5p1.samsung.com>
2024-10-16 11:29 ` [PATCH v4 00/11] Read/Write with meta/integrity Anuj Gupta
2024-10-16 11:29 ` [PATCH v4 01/11] block: define set of integrity flags to be inherited by cloned bip Anuj Gupta
2024-10-16 18:03 ` Keith Busch
2024-10-16 11:29 ` [PATCH v4 02/11] block: copy back bounce buffer to user-space correctly in case of split Anuj Gupta
2024-10-16 18:04 ` Keith Busch
2024-10-17 7:53 ` Christoph Hellwig
2024-10-16 11:29 ` [PATCH v4 03/11] block: modify bio_integrity_map_user to accept iov_iter as argument Anuj Gupta
2024-10-16 11:29 ` [PATCH v4 04/11] block: define meta io descriptor Anuj Gupta
2024-10-16 19:35 ` Keith Busch
2024-10-17 5:49 ` Anuj Gupta
2024-10-17 7:57 ` Christoph Hellwig
2024-10-22 2:11 ` Martin K. Petersen
2024-10-22 6:04 ` Christoph Hellwig
2024-10-23 1:20 ` Martin K. Petersen
2024-10-28 3:46 ` Anuj Gupta
2024-10-16 11:29 ` [PATCH v4 05/11] fs: introduce IOCB_HAS_METADATA for metadata Anuj Gupta
2024-10-17 7:58 ` Christoph Hellwig
2024-10-16 11:29 ` [PATCH v4 06/11] block: add flags for integrity meta Anuj Gupta
2024-10-17 8:00 ` Christoph Hellwig
2024-10-17 10:45 ` Anuj Gupta
2024-10-17 12:01 ` Christoph Hellwig
2024-10-17 12:59 ` Anuj gupta
2024-10-17 14:34 ` Christoph Hellwig
2024-10-16 11:29 ` [PATCH v4 07/11] io_uring/rw: add support to send meta along with read/write Anuj Gupta
2024-10-17 8:10 ` Christoph Hellwig
2024-10-17 22:51 ` Jens Axboe
2024-10-21 5:31 ` Anuj Gupta
2024-10-22 6:02 ` Christoph Hellwig [this message]
2024-10-22 1:50 ` Martin K. Petersen
2024-10-16 11:29 ` [PATCH v4 08/11] block: introduce BIP_CHECK_GUARD/REFTAG/APPTAG bip_flags Anuj Gupta
2024-10-17 8:12 ` Christoph Hellwig
2024-10-17 10:46 ` Anuj Gupta
2024-10-17 14:37 ` Christoph Hellwig
2024-10-16 11:29 ` [PATCH v4 09/11] block: add support to pass user meta buffer Anuj Gupta
2024-10-17 8:15 ` Christoph Hellwig
2024-10-17 8:24 ` Christoph Hellwig
2024-10-16 11:29 ` [PATCH v4 10/11] nvme: add support for passing on the application tag Anuj Gupta
2024-10-17 8:14 ` Christoph Hellwig
2024-10-16 11:29 ` [PATCH v4 11/11] scsi: add support for user-meta interface Anuj Gupta
2024-10-17 8:15 ` Christoph Hellwig
2024-10-17 11:39 ` Anuj Gupta
2024-10-17 14:39 ` Christoph Hellwig
2024-10-18 8:26 ` Anuj Gupta
2024-10-18 9:02 ` Christoph Hellwig
2024-10-22 1:58 ` Martin K. Petersen
2024-10-28 7:36 ` Anuj Gupta
2024-10-29 2:24 ` Martin K. Petersen
2024-10-22 2:04 ` [PATCH v4 00/11] Read/Write with meta/integrity Martin K. Petersen
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=20241022060233.GA10327@lst.de \
--to=hch@lst.de \
--cc=anuj1072538@gmail.com \
--cc=anuj20.g@samsung.com \
--cc=asml.silence@gmail.com \
--cc=axboe@kernel.dk \
--cc=gost.dev@samsung.com \
--cc=io-uring@vger.kernel.org \
--cc=joshi.k@samsung.com \
--cc=kbusch@kernel.org \
--cc=krisman@suse.de \
--cc=linux-block@vger.kernel.org \
--cc=linux-nvme@lists.infradead.org \
--cc=linux-scsi@vger.kernel.org \
--cc=martin.petersen@oracle.com \
--cc=vishak.g@samsung.com \
/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.