Skip to content
Permalink
mchristi-redha…

Commits on Jun 5, 2016

  1. block, drivers, fs: rename REQ_FLUSH to REQ_PREFLUSH

    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 <mchristi@redhat.com>
    Reviewed-by: Christoph Hellwig <hch@lst.de>
    Reviewed-by: Hannes Reinecke <hare@suse.com>
    mikechristie authored and fengguang committed Jun 5, 2016
  2. block: do not use REQ_FLUSH for tracking flush support

    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
    REQ_OP_FLUSH requests, so REQ_FLUSH can be deleted.
    
    Signed-off-by: Mike Christie <mchristi@redhat.com>
    Reviewed-by: Hannes Reinecke <hare@suse.com>
    Signed-off-by: Juergen Gross <kernel@pfupf.net>
    mikechristie authored and fengguang committed Jun 5, 2016
  3. block, drivers: add REQ_OP_FLUSH operation

    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.
    
    Signed-off-by: Mike Christie <mchristi@redhat.com>
    Reviewed-by: Christoph Hellwig <hch@lst.de>
    Reviewed-by: Hannes Reinecke <hare@suse.com>
    mikechristie authored and fengguang committed Jun 5, 2016
  4. block, fs, drivers: remove REQ_OP compat defs and related code

    This patch drops the compat definition of req_op where it matches
    the rq_flag_bits definitions, and drops the related old and compat
    code that allowed users to set either the op or flags for the operation.
    
    We also then store the operation in the bi_rw/cmd_flags field similar
    to how we used to store the bio ioprio where it sat in the upper bits
    of the field.
    
    Signed-off-by: Mike Christie <mchristi@redhat.com>
    mikechristie authored and fengguang committed Jun 5, 2016
  5. block, drivers, fs: shrink bi_rw from long to int

    We don't need bi_rw to be so large on 64 bit archs, so
    reduce it to unsigned int.
    
    Signed-off-by: Mike Christie <mchristi@redhat.com>
    mikechristie authored and fengguang committed Jun 5, 2016
  6. block: move bio io prio to a new field

    In the next patch, we move drop the compat code and make
    the op a separate value that is hidden in bi_rw. To give
    the op and rq bits flags room to grow this moves prio to
    its own field.
    
    Signed-off-by: Mike Christie <mchristi@redhat.com>
    mikechristie authored and fengguang committed Jun 5, 2016
  7. ide cd: do not set REQ_WRITE on requests.

    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 <mchristi@redhat.com>
    Reviewed-by: Christoph Hellwig <hch@lst.de>
    Reviewed-by: Hannes Reinecke <hare@suse.com>
    mikechristie authored and fengguang committed Jun 5, 2016
  8. blktrace: use op accessors

    Have blktrace use the req/bio op accessor to get the REQ_OP.
    
    Signed-off-by: Mike Christie <mchristi@redhat.com>
    Reviewed-by: Christoph Hellwig <hch@lst.de>
    Reviewed-by: Hannes Reinecke <hare@suse.com>
    mikechristie authored and fengguang committed Jun 5, 2016
  9. drivers: use req op accessor

    The req operation REQ_OP is separated from the rq_flag_bits
    definition. This converts the block layer drivers to
    use req_op to get the op from the request struct.
    
    Signed-off-by: Mike Christie <mchristi@redhat.com>
    mikechristie authored and fengguang committed Jun 5, 2016
  10. block: convert is_sync helpers to use REQ_OPs.

    This patch converts the is_sync helpers to use separate variables
    for the operation and flags.
    
    Signed-off-by: Mike Christie <mchristi@redhat.com>
    Reviewed-by: Christoph Hellwig <hch@lst.de>
    Reviewed-by: Hannes Reinecke <hare@suse.com>
    mikechristie authored and fengguang committed Jun 5, 2016
  11. block: convert merge/insert code to check for REQ_OPs.

    This patch converts the block layer merging code to use separate variables
    for the operation and flags, and to check req_op for the REQ_OP.
    
    Signed-off-by: Mike Christie <mchristi@redhat.com>
    Reviewed-by: Christoph Hellwig <hch@lst.de>
    Reviewed-by: Hannes Reinecke <hare@suse.com>
    mikechristie authored and fengguang committed Jun 5, 2016
  12. blkg_rwstat: separate op from flags

    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 <mchristi@redhat.com>
    Reviewed-by: Christoph Hellwig <hch@lst.de>
    Reviewed-by: Hannes Reinecke <hare@suse.com>
    mikechristie authored and fengguang committed Jun 5, 2016
  13. block: prepare elevator to use REQ_OPs.

    This patch converts the elevator code to use separate variables
    for the operation and flags, and to check req_op for the REQ_OP.
    
    Signed-off-by: Mike Christie <mchristi@redhat.com>
    Reviewed-by: Christoph Hellwig <hch@lst.de>
    Reviewed-by: Hannes Reinecke <hare@suse.com>
    mikechristie authored and fengguang committed Jun 5, 2016
  14. block: prepare mq request creation to use REQ_OPs

    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.
    
    Signed-off-by: Mike Christie <mchristi@redhat.com>
    Reviewed-by: Christoph Hellwig <hch@lst.de>
    Reviewed-by: Hannes Reinecke <hare@suse.com>
    mikechristie authored and fengguang committed Jun 5, 2016
  15. block: prepare request creation/destruction code to use REQ_OPs

    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 where the op and flags are set separately.
    
    Signed-off-by: Mike Christie <mchristi@redhat.com>
    Reviewed-by: Christoph Hellwig <hch@lst.de>
    Reviewed-by: Hannes Reinecke <hare@suse.com>
    mikechristie authored and fengguang committed Jun 5, 2016
  16. block: copy bio op to request op

    The bio users should now always be setting up the bio op. This patch
    has the block layer copy that to the request.
    
    Signed-off-by: Mike Christie <mchristi@redhat.com>
    mikechristie authored and fengguang committed Jun 5, 2016
  17. xen: use bio op accessors

    Separate the op from the rq_flag_bits and have xen
    set/get the bio using bio_set_op_attrs/bio_op.
    
    Signed-off-by: Mike Christie <mchristi@redhat.com>
    Reviewed-by: Christoph Hellwig <hch@lst.de>
    Reviewed-by: Hannes Reinecke <hare@suse.com>
    mikechristie authored and fengguang committed Jun 5, 2016
  18. target: use bio op accessors

    Separate the op from the rq_flag_bits and have the target layer
    set/get the bio using bio_set_op_attrs/bio_op.
    
    Signed-off-by: Mike Christie <mchristi@redhat.com>
    mikechristie authored and fengguang committed Jun 5, 2016
  19. md: use bio op accessors

    Separate the op from the rq_flag_bits and have md
    set/get the bio using bio_set_op_attrs/bio_op.
    
    Signed-off-by: Mike Christie <mchristi@redhat.com>
    Reviewed-by: Christoph Hellwig <hch@lst.de>
    Reviewed-by: Hannes Reinecke <hare@suse.com>
    mikechristie authored and fengguang committed Jun 5, 2016
  20. drbd: use bio op accessors

    Separate the op from the rq_flag_bits and have drbd
    set/get the bio using bio_set_op_attrs/bio_op.
    
    Signed-off-by: Mike Christie <mchristi@redhat.com>
    Reviewed-by: Christoph Hellwig <hch@lst.de>
    Reviewed-by: Hannes Reinecke <hare@suse.com>
    mikechristie authored and fengguang committed Jun 5, 2016
  21. bcache: use bio op accessors

    Separate the op from the rq_flag_bits and have bcache
    set/get the bio using bio_set_op_attrs/bio_op.
    
    Signed-off-by: Mike Christie <mchristi@redhat.com>
    mikechristie authored and fengguang committed Jun 5, 2016
  22. dm: use bio op accessors

    Separate the op from the rq_flag_bits and have dm
    set/get the bio using bio_set_op_attrs/bio_op.
    
    Signed-off-by: Mike Christie <mchristi@redhat.com>
    
    v8:
    - Moved op_is_write changes to its own patch.
    - Dropped signed offs due to changes in dm.
    mikechristie authored and fengguang committed Jun 5, 2016
  23. dm: pass dm stats data dir instead of bi_rw

    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 needed.
    
    This patch has it use the bio and request data_dir helpers
    instead of accessing the bi_rw/cmd_flags directly. This makes
    the next patches that remove the operation from the cmd_flags
    and bi_rw easier, because we will no longer have the REQ_WRITE
    bit set for operations like discards.
    
    Signed-off-by: Mike Christie <mchristi@redhat.com>
    Reviewed-by: Christoph Hellwig <hch@lst.de>
    Reviewed-by: Hannes Reinecke <hare@suse.com>
    mikechristie authored and fengguang committed Jun 5, 2016
  24. pm: use bio op accessors

    Separate the op from the rq_flag_bits and have the pm code
    set/get the bio using bio_set_op_attrs/bio_op.
    
    Signed-off-by: Mike Christie <mchristi@redhat.com>
    Reviewed-by: Christoph Hellwig <hch@lst.de>
    Reviewed-by: Hannes Reinecke <hare@suse.com>
    mikechristie authored and fengguang committed Jun 5, 2016
  25. ocfs2: use bio op accessors

    Separate the op from the rq_flag_bits and have ocfs2
    set/get the bio using bio_set_op_attrs/bio_op.
    
    Signed-off-by: Mike Christie <mchristi@redhat.com>
    Reviewed-by: Christoph Hellwig <hch@lst.de>
    Reviewed-by: Hannes Reinecke <hare@suse.com>
    mikechristie authored and fengguang committed Jun 5, 2016
  26. nilfs: use bio op accessors

    Separate the op from the rq_flag_bits and have nilfs
    set/get the bio using bio_set_op_attrs/bio_op.
    
    Signed-off-by: Mike Christie <mchristi@redhat.com>
    Reviewed-by: Christoph Hellwig <hch@lst.de>
    Reviewed-by: Hannes Reinecke <hare@suse.com>
    Acked-by: Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp>
    mikechristie authored and fengguang committed Jun 5, 2016
  27. mpage: use bio op accessors

    Separate the op from the rq_flag_bits and have the mpage code
    set/get the bio using bio_set_op_attrs/bio_op.
    
    Signed-off-by: Mike Christie <mchristi@redhat.com>
    Reviewed-by: Christoph Hellwig <hch@lst.de>
    Reviewed-by: Hannes Reinecke <hare@suse.com>
    mikechristie authored and fengguang committed Jun 5, 2016
  28. hfsplus: use bio op accessors

    Separate the op from the rq_flag_bits and have gfs2
    set/get the bio using bio_set_op_attrs/bio_op.
    
    Signed-off-by: Mike Christie <mchristi@redhat.com>
    Reviewed-by: Christoph Hellwig <hch@lst.de>
    Reviewed-by: Hannes Reinecke <hare@suse.com>
    mikechristie authored and fengguang committed Jun 5, 2016
  29. xfs: use bio op accessors

    Separate the op from the rq_flag_bits and have xfs
    set/get the bio using bio_set_op_attrs/bio_op.
    
    Signed-off-by: Mike Christie <mchristi@redhat.com>
    mikechristie authored and fengguang committed Jun 5, 2016
  30. gfs2: use bio op accessors

    Separate the op from the rq_flag_bits and have gfs2
    set/get the bio using bio_set_op_attrs/bio_op.
    
    Signed-off-by: Mike Christie <mchristi@redhat.com>
    Reviewed-by: Christoph Hellwig <hch@lst.de>
    Reviewed-by: Hannes Reinecke <hare@suse.com>
    mikechristie authored and fengguang committed Jun 5, 2016
  31. f2fs: use bio op accessors

    Separate the op from the rq_flag_bits and have f2fs
    set/get the bio using bio_set_op_attrs/bio_op.
    
    Signed-off-by: Mike Christie <mchristi@redhat.com>
    Reviewed-by: Christoph Hellwig <hch@lst.de>
    Reviewed-by: Hannes Reinecke <hare@suse.com>
    mikechristie authored and fengguang committed Jun 5, 2016
  32. btrfs: use bio fields for op and flags

    The bio REQ_OP and bi_rw rq_flag_bits are now always setup, so there is
    no need to pass around the rq_flag_bits bits too. btrfs users should
    should access the bio insead.
    
    Signed-off-by: Mike Christie <mchristi@redhat.com>
    Reviewed-by: Christoph Hellwig <hch@lst.de>
    Reviewed-by: Hannes Reinecke <hare@suse.com>
    mikechristie authored and fengguang committed Jun 5, 2016
  33. btrfs: update __btrfs_map_block for REQ_OP transition

    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 <mchristi@redhat.com>
    Reviewed-by: Christoph Hellwig <hch@lst.de>
    Reviewed-by: Hannes Reinecke <hare@suse.com>
    mikechristie authored and fengguang committed Jun 5, 2016
  34. btrfs: use bio op accessors

    This should be the easier cases to convert btrfs to
    bio_set_op_attrs/bio_op.
    They are mostly just cut and replace type of changes.
    
    Signed-off-by: Mike Christie <mchristi@redhat.com>
    Reviewed-by: Christoph Hellwig <hch@lst.de>
    Reviewed-by: Hannes Reinecke <hare@suse.com>
    mikechristie authored and fengguang committed Jun 5, 2016
  35. btrfs: have submit_one_bio users use bio op accessors

    This patch has btrfs's submit_one_bio users set the bio op using
    bio_set_op_attrs and get the op using bio_op.
    
    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 to try and keep it smaller.
    
    Signed-off-by: Mike Christie <mchristi@redhat.com>
    Reviewed-by: Christoph Hellwig <hch@lst.de>
    Reviewed-by: Hannes Reinecke <hare@suse.com>
    mikechristie authored and fengguang committed Jun 5, 2016
Older
You can’t perform that action at this time.