Linux btrace development
 help / color / mirror / Atom feed
* [PATCH 0/8] block: use right accessor to read nr_sects
@ 2019-06-13 14:59 Chaitanya Kulkarni
  2019-06-13 14:59 ` [PATCH 1/8] block: add a helper function to read nr_setcs Chaitanya Kulkarni
                   ` (7 more replies)
  0 siblings, 8 replies; 17+ messages in thread
From: Chaitanya Kulkarni @ 2019-06-13 14:59 UTC (permalink / raw)
  To: linux-block
  Cc: colyli, linux-bcache, linux-scsi, linux-btrace, kent.overstreet,
	jaegeuk, damien.lemoal, Chaitanya Kulkarni

Hi,

In the current block layer implementation including drivers and fs
there are some places in the code where block device->hd_part->number
of sectors is accessed directly without any locking. There is an
existing accessor function present in the include/linux/genhd.h
which should be used to read the bdev->hd_part->nr_sects
with the help of appropriate locking.

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() with expected rcu locking and removes the direct
accesses to the bdev->hd_part->nr_sects.

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

Regards,
Chaitanya

Chaitanya Kulkarni (8):
  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
  target/pscsi: use helper in pscsi_get_blocks()
  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 +-
 drivers/target/target_core_pscsi.c |  2 +-
 fs/f2fs/super.c                    |  2 +-
 include/linux/blkdev.h             | 12 ++++++++++++
 kernel/trace/blktrace.c            |  2 +-
 6 files changed, 22 insertions(+), 10 deletions(-)

-- 
2.19.1

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

end of thread, other threads:[~2019-06-13 20:29 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-06-13 14:59 [PATCH 0/8] block: use right accessor to read nr_sects Chaitanya Kulkarni
2019-06-13 14:59 ` [PATCH 1/8] block: add a helper function to read nr_setcs Chaitanya Kulkarni
2019-06-13 15:31   ` Bart Van Assche
2019-06-13 16:07     ` Douglas Gilbert
2019-06-13 16:28       ` James Bottomley
2019-06-13 19:26         ` Douglas Gilbert
2019-06-13 20:29           ` James Bottomley
2019-06-13 16:07     ` Chaitanya Kulkarni
2019-06-13 14:59 ` [PATCH 2/8] blk-zoned: update blkdev_nr_zones() with helper Chaitanya Kulkarni
2019-06-13 14:59 ` [PATCH 3/8] blk-zoned: update blkdev_report_zone() " Chaitanya Kulkarni
2019-06-13 14:59 ` [PATCH 4/8] blk-zoned: update blkdev_reset_zones() " Chaitanya Kulkarni
2019-06-13 14:59 ` [PATCH 5/8] bcache: update cached_dev_init() " Chaitanya Kulkarni
2019-06-13 14:59 ` [COMPILE TESTED PATCH 6/8] target/pscsi: use helper in pscsi_get_blocks() Chaitanya Kulkarni
2019-06-13 15:36   ` Bart Van Assche
2019-06-13 16:08     ` Chaitanya Kulkarni
2019-06-13 14:59 ` [COMPILE TESTED PATCH 7/8] f2fs: use helper in init_blkz_info() Chaitanya Kulkarni
2019-06-13 14:59 ` [PATCH 8/8] blktrace: use helper in blk_trace_setup_lba() Chaitanya Kulkarni

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox