From: Coly Li <colyli@suse.de>
To: axboe@kernel.dk
Cc: linux-bcache@vger.kernel.org, linux-block@vger.kernel.org,
Tang Junhui <tang.junhui.linux@gmail.com>,
stable@vger.kernel.org, Coly Li <colyli@suse.de>
Subject: [PATCH 04/15] bcache: fix ioctl in flash device
Date: Mon, 8 Oct 2018 20:41:10 +0800 [thread overview]
Message-ID: <20181008124121.20192-5-colyli@suse.de> (raw)
In-Reply-To: <20181008124121.20192-1-colyli@suse.de>
From: Tang Junhui <tang.junhui.linux@gmail.com>
When doing ioctl in flash device, it will call ioctl_dev() in super.c,
then we should not to get cached device since flash only device has
no backend device. This patch just move the jugement dc->io_disable
to cached_dev_ioctl() to make ioctl in flash device correctly.
Fixes: 0f0709e6bfc3c ("bcache: stop bcache device when backing device is offline")
Signed-off-by: Tang Junhui <tang.junhui.linux@gmail.com>
Cc: stable@vger.kernel.org
Signed-off-by: Coly Li <colyli@suse.de>
---
drivers/md/bcache/request.c | 3 +++
drivers/md/bcache/super.c | 4 ----
2 files changed, 3 insertions(+), 4 deletions(-)
diff --git a/drivers/md/bcache/request.c b/drivers/md/bcache/request.c
index ee15fb039fd0..3bf35914bb57 100644
--- a/drivers/md/bcache/request.c
+++ b/drivers/md/bcache/request.c
@@ -1218,6 +1218,9 @@ static int cached_dev_ioctl(struct bcache_device *d, fmode_t mode,
{
struct cached_dev *dc = container_of(d, struct cached_dev, disk);
+ if (dc->io_disable)
+ return -EIO;
+
return __blkdev_driver_ioctl(dc->bdev, mode, cmd, arg);
}
diff --git a/drivers/md/bcache/super.c b/drivers/md/bcache/super.c
index 448e531e8c2d..a99af19d2f91 100644
--- a/drivers/md/bcache/super.c
+++ b/drivers/md/bcache/super.c
@@ -647,10 +647,6 @@ static int ioctl_dev(struct block_device *b, fmode_t mode,
unsigned int cmd, unsigned long arg)
{
struct bcache_device *d = b->bd_disk->private_data;
- struct cached_dev *dc = container_of(d, struct cached_dev, disk);
-
- if (dc->io_disable)
- return -EIO;
return d->ioctl(d, mode, cmd, arg);
}
--
2.19.0
next prev parent reply other threads:[~2018-10-08 12:41 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-10-08 12:41 [PATCH 00/15] bcache patches for 4.20 Coly Li
2018-10-08 12:41 ` [PATCH 01/15] bcache: account size of buckets used in uuid write to ca->meta_sectors_written Coly Li
2018-10-08 12:41 ` [PATCH 02/15] bcache: trace missed reading by cache_missed Coly Li
2018-10-08 12:41 ` [PATCH 03/15] bcache: use REQ_PRIO to indicate bio for metadata Coly Li
2018-10-08 12:41 ` Coly Li [this message]
2018-10-08 12:41 ` [PATCH 05/15] bcache: fix typo in code comments of closure_return_with_destructor() Coly Li
2018-10-08 12:41 ` [PATCH 06/15] bcache: correct dirty data statistics Coly Li
2018-10-08 12:41 ` [PATCH 07/15] bcache: Populate writeback_rate_minimum attribute Coly Li
2018-10-08 14:19 ` Jens Axboe
2018-10-08 15:02 ` Coly Li
2018-10-08 15:22 ` Jens Axboe
2018-10-08 12:41 ` [PATCH 08/15] bcache: fix miss key refill->end in writeback Coly Li
2018-10-08 12:41 ` [PATCH 09/15] bcache: recal cached_dev_sectors on detach Coly Li
2018-10-08 12:41 ` [PATCH 10/15] bcache: remove unused bch_passthrough_cache Coly Li
2018-10-08 12:41 ` [PATCH 11/15] bcache: remove useless parameter of bch_debug_init() Coly Li
2018-10-08 12:41 ` [PATCH 12/15] bcache: replace hard coded number with BUCKET_GC_GEN_MAX Coly Li
2018-10-08 12:41 ` [PATCH 13/15] bcache: use MAX_CACHES_PER_SET instead of magic number 8 in __bch_bucket_alloc_set Coly Li
2018-10-08 12:41 ` [PATCH 14/15] bcache: split combined if-condition code into separate ones Coly Li
2018-10-08 12:41 ` [PATCH 15/15] bcache: panic fix for making cache device Coly Li
2018-10-08 14:20 ` [PATCH 00/15] bcache patches for 4.20 Jens Axboe
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=20181008124121.20192-5-colyli@suse.de \
--to=colyli@suse.de \
--cc=axboe@kernel.dk \
--cc=linux-bcache@vger.kernel.org \
--cc=linux-block@vger.kernel.org \
--cc=stable@vger.kernel.org \
--cc=tang.junhui.linux@gmail.com \
/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.