Changes in v4:
 - Improved commit messages and signoff info.
 - Rebase on top of linux-next as of yesterday.
 - WARN_ONs are restored since x86 refcount_t does not WARN on zero

Changes in v3:
No changes in patches apart from trivial rebases, but now by
default refcount_t = atomic_t and uses all atomic standard operations
unless CONFIG_REFCOUNT_FULL is enabled. This is a compromize for the
systems that are critical on performance and cannot accept even
slight delay on the refcounter operations.

Changes in v2:
Not needed WARNs are removed since refcount_t warns by itself.
BUG_ONs are left as it is, since refcount_t doesn't bug by default.

This series, for block subsystem, replaces atomic_t reference
counters with the new refcount_t type and API (see include/linux/refcount.h).
By doing this we prevent intentional or accidental
underflows or overflows that can lead to use-after-free vulnerabilities.

The patches are fully independent and can be cherry-picked separately.
If there are no objections to the patches, please merge them via respective 
trees.

Elena Reshetova (6):
  block: convert bio.__bi_cnt from atomic_t to refcount_t
  block: convert blk_queue_tag.refcnt from atomic_t to refcount_t
  block: convert blkcg_gq.refcnt from atomic_t to refcount_t
  block: convert io_context.active_ref from atomic_t to refcount_t
  block: convert bsg_device.ref_count from atomic_t to refcount_t
  drivers, block: convert xen_blkif.refcnt from atomic_t to refcount_t

 block/bfq-iosched.c                |  2 +-
 block/bio.c                        |  6 +++---
 block/blk-cgroup.c                 |  2 +-
 block/blk-ioc.c                    |  4 ++--
 block/blk-tag.c                    |  8 ++++----
 block/bsg.c                        |  9 +++++----
 block/cfq-iosched.c                |  4 ++--
 drivers/block/xen-blkback/common.h |  7 ++++---
 drivers/block/xen-blkback/xenbus.c |  2 +-
 fs/btrfs/volumes.c                 |  2 +-
 include/linux/bio.h                |  4 ++--
 include/linux/blk-cgroup.h         | 11 ++++++-----
 include/linux/blk_types.h          |  3 ++-
 include/linux/blkdev.h             |  3 ++-
 include/linux/iocontext.h          |  7 ++++---
 15 files changed, 40 insertions(+), 34 deletions(-)

-- 
2.7.4

Reply via email to