All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH V2 0/7] block: use right accessor to read nr_setcs
@ 2019-06-17  1:28 ` Chaitanya Kulkarni
  0 siblings, 0 replies; 28+ messages in thread
From: Chaitanya Kulkarni @ 2019-06-17  1:28 UTC (permalink / raw)
  To: linux-block
  Cc: colyli, linux-bcache, linux-btrace, kent.overstreet, jaegeuk,
	damien.lemoal, Chaitanya Kulkarni

Hi,

In the blk-zoned, bcache, f2fs and blktrace implementation
block device->hd_part->number of sectors field is accessed directly
without any appropriate locking or accessor function. There is
an existing accessor function present in the in include/linux/genhd.h
which should be used to read the bdev->hd_part->nr_sects.

From ${KERN_DIR}/include/linux/genhd.h:-
<snip>
714 /*
715  * Any access of part->nr_sects which is not protected by partition
716  * bd_mutex or gendisk bdev bd_mutex, should be done using this
717  * accessor function.
718  *
719  * Code written along the lines of i_size_read() and i_size_write().
720  * CONFIG_PREEMPT case optimizes the case of UP kernel with preemption
721  * on.
722  */
723 static inline sector_t part_nr_sects_read(struct hd_struct *part)
724 {
<snip>

This patch series introduces a helper function on the top of the
part_nr_sects_read() and removes the all direct accesses to the
bdev->hd_part->nr_sects for blk-zoned.c.

This series is based on :-

1. Repo :-
   git://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux-block.git.
2. Branch :- for-next.

Regards,
Chaitanya

Changes from V1:-

1. Drop the target_pscsi patch. (Bart)
2. Remove rcu locking which is not needed. (Bart)

Chaitanya Kulkarni (7):
  block: add a helper function to read nr_setcs
  blk-zoned: update blkdev_nr_zones() with helper
  blk-zoned: update blkdev_report_zone() with helper
  blk-zoned: update blkdev_reset_zones() with helper
  bcache: update cached_dev_init() with helper
  f2fs: use helper in init_blkz_info()
  blktrace: use helper in blk_trace_setup_lba()

 block/blk-zoned.c         | 12 ++++++------
 drivers/md/bcache/super.c |  2 +-
 fs/f2fs/super.c           |  2 +-
 include/linux/blkdev.h    | 10 ++++++++++
 kernel/trace/blktrace.c   |  2 +-
 5 files changed, 19 insertions(+), 9 deletions(-)

-- 
2.19.1


^ permalink raw reply	[flat|nested] 28+ messages in thread

end of thread, other threads:[~2019-06-17 16:58 UTC | newest]

Thread overview: 28+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-06-17  1:28 [PATCH V2 0/7] block: use right accessor to read nr_setcs Chaitanya Kulkarni
2019-06-17  1:28 ` Chaitanya Kulkarni
2019-06-17  1:28 ` [PATCH V2 1/7] block: add a helper function " Chaitanya Kulkarni
2019-06-17  1:28   ` Chaitanya Kulkarni
2019-06-17 15:47   ` Bart Van Assche
2019-06-17 15:47     ` Bart Van Assche
2019-06-17 16:55     ` Chaitanya Kulkarni
2019-06-17  1:28 ` [PATCH V2 2/7] blk-zoned: update blkdev_nr_zones() with helper Chaitanya Kulkarni
2019-06-17  1:28   ` Chaitanya Kulkarni
2019-06-17  1:28 ` [PATCH V2 3/7] blk-zoned: update blkdev_report_zone() " Chaitanya Kulkarni
2019-06-17  1:28   ` Chaitanya Kulkarni
2019-06-17  1:28 ` [PATCH V2 4/7] blk-zoned: update blkdev_reset_zones() " Chaitanya Kulkarni
2019-06-17  1:28   ` Chaitanya Kulkarni
2019-06-17  1:28 ` [PATCH V2 5/7] bcache: update cached_dev_init() " Chaitanya Kulkarni
2019-06-17  1:28   ` Chaitanya Kulkarni
2019-06-17  6:53   ` Coly Li
2019-06-17  6:53     ` Coly Li
2019-06-17 16:56     ` Chaitanya Kulkarni
2019-06-17  1:28 ` [PATCH V2 6/7] f2fs: use helper in init_blkz_info() Chaitanya Kulkarni
2019-06-17  1:28   ` Chaitanya Kulkarni
2019-06-17  1:28 ` [PATCH V2 7/7] blktrace: use helper in blk_trace_setup_lba() Chaitanya Kulkarni
2019-06-17  1:28   ` Chaitanya Kulkarni
2019-06-17 15:45 ` [PATCH V2 0/7] block: use right accessor to read nr_setcs Bart Van Assche
2019-06-17 15:45   ` Bart Van Assche
2019-06-17 16:57   ` Chaitanya Kulkarni
2019-06-17 15:53 ` Bart Van Assche
2019-06-17 15:53   ` Bart Van Assche
2019-06-17 16:58   ` Chaitanya Kulkarni

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.