From: Kees Cook <keescook@chromium.org>
To: WeiXiong Liao <liaoweixiong@allwinnertech.com>
Cc: Anton Vorontsov <anton@enomsg.org>,
Colin Cross <ccross@android.com>, Tony Luck <tony.luck@intel.com>,
Jonathan Corbet <corbet@lwn.net>,
Miquel Raynal <miquel.raynal@bootlin.com>,
Richard Weinberger <richard@nod.at>,
Vignesh Raghavendra <vigneshr@ti.com>,
Petr Mladek <pmladek@suse.com>,
Sergey Senozhatsky <sergey.senozhatsky@gmail.com>,
Steven Rostedt <rostedt@goodmis.org>,
Rob Herring <robh@kernel.org>,
Pavel Tatashin <pasha.tatashin@soleen.com>,
linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org,
linux-mtd@lists.infradead.org
Subject: Re: [PATCH v7 09/18] pstore/blk: Introduce backend for block devices
Date: Mon, 11 May 2020 16:08:59 -0700 [thread overview]
Message-ID: <202005111607.1543AD86A@keescook> (raw)
In-Reply-To: <1f63c624-98aa-52de-a1ef-0a449decf4e9@allwinnertech.com>
On Mon, May 11, 2020 at 04:36:51PM +0800, WeiXiong Liao wrote:
> On 2020/5/11 AM 4:24, Kees Cook wrote:
> > [...]
> > +static struct block_device *psblk_get_bdev(void *holder,
> > + struct bdev_info *info)
>
> Well. That's pretty a good idea to get information about block device
> after registering. And after your codes, the global variable g_bdev_info is
> useless. It's time to drop it.
Ah yes! I meant to clean that up and forgot. Fixed now.
> > [...]
> > + bdev = blkdev_get_by_path(blkdev, mode, holder);
> > + if (IS_ERR(bdev)) {
> > + dev_t devt;
> > +
> > + devt = name_to_dev_t(blkdev);
> > + if (devt == 0)
> > + return ERR_PTR(-ENODEV);
> > + bdev = blkdev_get_by_dev(devt, mode, holder);
> > + }
>
> We should check bdev here. Otherwise, part_nr_sects_read()
> may catch segment error.
>
> if (IS_ERR(bdev))
> return bdev;
Whoops, yes. Fixed.
> > + bdev = psblk_get_bdev(holder, &binfo);
> > + if (IS_ERR(bdev)) {
> > + pr_err("failed to open '%s'!\n", blkdev);
> > + ret = PTR_ERR(bdev);
> > + goto err_put_bdev;
>
> It should not goto err_put_bdev since bdev already be put if get_bdev()
> fail.
Ah yes, good point. Fixed.
--
Kees Cook
WARNING: multiple messages have this Message-ID (diff)
From: Kees Cook <keescook@chromium.org>
To: WeiXiong Liao <liaoweixiong@allwinnertech.com>
Cc: Petr Mladek <pmladek@suse.com>, Tony Luck <tony.luck@intel.com>,
Vignesh Raghavendra <vigneshr@ti.com>,
Jonathan Corbet <corbet@lwn.net>,
Richard Weinberger <richard@nod.at>,
Anton Vorontsov <anton@enomsg.org>,
linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org,
Steven Rostedt <rostedt@goodmis.org>,
Sergey Senozhatsky <sergey.senozhatsky@gmail.com>,
Colin Cross <ccross@android.com>,
linux-mtd@lists.infradead.org,
Miquel Raynal <miquel.raynal@bootlin.com>,
Rob Herring <robh@kernel.org>,
Pavel Tatashin <pasha.tatashin@soleen.com>
Subject: Re: [PATCH v7 09/18] pstore/blk: Introduce backend for block devices
Date: Mon, 11 May 2020 16:08:59 -0700 [thread overview]
Message-ID: <202005111607.1543AD86A@keescook> (raw)
In-Reply-To: <1f63c624-98aa-52de-a1ef-0a449decf4e9@allwinnertech.com>
On Mon, May 11, 2020 at 04:36:51PM +0800, WeiXiong Liao wrote:
> On 2020/5/11 AM 4:24, Kees Cook wrote:
> > [...]
> > +static struct block_device *psblk_get_bdev(void *holder,
> > + struct bdev_info *info)
>
> Well. That's pretty a good idea to get information about block device
> after registering. And after your codes, the global variable g_bdev_info is
> useless. It's time to drop it.
Ah yes! I meant to clean that up and forgot. Fixed now.
> > [...]
> > + bdev = blkdev_get_by_path(blkdev, mode, holder);
> > + if (IS_ERR(bdev)) {
> > + dev_t devt;
> > +
> > + devt = name_to_dev_t(blkdev);
> > + if (devt == 0)
> > + return ERR_PTR(-ENODEV);
> > + bdev = blkdev_get_by_dev(devt, mode, holder);
> > + }
>
> We should check bdev here. Otherwise, part_nr_sects_read()
> may catch segment error.
>
> if (IS_ERR(bdev))
> return bdev;
Whoops, yes. Fixed.
> > + bdev = psblk_get_bdev(holder, &binfo);
> > + if (IS_ERR(bdev)) {
> > + pr_err("failed to open '%s'!\n", blkdev);
> > + ret = PTR_ERR(bdev);
> > + goto err_put_bdev;
>
> It should not goto err_put_bdev since bdev already be put if get_bdev()
> fail.
Ah yes, good point. Fixed.
--
Kees Cook
______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/
next prev parent reply other threads:[~2020-05-11 23:09 UTC|newest]
Thread overview: 75+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-05-10 20:24 [PATCH v7 00/18] pstore: mtd: support crash log to block and mtd device Kees Cook
2020-05-10 20:24 ` Kees Cook
2020-05-10 20:24 ` [PATCH v7 01/18] pstore/ram: Move dump_oops to end of module_param list Kees Cook
2020-05-10 20:24 ` Kees Cook
2020-05-10 20:24 ` [PATCH v7 02/18] pstore/platform: Switch pstore_info::name to const Kees Cook
2020-05-10 20:24 ` Kees Cook
2020-05-10 20:24 ` [PATCH v7 03/18] pstore/platform: Move module params after declarations Kees Cook
2020-05-10 20:24 ` Kees Cook
2020-05-10 20:24 ` [PATCH v7 04/18] pstore/platform: Use backend name for console registration Kees Cook
2020-05-10 20:24 ` Kees Cook
2020-05-10 20:24 ` [PATCH v7 05/18] pstore/ram: Refactor ftrace buffer merging Kees Cook
2020-05-10 20:24 ` Kees Cook
2020-05-10 20:24 ` [PATCH v7 06/18] pstore/ftrace: Provide ftrace log merging routine Kees Cook
2020-05-10 20:24 ` Kees Cook
2020-05-10 20:24 ` [PATCH v7 07/18] printk: Introduce kmsg_dump_reason_str() Kees Cook
2020-05-10 20:24 ` Kees Cook
2020-05-12 8:44 ` Petr Mladek
2020-05-12 8:44 ` Petr Mladek
2020-05-12 19:44 ` Kees Cook
2020-05-12 19:44 ` Kees Cook
2020-05-13 5:08 ` Sergey Senozhatsky
2020-05-13 5:08 ` Sergey Senozhatsky
2020-05-10 20:24 ` [PATCH v7 08/18] pstore/zone: Introduce common layer to manage storage zones Kees Cook
2020-05-10 20:24 ` Kees Cook
2020-05-11 8:36 ` WeiXiong Liao
2020-05-11 8:36 ` WeiXiong Liao
2020-05-11 23:02 ` Kees Cook
2020-05-11 23:02 ` Kees Cook
2020-05-10 20:24 ` [PATCH v7 09/18] pstore/blk: Introduce backend for block devices Kees Cook
2020-05-10 20:24 ` Kees Cook
2020-05-11 8:36 ` WeiXiong Liao
2020-05-11 8:36 ` WeiXiong Liao
2020-05-11 23:08 ` Kees Cook [this message]
2020-05-11 23:08 ` Kees Cook
2020-05-11 15:36 ` Randy Dunlap
2020-05-11 15:36 ` Randy Dunlap
2020-05-11 23:11 ` Kees Cook
2020-05-11 23:11 ` Kees Cook
2020-05-10 20:24 ` [PATCH v7 10/18] pstore/zone,blk: Add support for pmsg frontend Kees Cook
2020-05-10 20:24 ` Kees Cook
2020-05-11 8:36 ` WeiXiong Liao
2020-05-11 8:36 ` WeiXiong Liao
2020-05-10 20:24 ` [PATCH v7 11/18] pstore/zone,blk: Add console frontend support Kees Cook
2020-05-10 20:24 ` Kees Cook
2020-05-11 15:38 ` Randy Dunlap
2020-05-11 15:38 ` Randy Dunlap
2020-05-11 23:14 ` Kees Cook
2020-05-11 23:14 ` Kees Cook
2020-05-10 20:24 ` [PATCH v7 12/18] pstore/zone,blk: Add ftrace " Kees Cook
2020-05-10 20:24 ` Kees Cook
2020-05-11 15:37 ` Randy Dunlap
2020-05-11 15:37 ` Randy Dunlap
2020-05-10 20:24 ` [PATCH v7 13/18] Documentation: Add details for pstore/blk Kees Cook
2020-05-10 20:24 ` Kees Cook
2020-05-10 20:24 ` [PATCH v7 14/18] pstore/zone: Provide way to skip "broken" zone for MTD devices Kees Cook
2020-05-10 20:24 ` Kees Cook
2020-05-10 20:24 ` [PATCH v7 15/18] pstore/blk: Provide way to query pstore configuration Kees Cook
2020-05-10 20:24 ` Kees Cook
2020-05-10 20:24 ` [PATCH v7 16/18] pstore/blk: Support non-block storage devices Kees Cook
2020-05-10 20:24 ` Kees Cook
2020-05-10 20:24 ` [PATCH v7 17/18] mtd: Support kmsg dumper based on pstore/blk Kees Cook
2020-05-10 20:24 ` Kees Cook
2020-05-11 9:01 ` WeiXiong Liao
2020-05-11 9:01 ` WeiXiong Liao
2020-05-11 23:16 ` Kees Cook
2020-05-11 23:16 ` Kees Cook
2020-05-10 20:24 ` [PATCH v7 18/18] pstore/blk: Introduce "best_effort" mode Kees Cook
2020-05-10 20:24 ` Kees Cook
2020-05-11 10:54 ` [PATCH v7 00/18] pstore: mtd: support crash log to block and mtd device WeiXiong Liao
2020-05-11 10:54 ` WeiXiong Liao
2020-05-11 23:17 ` Kees Cook
2020-05-11 23:17 ` Kees Cook
2020-05-11 22:39 ` Kees Cook
2020-05-11 22:39 ` Kees Cook
-- strict thread matches above, loose matches on Subject: below --
2020-05-10 22:14 [PATCH v7 09/18] pstore/blk: Introduce backend for block devices kbuild test robot
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=202005111607.1543AD86A@keescook \
--to=keescook@chromium.org \
--cc=anton@enomsg.org \
--cc=ccross@android.com \
--cc=corbet@lwn.net \
--cc=liaoweixiong@allwinnertech.com \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mtd@lists.infradead.org \
--cc=miquel.raynal@bootlin.com \
--cc=pasha.tatashin@soleen.com \
--cc=pmladek@suse.com \
--cc=richard@nod.at \
--cc=robh@kernel.org \
--cc=rostedt@goodmis.org \
--cc=sergey.senozhatsky@gmail.com \
--cc=tony.luck@intel.com \
--cc=vigneshr@ti.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.