From: Dave Chinner <david@fromorbit.com>
To: Kanchan Joshi <joshi.k@samsung.com>
Cc: linux-kernel@vger.kernel.org, linux-block@vger.kernel.org,
linux-nvme@lists.infradead.org, linux-fsdevel@vger.kernel.org,
linux-ext4@vger.kernel.org, axboe@fb.com, prakash.v@samsung.com,
anshul@samsung.com, joshiiitr@gmail.com
Subject: Re: [PATCH v3 1/7] block: extend stream count for in-kernel use
Date: Mon, 1 Apr 2019 16:02:55 +1100 [thread overview]
Message-ID: <20190401050255.GP23020@dastard> (raw)
In-Reply-To: <1553846032-4451-2-git-send-email-joshi.k@samsung.com>
On Fri, Mar 29, 2019 at 01:23:46PM +0530, Kanchan Joshi wrote:
> This patch bumps up stream count to suppor in-kernel hints. It also
> adds 'streamid' member in 'request' and declares new API for driver
> to register stream-info with block layer.
>
> Signed-off-by: Kanchan Joshi <joshi.k@samsung.com>
> ---
> include/linux/blkdev.h | 9 +++++++--
> 1 file changed, 7 insertions(+), 2 deletions(-)
>
> diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h
> index 338604d..4088e21 100644
> --- a/include/linux/blkdev.h
> +++ b/include/linux/blkdev.h
> @@ -214,6 +214,7 @@ struct request {
> #endif
>
> unsigned short write_hint;
> + unsigned short streamid;
> unsigned short ioprio;
>
> void *special; /* opaque pointer available for LLD use */
> @@ -341,6 +342,8 @@ struct queue_limits {
> unsigned char misaligned;
> unsigned char discard_misaligned;
> unsigned char raid_partial_stripes_expensive;
> +
> + unsigned short nr_streams;
> enum blk_zoned_model zoned;
> };
>
> @@ -567,8 +570,9 @@ struct request_queue {
> size_t cmd_size;
>
> struct work_struct release_work;
> -
> -#define BLK_MAX_WRITE_HINTS 5
> +#define BLK_MAX_USER_HINTS (WRITE_LIFE_KERN_MIN - 2)
WRITE_LIFE_KERN_MIN is undefined.
-Dave.
> +#define BLK_MAX_KERN_HINTS 4
> +#define BLK_MAX_WRITE_HINTS (1 + BLK_MAX_USER_HINTS + BLK_MAX_KERN_HINTS)
> u64 write_hints[BLK_MAX_WRITE_HINTS];
> };
>
> @@ -1071,6 +1075,7 @@ extern void blk_queue_update_dma_alignment(struct request_queue *, int);
> extern void blk_queue_rq_timeout(struct request_queue *, unsigned int);
> extern void blk_queue_flush_queueable(struct request_queue *q, bool queueable);
> extern void blk_queue_write_cache(struct request_queue *q, bool enabled, bool fua);
> +extern void blk_queue_stream_limits(struct request_queue *, unsigned short);
>
> /*
> * Number of physical segments as sent to the device.
> --
> 2.7.4
>
>
--
Dave Chinner
david@fromorbit.com
WARNING: multiple messages have this Message-ID (diff)
From: david@fromorbit.com (Dave Chinner)
Subject: [PATCH v3 1/7] block: extend stream count for in-kernel use
Date: Mon, 1 Apr 2019 16:02:55 +1100 [thread overview]
Message-ID: <20190401050255.GP23020@dastard> (raw)
In-Reply-To: <1553846032-4451-2-git-send-email-joshi.k@samsung.com>
On Fri, Mar 29, 2019@01:23:46PM +0530, Kanchan Joshi wrote:
> This patch bumps up stream count to suppor in-kernel hints. It also
> adds 'streamid' member in 'request' and declares new API for driver
> to register stream-info with block layer.
>
> Signed-off-by: Kanchan Joshi <joshi.k at samsung.com>
> ---
> include/linux/blkdev.h | 9 +++++++--
> 1 file changed, 7 insertions(+), 2 deletions(-)
>
> diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h
> index 338604d..4088e21 100644
> --- a/include/linux/blkdev.h
> +++ b/include/linux/blkdev.h
> @@ -214,6 +214,7 @@ struct request {
> #endif
>
> unsigned short write_hint;
> + unsigned short streamid;
> unsigned short ioprio;
>
> void *special; /* opaque pointer available for LLD use */
> @@ -341,6 +342,8 @@ struct queue_limits {
> unsigned char misaligned;
> unsigned char discard_misaligned;
> unsigned char raid_partial_stripes_expensive;
> +
> + unsigned short nr_streams;
> enum blk_zoned_model zoned;
> };
>
> @@ -567,8 +570,9 @@ struct request_queue {
> size_t cmd_size;
>
> struct work_struct release_work;
> -
> -#define BLK_MAX_WRITE_HINTS 5
> +#define BLK_MAX_USER_HINTS (WRITE_LIFE_KERN_MIN - 2)
WRITE_LIFE_KERN_MIN is undefined.
-Dave.
> +#define BLK_MAX_KERN_HINTS 4
> +#define BLK_MAX_WRITE_HINTS (1 + BLK_MAX_USER_HINTS + BLK_MAX_KERN_HINTS)
> u64 write_hints[BLK_MAX_WRITE_HINTS];
> };
>
> @@ -1071,6 +1075,7 @@ extern void blk_queue_update_dma_alignment(struct request_queue *, int);
> extern void blk_queue_rq_timeout(struct request_queue *, unsigned int);
> extern void blk_queue_flush_queueable(struct request_queue *q, bool queueable);
> extern void blk_queue_write_cache(struct request_queue *q, bool enabled, bool fua);
> +extern void blk_queue_stream_limits(struct request_queue *, unsigned short);
>
> /*
> * Number of physical segments as sent to the device.
> --
> 2.7.4
>
>
--
Dave Chinner
david at fromorbit.com
next prev parent reply other threads:[~2019-04-01 5:03 UTC|newest]
Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <CGME20190329075737epcas1p4f32cad26279c1146982a6c91b3378eab@epcas1p4.samsung.com>
2019-03-29 7:53 ` [PATCH v3 0/7] Extend write-hint for in-kernel use Kanchan Joshi
2019-03-29 7:53 ` Kanchan Joshi
2019-03-29 7:53 ` [PATCH v3 1/7] block: extend stream count " Kanchan Joshi
2019-03-29 7:53 ` Kanchan Joshi
2019-03-30 17:48 ` Andreas Dilger
2019-03-30 17:48 ` Andreas Dilger
2019-04-01 5:02 ` Dave Chinner [this message]
2019-04-01 5:02 ` Dave Chinner
2019-03-29 7:53 ` [PATCH v3 2/7] block: introduce API to register stream information with block layer Kanchan Joshi
2019-03-29 7:53 ` Kanchan Joshi
2019-03-29 7:53 ` [PATCH v3 3/7] block: add write-hint to stream-id conversion Kanchan Joshi
2019-03-29 7:53 ` Kanchan Joshi
2019-04-01 5:08 ` Dave Chinner
2019-04-01 5:08 ` Dave Chinner
2019-04-02 9:20 ` Jan Kara
2019-04-02 9:20 ` Jan Kara
2019-04-02 20:35 ` Dave Chinner
2019-04-02 20:35 ` Dave Chinner
2019-04-03 9:36 ` Jan Kara
2019-04-03 9:36 ` Jan Kara
2019-04-03 14:47 ` kanchan
2019-04-03 14:47 ` kanchan
2019-03-29 7:53 ` [PATCH v3 4/7] nvme: register stream info with block layer Kanchan Joshi
2019-03-29 7:53 ` Kanchan Joshi
2019-03-29 16:58 ` Heitke, Kenneth
2019-03-29 16:58 ` Heitke, Kenneth
2019-03-29 7:53 ` [PATCH v3 5/7] fs: introduce APIs to enable sending write-hint with buffer-head Kanchan Joshi
2019-03-29 7:53 ` Kanchan Joshi
2019-03-29 7:53 ` [PATCH v3 6/7] fs: introduce write-hint start point for in-kernel hints Kanchan Joshi
2019-03-29 7:53 ` Kanchan Joshi
2019-04-01 5:12 ` Dave Chinner
2019-04-01 5:12 ` Dave Chinner
2019-04-03 14:30 ` kanchan
2019-04-03 14:30 ` kanchan
2019-03-29 7:53 ` [PATCH v3 7/7] fs/ext4,jbd2: add support for passing write-hint with journal Kanchan Joshi
2019-03-29 7:53 ` Kanchan Joshi
2019-03-30 17:49 ` Andreas Dilger
2019-03-30 17:49 ` Andreas Dilger
2019-04-02 9:07 ` Jan Kara
2019-04-02 9:07 ` Jan Kara
2019-04-03 2:57 ` Martin K. Petersen
2019-04-03 2:57 ` [PATCH v3 7/7] fs/ext4, jbd2: " Martin K. Petersen
2019-04-03 13:42 ` [PATCH v3 7/7] fs/ext4,jbd2: " kanchan
2019-04-03 13:42 ` kanchan
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=20190401050255.GP23020@dastard \
--to=david@fromorbit.com \
--cc=anshul@samsung.com \
--cc=axboe@fb.com \
--cc=joshi.k@samsung.com \
--cc=joshiiitr@gmail.com \
--cc=linux-block@vger.kernel.org \
--cc=linux-ext4@vger.kernel.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-nvme@lists.infradead.org \
--cc=prakash.v@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.