lkml.org 
[lkml]   [2016]   [Apr]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 16/42] nilfs: set bi_op to REQ_OP
    Date
    From: Mike Christie <mchristi@redhat.com>

    This patch has nilfs use bio->bi_op for REQ_OPs and rq_flag_bits
    to bio->bi_rw.

    Signed-off-by: Mike Christie <mchristi@redhat.com>
    Reviewed-by: Christoph Hellwig <hch@lst.de>
    Reviewed-by: Hannes Reinecke <hare@suse.com>
    ---
    fs/nilfs2/segbuf.c | 18 ++++++++++--------
    1 file changed, 10 insertions(+), 8 deletions(-)

    diff --git a/fs/nilfs2/segbuf.c b/fs/nilfs2/segbuf.c
    index 7666f1d..7b13e14 100644
    --- a/fs/nilfs2/segbuf.c
    +++ b/fs/nilfs2/segbuf.c
    @@ -350,7 +350,8 @@ static void nilfs_end_bio_write(struct bio *bio)
    }

    static int nilfs_segbuf_submit_bio(struct nilfs_segment_buffer *segbuf,
    - struct nilfs_write_info *wi, int mode)
    + struct nilfs_write_info *wi, int mode,
    + int mode_flags)
    {
    struct bio *bio = wi->bio;
    int err;
    @@ -368,7 +369,8 @@ static int nilfs_segbuf_submit_bio(struct nilfs_segment_buffer *segbuf,

    bio->bi_end_io = nilfs_end_bio_write;
    bio->bi_private = segbuf;
    - bio->bi_rw = mode;
    + bio->bi_op = mode;
    + bio->bi_rw = mode_flags;
    submit_bio(bio);
    segbuf->sb_nbio++;

    @@ -442,7 +444,7 @@ static int nilfs_segbuf_submit_bh(struct nilfs_segment_buffer *segbuf,
    return 0;
    }
    /* bio is FULL */
    - err = nilfs_segbuf_submit_bio(segbuf, wi, mode);
    + err = nilfs_segbuf_submit_bio(segbuf, wi, mode, 0);
    /* never submit current bh */
    if (likely(!err))
    goto repeat;
    @@ -466,19 +468,19 @@ static int nilfs_segbuf_write(struct nilfs_segment_buffer *segbuf,
    {
    struct nilfs_write_info wi;
    struct buffer_head *bh;
    - int res = 0, rw = WRITE;
    + int res = 0;

    wi.nilfs = nilfs;
    nilfs_segbuf_prepare_write(segbuf, &wi);

    list_for_each_entry(bh, &segbuf->sb_segsum_buffers, b_assoc_buffers) {
    - res = nilfs_segbuf_submit_bh(segbuf, &wi, bh, rw);
    + res = nilfs_segbuf_submit_bh(segbuf, &wi, bh, REQ_OP_WRITE);
    if (unlikely(res))
    goto failed_bio;
    }

    list_for_each_entry(bh, &segbuf->sb_payload_buffers, b_assoc_buffers) {
    - res = nilfs_segbuf_submit_bh(segbuf, &wi, bh, rw);
    + res = nilfs_segbuf_submit_bh(segbuf, &wi, bh, REQ_OP_WRITE);
    if (unlikely(res))
    goto failed_bio;
    }
    @@ -488,8 +490,8 @@ static int nilfs_segbuf_write(struct nilfs_segment_buffer *segbuf,
    * Last BIO is always sent through the following
    * submission.
    */
    - rw |= REQ_SYNC;
    - res = nilfs_segbuf_submit_bio(segbuf, &wi, rw);
    + res = nilfs_segbuf_submit_bio(segbuf, &wi, REQ_OP_WRITE,
    + REQ_SYNC);
    }

    failed_bio:
    --
    2.7.2
    \
     
     \ /
      Last update: 2016-04-15 13:41    [W:3.675 / U:0.016 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site