All of lore.kernel.org
 help / color / mirror / Atom feed
From: Chaitanya Kulkarni <chaitanya.kulkarni@wdc.com>
To: linux-block@vger.kernel.org
Cc: colyli@suse.de, linux-bcache@vger.kernel.org,
	linux-btrace@vger.kernel.org, kent.overstreet@gmail.com,
	jaegeuk@kernel.org, damien.lemoal@wdc.com,
	Chaitanya Kulkarni <chaitanya.kulkarni@wdc.com>
Subject: [PATCH V2 0/7] block: use right accessor to read nr_setcs
Date: Sun, 16 Jun 2019 18:28:25 -0700	[thread overview]
Message-ID: <20190617012832.4311-1-chaitanya.kulkarni@wdc.com> (raw)

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


WARNING: multiple messages have this Message-ID (diff)
From: Chaitanya Kulkarni <chaitanya.kulkarni@wdc.com>
To: linux-block@vger.kernel.org
Cc: colyli@suse.de, linux-bcache@vger.kernel.org,
	linux-btrace@vger.kernel.org, kent.overstreet@gmail.com,
	jaegeuk@kernel.org, damien.lemoal@wdc.com,
	Chaitanya Kulkarni <chaitanya.kulkarni@wdc.com>
Subject: [PATCH V2 0/7] block: use right accessor to read nr_setcs
Date: Mon, 17 Jun 2019 01:28:25 +0000	[thread overview]
Message-ID: <20190617012832.4311-1-chaitanya.kulkarni@wdc.com> (raw)

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

             reply	other threads:[~2019-06-17  1:28 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-06-17  1:28 Chaitanya Kulkarni [this message]
2019-06-17  1:28 ` [PATCH V2 0/7] block: use right accessor to read nr_setcs 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

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190617012832.4311-1-chaitanya.kulkarni@wdc.com \
    --to=chaitanya.kulkarni@wdc.com \
    --cc=colyli@suse.de \
    --cc=damien.lemoal@wdc.com \
    --cc=jaegeuk@kernel.org \
    --cc=kent.overstreet@gmail.com \
    --cc=linux-bcache@vger.kernel.org \
    --cc=linux-block@vger.kernel.org \
    --cc=linux-btrace@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.