From: Mike Christie
The following patches separate the operation (write, read, discard,
etc) from the rq_flag_bits flags. This patch adds definitions for
request/bio operations, adds fields to the request/bio to set them, and
some temporary compat code so the kernel/modules can use either one. In
From: Mike Christie
This has submit_bh users pass in the operation and flags separately,
so submit_bh_wbc can setup bio->bi_op and bio-bi_rw on the bio that
is submitted.
Signed-off-by: Mike Christie
Reviewed-by: Christoph Hellwig
Reviewed-by: Hannes Reinecke
---
drivers/md/bitmap.c
From: Mike Christie
This patch has gfs2 use bio->bi_op for REQ_OPs and rq_flag_bits to bio->bi_rw.
Signed-off-by: Mike Christie
Reviewed-by: Christoph Hellwig
Reviewed-by: Hannes Reinecke
---
fs/gfs2/log.c| 8
fs/gfs2/lops.c | 12 +++-
fs/gfs2/lops.h |
From: Mike Christie
This has ll_rw_block users pass in the operation and flags separately,
so ll_rw_block can setup bio->bi_op and bio-bi_rw on the bio that
is submitted.
v2:
1. Fix for kbuild error in ll_rw_block comments.
Signed-off-by: Mike Christie
Reviewed-by: Christoph Hellwig
Reviewed
From: Mike Christie
This patch has nilfs use bio->bi_op for REQ_OPs and rq_flag_bits
to bio->bi_rw.
Signed-off-by: Mike Christie
Reviewed-by: Christoph Hellwig
Reviewed-by: Hannes Reinecke
---
fs/nilfs2/segbuf.c | 18 ++
1 file changed, 10 insertions(+), 8 deletions(-)
diff
From: Mike Christie
This adds a REQ_OP_FLUSH operation that is sent to request_fn
based drivers by the block layer's flush code, instead of
sending requests with the request->cmd_flags REQ_FLUSH bit set.
For the following 3 flush related patches, I have not tested
every driver. I have only teste
From: Mike Christie
This patch modifies the blk mq request creation code to use
separate variables for the operation and flags, because in the
the next patches the struct request users will be converted like
was done for bios. request->op will be used for the REQ_OP and
request->cmd_flags for the
From: Mike Christie
This patch has xfs use bio->bi_op for REQ_OPs and rq_flag_bits to bio->bi_rw.
Signed-off-by: Mike Christie
Reviewed-by: Christoph Hellwig
Reviewed-by: Hannes Reinecke
Acked-by: Dave Chinner
---
fs/xfs/xfs_aops.c | 3 +--
fs/xfs/xfs_buf.c | 27 +++--
From: Mike Christie
This patch converts the elevator code to use separate variables
for the operation and flags, and to check request->op for the REQ_OP.
Signed-off-by: Mike Christie
Reviewed-by: Christoph Hellwig
Reviewed-by: Hannes Reinecke
---
block/blk-core.c | 2 +-
block/cfq-io
From: Mike Christie
We no longer pass in a bitmap of rq_flag_bits bits to __btrfs_map_block.
It will always be a REQ_OP, or the btrfs specific REQ_GET_READ_MIRRORS,
so this drops the bit tests.
Signed-off-by: Mike Christie
Reviewed-by: Christoph Hellwig
Reviewed-by: Hannes Reinecke
---
fs/bt
From: Mike Christie
This patch has f2fs use bio->bi_op for REQ_OPs and rq_flag_bits to bio->bi_rw.
Signed-off-by: Mike Christie
Reviewed-by: Christoph Hellwig
Reviewed-by: Hannes Reinecke
---
fs/f2fs/checkpoint.c| 10 ++
fs/f2fs/data.c | 33 --
From: Mike Christie
This patch converts the is_sync helpers to use separate variables
for the operation and flags.
Signed-off-by: Mike Christie
Reviewed-by: Christoph Hellwig
Reviewed-by: Hannes Reinecke
---
block/blk-core.c | 6 +++---
block/blk-mq.c | 8
block/cfq-io
From: Mike Christie
This patch has the pm code use bio->bi_op for REQ_OPs and rq_flag_bits
to bio->bi_rw.
Signed-off-by: Mike Christie
Reviewed-by: Christoph Hellwig
Reviewed-by: Hannes Reinecke
---
kernel/power/swap.c | 31 +++
1 file changed, 19 insertions(+), 1
On 15/04/16 12:40, mchri...@redhat.com wrote:
> From: Mike Christie
>
> The last patch added a REQ_OP_FLUSH for request_fn drivers
> and the next patch renames REQ_FLUSH to REQ_PREFLUSH which
> will be used by file systems and make_request_fn drivers so
> they can send a write/flush combo.
>
> T
From: Mike Christie
This patch has btrfs's submit_one_bio callers set the bio->bi_op to a
REQ_OP and the bi_rw to rq_flag_bits.
The next patches will continue to convert btrfs,
so submit_bio_hook and merge_bio_hook
related code will be modified to take only the bio. I did
not do it in this patch
From: Mike Christie
This patch has the dio code set the bio bi_op to a REQ_OP and bio op_flags
to rq_flag_bits.
It also begins to convert btrfs's dio_submit_t because of the dio submit_io
callout use. In the btrfs_submit_direct change, I OR'd the op and flag back
together. It is only temporary.
From: Mike Christie
This patch has the block drivers use the request->op for REQ_OP
operations and cmd_flags for rq_flag_bits.
Signed-off-by: Mike Christie
Reviewed-by: Christoph Hellwig
Reviewed-by: Hannes Reinecke
---
drivers/block/loop.c | 6 +++---
drivers/block/mtip32xx/mt
From: Mike Christie
The bio users should now always be setting up the bio->bi_op. This patch
has us copy that to the struct request op field.
Signed-off-by: Mike Christie
Reviewed-by: Christoph Hellwig
Reviewed-by: Hannes Reinecke
---
block/blk-core.c | 2 ++
1 file changed, 2 insertions(+)
From: Mike Christie
This patch has ocfs2 use bio->bi_op for REQ_OPs and rq_flag_bits
to bio->bi_rw.
Signed-off-by: Mike Christie
Reviewed-by: Christoph Hellwig
Reviewed-by: Hannes Reinecke
---
fs/ocfs2/cluster/heartbeat.c | 11 +++
1 file changed, 7 insertions(+), 4 deletions(-)
dif
From: Mike Christie
The bio and request operation and flags are going to be separate definitions,
so we cannot pass them in as a bitmap. This patch converts the blkg_rwstat
code and its caller, cfq, to pass in the values separately.
Signed-off-by: Mike Christie
Reviewed-by: Christoph Hellwig
R
From: Mike Christie
bi_op only needed to be a int for temp compat reasons, so
this patch shrinks it to u8.
There is no need for bi_rw to be so large now, so that is
reduced to a unsigned int and bi_ioprio is just put in
its own field.
Signed-off-by: Mike Christie
Reviewed-by: Christoph Hellwig
From: Mike Christie
It looks like dm stats cares about the data direction
(READ vs WRITE) and does not need the bio/request flags.
Commands like REQ_FLUSH, REQ_DISCARD and REQ_WRITE_SAME
are currently always set with REQ_WRITE, so the extra check for
REQ_DISCARD in dm_stats_account_io is not need
From: Mike Christie
To avoid confusion between REQ_OP_FLUSH, which is handled by
request_fn drivers, and upper layers requesting the block layer
perform a flush sequence along with possibly a WRITE, this patch
renames REQ_FLUSH to REQ_PREFLUSH.
Signed-off-by: Mike Christie
Reviewed-by: Christop
From: Mike Christie
This patch has bcache use bio->bi_op for REQ_OPs and rq_flag_bits
to bio->bi_rw.
Signed-off-by: Mike Christie
Reviewed-by: Christoph Hellwig
Reviewed-by: Hannes Reinecke
---
drivers/md/bcache/btree.c | 2 ++
drivers/md/bcache/debug.c | 2 ++
drivers/md/bcache/io
From: Mike Christie
This patch has the xen block driver use bio->bi_op for REQ_OPs and rq_flag_bits
to bio->bi_rw.
Signed-off-by: Mike Christie
Reviewed-by: Christoph Hellwig
Reviewed-by: Hannes Reinecke
---
drivers/block/xen-blkback/blkback.c | 29 +
1 file chang
From: Mike Christie
This patch has btrfs use the bio bi_op for REQ_OP and bi_rw for rq_flag_bits.
v5:
- Misset bi_rw to REQ_OP_WRITE in finish_parity_scrub
Signed-off-by: Mike Christie
Reviewed-by: Christoph Hellwig
Reviewed-by: Hannes Reinecke
---
fs/btrfs/check-integrity.c | 19 +-
From: Mike Christie
This patch prepares *_get_request/*_put_request and freed_request,
to use separate variables for the operation and flags. In the
next patches the struct request users will be converted like
was done for bios. request->op will be used for the REQ_OP and
request->cmd_flags for t
From: Mike Christie
The last patch added a REQ_OP_FLUSH for request_fn drivers
and the next patch renames REQ_FLUSH to REQ_PREFLUSH which
will be used by file systems and make_request_fn drivers so
they can send a write/flush combo.
This patch drops xen's use of REQ_FLUSH to track if it supports
From: Mike Christie
We no longer use the bio->bi_rw and request->cmd_flags field for REQ_OPs:
REQ_WRITE, REQ_DISCARD, REQ_WRITE_SAME, so this patch stops checking
for them in bi_rw/cmd_flags and also removes the related compat code.
v2:
1. Remove compat code in __get_request.
Signed-off-by: Mi
From: Mike Christie
This patch converts the simple bi_rw use cases in the block,
drivers, mm and fs code to set the bio->bi_op to a REQ_OP.
These should be simple one liner cases, so I just did them
in one patch. The next patches handle the more complicated
cases in a module per patch.
v5:
1. A
On 04/13/2016 09:35 PM, mchri...@redhat.com wrote:
> The following patches begin to cleanup the request->cmd_flags and
> bio->bi_rw mess. We currently use cmd_flags to specify the operation,
> attributes and state of the request. For bi_rw we use it for similar
> info and also the priority but then
From: Mike Christie
This patch converts the block layer merging code to use separate variables
for the operation and flags, and to check request->op for the REQ_OP.
Signed-off-by: Mike Christie
Reviewed-by: Christoph Hellwig
Reviewed-by: Hannes Reinecke
---
block/blk-core.c | 2 +-
bl
From: Mike Christie
The block layer will set the correct READ/WRITE operation flags/fields
when creating a request, so there is not need for drivers to set the
REQ_WRITE flag.
Signed-off-by: Mike Christie
Reviewed-by: Christoph Hellwig
Reviewed-by: Hannes Reinecke
---
drivers/ide/ide-cd_ioct
From: Mike Christie
This patch has the target modules use bio->bi_op for REQ_OPs and
rq_flag_bits to bio->bi_rw.
Signed-off-by: Mike Christie
Reviewed-by: Christoph Hellwig
Reviewed-by: Hannes Reinecke
Acked-by: Nicholas Bellinger
---
drivers/target/target_core_iblock.c | 30 +++
From: Mike Christie
The bio and request structs now store the operation in
bio->bi_op/request->op. This patch has blktrace use that
field instead of bi_rw/cmd_flags.
Signed-off-by: Mike Christie
Reviewed-by: Christoph Hellwig
Reviewed-by: Hannes Reinecke
---
include/linux/blktrace_api.h |
From: Mike Christie
This patch has mpage.c use bio->bi_op for REQ_OPs and rq_flag_bits
to bio->bi_rw.
Signed-off-by: Mike Christie
Reviewed-by: Christoph Hellwig
Reviewed-by: Hannes Reinecke
---
fs/mpage.c | 41 +
1 file changed, 21 insertions(+), 20 d
From: Mike Christie
This patch has md use bio->bi_op for REQ_OPs and rq_flag_bits
to bio->bi_rw.
Signed-off-by: Mike Christie
Reviewed-by: Christoph Hellwig
Reviewed-by: Hannes Reinecke
---
drivers/md/bitmap.c | 2 +-
drivers/md/dm-raid.c | 5 +++--
drivers/md/md.c | 11 +
From: Mike Christie
This patch has dm use bio->bi_op for REQ_OPs and rq_flag_bits
to bio->bi_rw.
Signed-off-by: Mike Christie
Reviewed-by: Christoph Hellwig
Reviewed-by: Hannes Reinecke
---
drivers/md/dm-bufio.c | 8 +++---
drivers/md/dm-crypt.c | 1 +
drivers/md/dm-io.
From: Mike Christie
This patch has drbd use bio->bi_op for REQ_OPs and rq_flag_bits
to bio->bi_rw.
Lars and Philip, I might have split this patch up a little weird.
The block layer has compat so you can set either bi_rw or bi_op.
This patch handles setting up the bio in drbd. I then converted
al
From: Mike Christie
This patch has hfsplus use bio->bi_op for REQ_OPs and rq_flag_bits
to bio->bi_rw.
Signed-off-by: Mike Christie
Reviewed-by: Christoph Hellwig
Reviewed-by: Hannes Reinecke
---
fs/hfsplus/hfsplus_fs.h | 2 +-
fs/hfsplus/part_tbl.c | 5 +++--
fs/hfsplus/super.c | 6
point, we abused them so much we just made cmd_flags
64 bits, so we could add more.
The following patches seperate the operation (read, write discard,
flush, etc) from cmd_flags/bi_rw.
This patchset was made against linux-next from today April 15
(git tag next-20160415).
I put a git tree here:
From: Mike Christie
This has callers of submit_bio/submit_bio_wait set the bio->bi_rw
instead of passing it in. This makes that use the same as
generic_make_request and how we set the other bio fields.
v5:
1. Missed crypto fs submit_bio_wait call.
v2:
1. Set bi_rw instead of ORing it. For clon
From: Mike Christie
The request->op field is now always setup up with a REQ_OP.
This patch has the rq_data_dir helper convert the operation
to a WRITE or READ direction based on that.
Signed-off-by: Mike Christie
Reviewed-by: Christoph Hellwig
Reviewed-by: Hannes Reinecke
---
include/linux/b
From: Mike Christie
The bio bi_op and bi_rw is now setup, so there is no need
to pass around the rq_flag_bits bits too. btrfs users should should
access the bio.
v2:
1. Fix merge_bio issue where instead of removing rw/op argument
I passed it in again to the merge_bio related functions.
Signed-
From: Mike Christie
We no longer use REQ_WRITE. REQ_WRITE_SAME and REQ_DISCARD,
so this patch removes them.
Signed-off-by: Mike Christie
Reviewed-by: Christoph Hellwig
Reviewed-by: Hannes Reinecke
---
include/linux/blk_types.h | 21 ++---
include/linux/fs.h | 21 ++
45 matches
Mail list logo