* Re: [PATCH] f2fs: provide a way to attach HIPRI for Direct IO [not found] <20211109021336.3796538-1-jaegeuk@kernel.org> @ 2021-11-09 16:39 ` Christoph Hellwig 2021-11-09 16:42 ` Jens Axboe 0 siblings, 1 reply; 4+ messages in thread From: Christoph Hellwig @ 2021-11-09 16:39 UTC (permalink / raw) To: Jaegeuk Kim; +Cc: linux-kernel, linux-f2fs-devel, linux-block, linux-fsdevel On Mon, Nov 08, 2021 at 06:13:36PM -0800, Jaegeuk Kim wrote: > This patch adds a way to attach HIPRI by expanding the existing sysfs's > data_io_flag. User can measure IO performance by enabling it. NAK. This flag should only be used when explicitly specified by the submitter of the I/O. > > Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org> > --- > Documentation/ABI/testing/sysfs-fs-f2fs | 16 +++++++++------- > fs/f2fs/data.c | 2 ++ > fs/f2fs/f2fs.h | 3 +++ > 3 files changed, 14 insertions(+), 7 deletions(-) > > diff --git a/Documentation/ABI/testing/sysfs-fs-f2fs b/Documentation/ABI/testing/sysfs-fs-f2fs > index b268e3e18b4a..ac52e1c6bcbc 100644 > --- a/Documentation/ABI/testing/sysfs-fs-f2fs > +++ b/Documentation/ABI/testing/sysfs-fs-f2fs > @@ -369,13 +369,15 @@ Contact: "Jaegeuk Kim" <jaegeuk@kernel.org> > Description: Give a way to attach REQ_META|FUA to data writes > given temperature-based bits. Now the bits indicate: > > - +-------------------+-------------------+ > - | REQ_META | REQ_FUA | > - +------+------+-----+------+------+-----+ > - | 5 | 4 | 3 | 2 | 1 | 0 | > - +------+------+-----+------+------+-----+ > - | Cold | Warm | Hot | Cold | Warm | Hot | > - +------+------+-----+------+------+-----+ > + +------------+-------------------+-------------------+ > + | HIPRI_DIO | REQ_META | REQ_FUA | > + +------------+------+------+-----+------+------+-----+ > + | 6 | 5 | 4 | 3 | 2 | 1 | 0 | > + +------------+------+------+-----+------+------+-----+ > + | All | Cold | Warm | Hot | Cold | Warm | Hot | > + +------------+------+------+-----+------+------+-----+ > + > + Note that, HIPRI_DIO bit is only for direct IO path. > > What: /sys/fs/f2fs/<disk>/node_io_flag > Date: June 2020 > diff --git a/fs/f2fs/data.c b/fs/f2fs/data.c > index 9f754aaef558..faa40aca2848 100644 > --- a/fs/f2fs/data.c > +++ b/fs/f2fs/data.c > @@ -3707,6 +3707,8 @@ static ssize_t f2fs_direct_IO(struct kiocb *iocb, struct iov_iter *iter) > if (do_opu) > down_read(&fi->i_gc_rwsem[READ]); > } > + if (sbi->data_io_flag & HIPRI_DIO) > + iocb->ki_flags |= IOCB_HIPRI; > > err = __blockdev_direct_IO(iocb, inode, inode->i_sb->s_bdev, > iter, rw == WRITE ? get_data_block_dio_write : > diff --git a/fs/f2fs/f2fs.h b/fs/f2fs/f2fs.h > index ce9fc9f13000..094f1e8ff82b 100644 > --- a/fs/f2fs/f2fs.h > +++ b/fs/f2fs/f2fs.h > @@ -1557,6 +1557,9 @@ struct decompress_io_ctx { > #define MAX_COMPRESS_LOG_SIZE 8 > #define MAX_COMPRESS_WINDOW_SIZE(log_size) ((PAGE_SIZE) << (log_size)) > > +/* HIPRI for direct IO used in sysfs/data_io_flag */ > +#define HIPRI_DIO (1 << 6) > + > struct f2fs_sb_info { > struct super_block *sb; /* pointer to VFS super block */ > struct proc_dir_entry *s_proc; /* proc entry */ > -- > 2.34.0.rc0.344.g81b53c2807-goog > ---end quoted text--- ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] f2fs: provide a way to attach HIPRI for Direct IO 2021-11-09 16:39 ` [PATCH] f2fs: provide a way to attach HIPRI for Direct IO Christoph Hellwig @ 2021-11-09 16:42 ` Jens Axboe 2021-11-10 19:08 ` Jaegeuk Kim 0 siblings, 1 reply; 4+ messages in thread From: Jens Axboe @ 2021-11-09 16:42 UTC (permalink / raw) To: Christoph Hellwig, Jaegeuk Kim Cc: linux-kernel, linux-f2fs-devel, linux-block, linux-fsdevel On 11/9/21 9:39 AM, Christoph Hellwig wrote: > On Mon, Nov 08, 2021 at 06:13:36PM -0800, Jaegeuk Kim wrote: >> This patch adds a way to attach HIPRI by expanding the existing sysfs's >> data_io_flag. User can measure IO performance by enabling it. > > NAK. This flag should only be used when explicitly specified by > the submitter of the I/O. Yes, this cannot be set in the middle for a multitude of reasons. I wonder if we should add a comment to that effect near the definition of it. -- Jens Axboe ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] f2fs: provide a way to attach HIPRI for Direct IO 2021-11-09 16:42 ` Jens Axboe @ 2021-11-10 19:08 ` Jaegeuk Kim 2021-11-11 0:26 ` Jens Axboe 0 siblings, 1 reply; 4+ messages in thread From: Jaegeuk Kim @ 2021-11-10 19:08 UTC (permalink / raw) To: Jens Axboe Cc: Christoph Hellwig, linux-kernel, linux-f2fs-devel, linux-block, linux-fsdevel On 11/09, Jens Axboe wrote: > On 11/9/21 9:39 AM, Christoph Hellwig wrote: > > On Mon, Nov 08, 2021 at 06:13:36PM -0800, Jaegeuk Kim wrote: > >> This patch adds a way to attach HIPRI by expanding the existing sysfs's > >> data_io_flag. User can measure IO performance by enabling it. > > > > NAK. This flag should only be used when explicitly specified by > > the submitter of the I/O. > > Yes, this cannot be set in the middle for a multitude of reasons. I wonder > if we should add a comment to that effect near the definition of it. Not surprising. I was wondering we can add this for testing purpose only. Btw, is there a reasonable way that filesystem can use IO polling? > > -- > Jens Axboe ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] f2fs: provide a way to attach HIPRI for Direct IO 2021-11-10 19:08 ` Jaegeuk Kim @ 2021-11-11 0:26 ` Jens Axboe 0 siblings, 0 replies; 4+ messages in thread From: Jens Axboe @ 2021-11-11 0:26 UTC (permalink / raw) To: Jaegeuk Kim Cc: Christoph Hellwig, linux-kernel, linux-f2fs-devel, linux-block, linux-fsdevel On 11/10/21 12:08 PM, Jaegeuk Kim wrote: > On 11/09, Jens Axboe wrote: >> On 11/9/21 9:39 AM, Christoph Hellwig wrote: >>> On Mon, Nov 08, 2021 at 06:13:36PM -0800, Jaegeuk Kim wrote: >>>> This patch adds a way to attach HIPRI by expanding the existing sysfs's >>>> data_io_flag. User can measure IO performance by enabling it. >>> >>> NAK. This flag should only be used when explicitly specified by >>> the submitter of the I/O. >> >> Yes, this cannot be set in the middle for a multitude of reasons. I wonder >> if we should add a comment to that effect near the definition of it. > > Not surprising. I was wondering we can add this for testing purpose only. > Btw, is there a reasonable way that filesystem can use IO polling? Whether an IO is polled or not belongs to the issuer of the IO, as it comes with certain obligations like "I will actively poll for the completion of this request", and it incurs certain restrictions in the block layer in terms of whether or not you can ever sleep for requests. You could certainly use in in an fs, but only IFF you are the original issuer of the request, which then also means that you are the one that needs to poll for completion of it. It's not a drive-by "let's set this flag to speed things up" kind of flag, there are a lot more moving parts than that. I don't think it will be useful for you. -- Jens Axboe ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2021-11-11 0:26 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <20211109021336.3796538-1-jaegeuk@kernel.org>
2021-11-09 16:39 ` [PATCH] f2fs: provide a way to attach HIPRI for Direct IO Christoph Hellwig
2021-11-09 16:42 ` Jens Axboe
2021-11-10 19:08 ` Jaegeuk Kim
2021-11-11 0:26 ` Jens Axboe
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).