Re: [dm-devel] [PATCH 04/42] fs: have submit_bh users pass in op and flags separately
On Fri, 15 Apr 2016 05:39:24 -0500, mchri...@redhat.com wrote: > 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 > --- Looks good with regard to nilfs2. Acked-by: Ryusuke Konishi > drivers/md/bitmap.c | 4 ++-- > fs/btrfs/check-integrity.c | 24 ++-- > fs/btrfs/check-integrity.h | 2 +- > fs/btrfs/disk-io.c | 4 ++-- > fs/buffer.c | 54 > +++-- > fs/ext4/balloc.c| 2 +- > fs/ext4/ialloc.c| 2 +- > fs/ext4/inode.c | 2 +- > fs/ext4/mmp.c | 4 ++-- > fs/fat/misc.c | 2 +- > fs/gfs2/bmap.c | 2 +- > fs/gfs2/dir.c | 2 +- > fs/gfs2/meta_io.c | 6 ++--- > fs/jbd2/commit.c| 6 ++--- > fs/jbd2/journal.c | 8 +++ > fs/nilfs2/btnode.c | 6 ++--- > fs/nilfs2/btnode.h | 2 +- > fs/nilfs2/btree.c | 6 +++-- > fs/nilfs2/gcinode.c | 5 +++-- > fs/nilfs2/mdt.c | 11 - > fs/ntfs/aops.c | 6 ++--- > fs/ntfs/compress.c | 2 +- > fs/ntfs/file.c | 2 +- > fs/ntfs/logfile.c | 2 +- > fs/ntfs/mft.c | 4 ++-- > fs/ocfs2/buffer_head_io.c | 8 +++ > fs/reiserfs/inode.c | 4 ++-- > fs/reiserfs/journal.c | 6 ++--- > fs/ufs/util.c | 2 +- > include/linux/buffer_head.h | 9 > 30 files changed, 103 insertions(+), 96 deletions(-) > > diff --git a/drivers/md/bitmap.c b/drivers/md/bitmap.c > index 3fe86b5..8b2e16f 100644 > --- a/drivers/md/bitmap.c > +++ b/drivers/md/bitmap.c > @@ -294,7 +294,7 @@ static void write_page(struct bitmap *bitmap, struct page > *page, int wait) > atomic_inc(&bitmap->pending_writes); > set_buffer_locked(bh); > set_buffer_mapped(bh); > - submit_bh(WRITE | REQ_SYNC, bh); > + submit_bh(REQ_OP_WRITE, REQ_SYNC, bh); > bh = bh->b_this_page; > } > > @@ -389,7 +389,7 @@ static int read_page(struct file *file, unsigned long > index, > atomic_inc(&bitmap->pending_writes); > set_buffer_locked(bh); > set_buffer_mapped(bh); > - submit_bh(READ, bh); > + submit_bh(REQ_OP_READ, 0, bh); > } > block++; > bh = bh->b_this_page; > diff --git a/fs/btrfs/check-integrity.c b/fs/btrfs/check-integrity.c > index 9400acd..f82190f 100644 > --- a/fs/btrfs/check-integrity.c > +++ b/fs/btrfs/check-integrity.c > @@ -2856,12 +2856,12 @@ static struct btrfsic_dev_state > *btrfsic_dev_state_lookup( > return ds; > } > > -int btrfsic_submit_bh(int rw, struct buffer_head *bh) > +int btrfsic_submit_bh(int op, int op_flags, struct buffer_head *bh) > { > struct btrfsic_dev_state *dev_state; > > if (!btrfsic_is_initialized) > - return submit_bh(rw, bh); > + return submit_bh(op, op_flags, bh); > > mutex_lock(&btrfsic_mutex); > /* since btrfsic_submit_bh() might also be called before > @@ -2870,26 +2870,26 @@ int btrfsic_submit_bh(int rw, struct buffer_head *bh) > > /* Only called to write the superblock (incl. FLUSH/FUA) */ > if (NULL != dev_state && > - (rw & WRITE) && bh->b_size > 0) { > + (op == REQ_OP_WRITE) && bh->b_size > 0) { > u64 dev_bytenr; > > dev_bytenr = 4096 * bh->b_blocknr; > if (dev_state->state->print_mask & > BTRFSIC_PRINT_MASK_SUBMIT_BIO_BH) > printk(KERN_INFO > -"submit_bh(rw=0x%x, blocknr=%llu (bytenr %llu)," > -" size=%zu, data=%p, bdev=%p)\n", > -rw, (unsigned long long)bh->b_blocknr, > +"submit_bh(op=0x%x,0x%x, blocknr=%llu " > +"(bytenr %llu), size=%zu, data=%p, bdev=%p)\n", > +op, op_flags, (unsigned long long)bh->b_blocknr, > dev_bytenr, bh->b_size, bh->b_data, bh->b_bdev); > btrfsic_process_written_block(dev_state, dev_bytenr, > &bh->b_data, 1, NULL, > - NULL, bh, rw); > - } else if (NULL != dev_state && (rw & REQ_FLUSH)) { > + NULL, bh, op_flags); > + } else if (NULL != dev_state && (op_flags & REQ_FLUSH)) { > if (dev_state->state->print_mask & > BTRFSIC_PRIN
[PATCH 04/42] fs: have submit_bh users pass in op and flags separately
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 | 4 ++-- fs/btrfs/check-integrity.c | 24 ++-- fs/btrfs/check-integrity.h | 2 +- fs/btrfs/disk-io.c | 4 ++-- fs/buffer.c | 54 +++-- fs/ext4/balloc.c| 2 +- fs/ext4/ialloc.c| 2 +- fs/ext4/inode.c | 2 +- fs/ext4/mmp.c | 4 ++-- fs/fat/misc.c | 2 +- fs/gfs2/bmap.c | 2 +- fs/gfs2/dir.c | 2 +- fs/gfs2/meta_io.c | 6 ++--- fs/jbd2/commit.c| 6 ++--- fs/jbd2/journal.c | 8 +++ fs/nilfs2/btnode.c | 6 ++--- fs/nilfs2/btnode.h | 2 +- fs/nilfs2/btree.c | 6 +++-- fs/nilfs2/gcinode.c | 5 +++-- fs/nilfs2/mdt.c | 11 - fs/ntfs/aops.c | 6 ++--- fs/ntfs/compress.c | 2 +- fs/ntfs/file.c | 2 +- fs/ntfs/logfile.c | 2 +- fs/ntfs/mft.c | 4 ++-- fs/ocfs2/buffer_head_io.c | 8 +++ fs/reiserfs/inode.c | 4 ++-- fs/reiserfs/journal.c | 6 ++--- fs/ufs/util.c | 2 +- include/linux/buffer_head.h | 9 30 files changed, 103 insertions(+), 96 deletions(-) diff --git a/drivers/md/bitmap.c b/drivers/md/bitmap.c index 3fe86b5..8b2e16f 100644 --- a/drivers/md/bitmap.c +++ b/drivers/md/bitmap.c @@ -294,7 +294,7 @@ static void write_page(struct bitmap *bitmap, struct page *page, int wait) atomic_inc(&bitmap->pending_writes); set_buffer_locked(bh); set_buffer_mapped(bh); - submit_bh(WRITE | REQ_SYNC, bh); + submit_bh(REQ_OP_WRITE, REQ_SYNC, bh); bh = bh->b_this_page; } @@ -389,7 +389,7 @@ static int read_page(struct file *file, unsigned long index, atomic_inc(&bitmap->pending_writes); set_buffer_locked(bh); set_buffer_mapped(bh); - submit_bh(READ, bh); + submit_bh(REQ_OP_READ, 0, bh); } block++; bh = bh->b_this_page; diff --git a/fs/btrfs/check-integrity.c b/fs/btrfs/check-integrity.c index 9400acd..f82190f 100644 --- a/fs/btrfs/check-integrity.c +++ b/fs/btrfs/check-integrity.c @@ -2856,12 +2856,12 @@ static struct btrfsic_dev_state *btrfsic_dev_state_lookup( return ds; } -int btrfsic_submit_bh(int rw, struct buffer_head *bh) +int btrfsic_submit_bh(int op, int op_flags, struct buffer_head *bh) { struct btrfsic_dev_state *dev_state; if (!btrfsic_is_initialized) - return submit_bh(rw, bh); + return submit_bh(op, op_flags, bh); mutex_lock(&btrfsic_mutex); /* since btrfsic_submit_bh() might also be called before @@ -2870,26 +2870,26 @@ int btrfsic_submit_bh(int rw, struct buffer_head *bh) /* Only called to write the superblock (incl. FLUSH/FUA) */ if (NULL != dev_state && - (rw & WRITE) && bh->b_size > 0) { + (op == REQ_OP_WRITE) && bh->b_size > 0) { u64 dev_bytenr; dev_bytenr = 4096 * bh->b_blocknr; if (dev_state->state->print_mask & BTRFSIC_PRINT_MASK_SUBMIT_BIO_BH) printk(KERN_INFO - "submit_bh(rw=0x%x, blocknr=%llu (bytenr %llu)," - " size=%zu, data=%p, bdev=%p)\n", - rw, (unsigned long long)bh->b_blocknr, + "submit_bh(op=0x%x,0x%x, blocknr=%llu " + "(bytenr %llu), size=%zu, data=%p, bdev=%p)\n", + op, op_flags, (unsigned long long)bh->b_blocknr, dev_bytenr, bh->b_size, bh->b_data, bh->b_bdev); btrfsic_process_written_block(dev_state, dev_bytenr, &bh->b_data, 1, NULL, - NULL, bh, rw); - } else if (NULL != dev_state && (rw & REQ_FLUSH)) { + NULL, bh, op_flags); + } else if (NULL != dev_state && (op_flags & REQ_FLUSH)) { if (dev_state->state->print_mask & BTRFSIC_PRINT_MASK_SUBMIT_BIO_BH) printk(KERN_INFO - "submit_bh(rw=0x%x FLUSH, bdev=%p)\n", - rw, bh->b_bdev); + "submit_bh(op=0x%x,0x%x FLUSH, bdev=%p)\n", +
[PATCH 04/42] fs: have submit_bh users pass in op and flags separately
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 | 4 ++-- fs/btrfs/check-integrity.c | 24 ++-- fs/btrfs/check-integrity.h | 2 +- fs/btrfs/disk-io.c | 4 ++-- fs/buffer.c | 54 +++-- fs/ext4/balloc.c| 2 +- fs/ext4/ialloc.c| 2 +- fs/ext4/inode.c | 2 +- fs/ext4/mmp.c | 4 ++-- fs/fat/misc.c | 2 +- fs/gfs2/bmap.c | 2 +- fs/gfs2/dir.c | 2 +- fs/gfs2/meta_io.c | 6 ++--- fs/jbd2/commit.c| 6 ++--- fs/jbd2/journal.c | 8 +++ fs/nilfs2/btnode.c | 6 ++--- fs/nilfs2/btnode.h | 2 +- fs/nilfs2/btree.c | 6 +++-- fs/nilfs2/gcinode.c | 5 +++-- fs/nilfs2/mdt.c | 11 - fs/ntfs/aops.c | 6 ++--- fs/ntfs/compress.c | 2 +- fs/ntfs/file.c | 2 +- fs/ntfs/logfile.c | 2 +- fs/ntfs/mft.c | 4 ++-- fs/ocfs2/buffer_head_io.c | 8 +++ fs/reiserfs/inode.c | 4 ++-- fs/reiserfs/journal.c | 6 ++--- fs/ufs/util.c | 2 +- include/linux/buffer_head.h | 9 30 files changed, 103 insertions(+), 96 deletions(-) diff --git a/drivers/md/bitmap.c b/drivers/md/bitmap.c index 3fe86b5..8b2e16f 100644 --- a/drivers/md/bitmap.c +++ b/drivers/md/bitmap.c @@ -294,7 +294,7 @@ static void write_page(struct bitmap *bitmap, struct page *page, int wait) atomic_inc(&bitmap->pending_writes); set_buffer_locked(bh); set_buffer_mapped(bh); - submit_bh(WRITE | REQ_SYNC, bh); + submit_bh(REQ_OP_WRITE, REQ_SYNC, bh); bh = bh->b_this_page; } @@ -389,7 +389,7 @@ static int read_page(struct file *file, unsigned long index, atomic_inc(&bitmap->pending_writes); set_buffer_locked(bh); set_buffer_mapped(bh); - submit_bh(READ, bh); + submit_bh(REQ_OP_READ, 0, bh); } block++; bh = bh->b_this_page; diff --git a/fs/btrfs/check-integrity.c b/fs/btrfs/check-integrity.c index 9400acd..f82190f 100644 --- a/fs/btrfs/check-integrity.c +++ b/fs/btrfs/check-integrity.c @@ -2856,12 +2856,12 @@ static struct btrfsic_dev_state *btrfsic_dev_state_lookup( return ds; } -int btrfsic_submit_bh(int rw, struct buffer_head *bh) +int btrfsic_submit_bh(int op, int op_flags, struct buffer_head *bh) { struct btrfsic_dev_state *dev_state; if (!btrfsic_is_initialized) - return submit_bh(rw, bh); + return submit_bh(op, op_flags, bh); mutex_lock(&btrfsic_mutex); /* since btrfsic_submit_bh() might also be called before @@ -2870,26 +2870,26 @@ int btrfsic_submit_bh(int rw, struct buffer_head *bh) /* Only called to write the superblock (incl. FLUSH/FUA) */ if (NULL != dev_state && - (rw & WRITE) && bh->b_size > 0) { + (op == REQ_OP_WRITE) && bh->b_size > 0) { u64 dev_bytenr; dev_bytenr = 4096 * bh->b_blocknr; if (dev_state->state->print_mask & BTRFSIC_PRINT_MASK_SUBMIT_BIO_BH) printk(KERN_INFO - "submit_bh(rw=0x%x, blocknr=%llu (bytenr %llu)," - " size=%zu, data=%p, bdev=%p)\n", - rw, (unsigned long long)bh->b_blocknr, + "submit_bh(op=0x%x,0x%x, blocknr=%llu " + "(bytenr %llu), size=%zu, data=%p, bdev=%p)\n", + op, op_flags, (unsigned long long)bh->b_blocknr, dev_bytenr, bh->b_size, bh->b_data, bh->b_bdev); btrfsic_process_written_block(dev_state, dev_bytenr, &bh->b_data, 1, NULL, - NULL, bh, rw); - } else if (NULL != dev_state && (rw & REQ_FLUSH)) { + NULL, bh, op_flags); + } else if (NULL != dev_state && (op_flags & REQ_FLUSH)) { if (dev_state->state->print_mask & BTRFSIC_PRINT_MASK_SUBMIT_BIO_BH) printk(KERN_INFO - "submit_bh(rw=0x%x FLUSH, bdev=%p)\n", - rw, bh->b_bdev); + "submit_bh(op=0x%x,0x%x FLUSH, bdev=%p)\n", +
[PATCH 04/42] fs: have submit_bh users pass in op and flags separately
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 --- drivers/md/bitmap.c | 4 ++-- fs/btrfs/check-integrity.c | 24 ++-- fs/btrfs/check-integrity.h | 2 +- fs/btrfs/disk-io.c | 4 ++-- fs/buffer.c | 54 +++-- fs/ext4/balloc.c| 2 +- fs/ext4/ialloc.c| 2 +- fs/ext4/inode.c | 2 +- fs/ext4/mmp.c | 4 ++-- fs/fat/misc.c | 2 +- fs/gfs2/bmap.c | 2 +- fs/gfs2/dir.c | 2 +- fs/gfs2/meta_io.c | 6 ++--- fs/jbd2/commit.c| 6 ++--- fs/jbd2/journal.c | 8 +++ fs/nilfs2/btnode.c | 6 ++--- fs/nilfs2/btnode.h | 2 +- fs/nilfs2/btree.c | 6 +++-- fs/nilfs2/gcinode.c | 5 +++-- fs/nilfs2/mdt.c | 11 - fs/ntfs/aops.c | 6 ++--- fs/ntfs/compress.c | 2 +- fs/ntfs/file.c | 2 +- fs/ntfs/logfile.c | 2 +- fs/ntfs/mft.c | 4 ++-- fs/ocfs2/buffer_head_io.c | 8 +++ fs/reiserfs/inode.c | 4 ++-- fs/reiserfs/journal.c | 6 ++--- fs/ufs/util.c | 2 +- include/linux/buffer_head.h | 9 30 files changed, 103 insertions(+), 96 deletions(-) diff --git a/drivers/md/bitmap.c b/drivers/md/bitmap.c index 3fe86b5..8b2e16f 100644 --- a/drivers/md/bitmap.c +++ b/drivers/md/bitmap.c @@ -294,7 +294,7 @@ static void write_page(struct bitmap *bitmap, struct page *page, int wait) atomic_inc(&bitmap->pending_writes); set_buffer_locked(bh); set_buffer_mapped(bh); - submit_bh(WRITE | REQ_SYNC, bh); + submit_bh(REQ_OP_WRITE, REQ_SYNC, bh); bh = bh->b_this_page; } @@ -389,7 +389,7 @@ static int read_page(struct file *file, unsigned long index, atomic_inc(&bitmap->pending_writes); set_buffer_locked(bh); set_buffer_mapped(bh); - submit_bh(READ, bh); + submit_bh(REQ_OP_READ, 0, bh); } block++; bh = bh->b_this_page; diff --git a/fs/btrfs/check-integrity.c b/fs/btrfs/check-integrity.c index 9400acd..f82190f 100644 --- a/fs/btrfs/check-integrity.c +++ b/fs/btrfs/check-integrity.c @@ -2856,12 +2856,12 @@ static struct btrfsic_dev_state *btrfsic_dev_state_lookup( return ds; } -int btrfsic_submit_bh(int rw, struct buffer_head *bh) +int btrfsic_submit_bh(int op, int op_flags, struct buffer_head *bh) { struct btrfsic_dev_state *dev_state; if (!btrfsic_is_initialized) - return submit_bh(rw, bh); + return submit_bh(op, op_flags, bh); mutex_lock(&btrfsic_mutex); /* since btrfsic_submit_bh() might also be called before @@ -2870,26 +2870,26 @@ int btrfsic_submit_bh(int rw, struct buffer_head *bh) /* Only called to write the superblock (incl. FLUSH/FUA) */ if (NULL != dev_state && - (rw & WRITE) && bh->b_size > 0) { + (op == REQ_OP_WRITE) && bh->b_size > 0) { u64 dev_bytenr; dev_bytenr = 4096 * bh->b_blocknr; if (dev_state->state->print_mask & BTRFSIC_PRINT_MASK_SUBMIT_BIO_BH) printk(KERN_INFO - "submit_bh(rw=0x%x, blocknr=%llu (bytenr %llu)," - " size=%zu, data=%p, bdev=%p)\n", - rw, (unsigned long long)bh->b_blocknr, + "submit_bh(op=0x%x,0x%x, blocknr=%llu " + "(bytenr %llu), size=%zu, data=%p, bdev=%p)\n", + op, op_flags, (unsigned long long)bh->b_blocknr, dev_bytenr, bh->b_size, bh->b_data, bh->b_bdev); btrfsic_process_written_block(dev_state, dev_bytenr, &bh->b_data, 1, NULL, - NULL, bh, rw); - } else if (NULL != dev_state && (rw & REQ_FLUSH)) { + NULL, bh, op_flags); + } else if (NULL != dev_state && (op_flags & REQ_FLUSH)) { if (dev_state->state->print_mask & BTRFSIC_PRINT_MASK_SUBMIT_BIO_BH) printk(KERN_INFO - "submit_bh(rw=0x%x FLUSH, bdev=%p)\n", - rw, bh->b_bdev); + "submit_bh(op=0x%x,0x%x FLUSH, bdev=%p)\n", + op, op_fl