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. Elena Reshetova (5): 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 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 ++-- fs/btrfs/volumes.c | 2 +- include/linux/bio.h | 4 ++-- include/linux/blk-cgroup.h | 9 ++++----- include/linux/blk_types.h | 3 ++- include/linux/blkdev.h | 3 ++- include/linux/iocontext.h | 6 +++--- 12 files changed, 31 insertions(+), 29 deletions(-) -- 2.7.4