2020-05-31 16:39:36

by Konstantin Khlebnikov

[permalink] [raw]
Subject: [PATCH] block: really remove REQ_NOWAIT_INLINE

Commit 7b6620d7db56 ("block: remove REQ_NOWAIT_INLINE") removed it,
but some pieces left. Probably something went wrong with git merge.

Signed-off-by: Konstantin Khlebnikov <[email protected]>
---
include/linux/blk_types.h | 7 ++-----
1 file changed, 2 insertions(+), 5 deletions(-)

diff --git a/include/linux/blk_types.h b/include/linux/blk_types.h
index 31eb92876be7..59b2e9bd9bd8 100644
--- a/include/linux/blk_types.h
+++ b/include/linux/blk_types.h
@@ -322,8 +322,7 @@ enum req_flag_bits {
__REQ_PREFLUSH, /* request for cache flush */
__REQ_RAHEAD, /* read ahead, can fail anytime */
__REQ_BACKGROUND, /* background IO */
- __REQ_NOWAIT, /* Don't wait if request will block */
- __REQ_NOWAIT_INLINE, /* Return would-block error inline */
+ __REQ_NOWAIT, /* Don't wait if request will block */
/*
* When a shared kthread needs to issue a bio for a cgroup, doing
* so synchronously can lead to priority inversions as the kthread
@@ -358,7 +357,6 @@ enum req_flag_bits {
#define REQ_RAHEAD (1ULL << __REQ_RAHEAD)
#define REQ_BACKGROUND (1ULL << __REQ_BACKGROUND)
#define REQ_NOWAIT (1ULL << __REQ_NOWAIT)
-#define REQ_NOWAIT_INLINE (1ULL << __REQ_NOWAIT_INLINE)
#define REQ_CGROUP_PUNT (1ULL << __REQ_CGROUP_PUNT)

#define REQ_NOUNMAP (1ULL << __REQ_NOUNMAP)
@@ -452,13 +450,12 @@ static inline int op_stat_group(unsigned int op)

typedef unsigned int blk_qc_t;
#define BLK_QC_T_NONE -1U
-#define BLK_QC_T_EAGAIN -2U
#define BLK_QC_T_SHIFT 16
#define BLK_QC_T_INTERNAL (1U << 31)

static inline bool blk_qc_t_valid(blk_qc_t cookie)
{
- return cookie != BLK_QC_T_NONE && cookie != BLK_QC_T_EAGAIN;
+ return cookie != BLK_QC_T_NONE;
}

static inline unsigned int blk_qc_t_to_queue_num(blk_qc_t cookie)


2020-05-31 16:42:26

by Konstantin Khlebnikov

[permalink] [raw]
Subject: Re: [PATCH] block: really remove REQ_NOWAIT_INLINE

On 31/05/2020 19.33, Konstantin Khlebnikov wrote:
> Commit 7b6620d7db56 ("block: remove REQ_NOWAIT_INLINE") removed it,
> but some pieces left. Probably something went wrong with git merge.

Nevermind. As I see in block/for-next, Christoph have removed REQ_NOWAIT_INLINE.

But BLK_QC_T_EAGAIN is still here though.

>
> Signed-off-by: Konstantin Khlebnikov <[email protected]>
> ---
> include/linux/blk_types.h | 7 ++-----
> 1 file changed, 2 insertions(+), 5 deletions(-)
>
> diff --git a/include/linux/blk_types.h b/include/linux/blk_types.h
> index 31eb92876be7..59b2e9bd9bd8 100644
> --- a/include/linux/blk_types.h
> +++ b/include/linux/blk_types.h
> @@ -322,8 +322,7 @@ enum req_flag_bits {
> __REQ_PREFLUSH, /* request for cache flush */
> __REQ_RAHEAD, /* read ahead, can fail anytime */
> __REQ_BACKGROUND, /* background IO */
> - __REQ_NOWAIT, /* Don't wait if request will block */
> - __REQ_NOWAIT_INLINE, /* Return would-block error inline */
> + __REQ_NOWAIT, /* Don't wait if request will block */
> /*
> * When a shared kthread needs to issue a bio for a cgroup, doing
> * so synchronously can lead to priority inversions as the kthread
> @@ -358,7 +357,6 @@ enum req_flag_bits {
> #define REQ_RAHEAD (1ULL << __REQ_RAHEAD)
> #define REQ_BACKGROUND (1ULL << __REQ_BACKGROUND)
> #define REQ_NOWAIT (1ULL << __REQ_NOWAIT)
> -#define REQ_NOWAIT_INLINE (1ULL << __REQ_NOWAIT_INLINE)
> #define REQ_CGROUP_PUNT (1ULL << __REQ_CGROUP_PUNT)
>
> #define REQ_NOUNMAP (1ULL << __REQ_NOUNMAP)
> @@ -452,13 +450,12 @@ static inline int op_stat_group(unsigned int op)
>
> typedef unsigned int blk_qc_t;
> #define BLK_QC_T_NONE -1U
> -#define BLK_QC_T_EAGAIN -2U
> #define BLK_QC_T_SHIFT 16
> #define BLK_QC_T_INTERNAL (1U << 31)
>
> static inline bool blk_qc_t_valid(blk_qc_t cookie)
> {
> - return cookie != BLK_QC_T_NONE && cookie != BLK_QC_T_EAGAIN;
> + return cookie != BLK_QC_T_NONE;
> }
>
> static inline unsigned int blk_qc_t_to_queue_num(blk_qc_t cookie)
>