[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <202012011152.5CD7EAD@keescook>
Date: Tue, 1 Dec 2020 11:53:23 -0800
From: Kees Cook <keescook@...omium.org>
To: Christoph Hellwig <hch@....de>
Cc: Anton Vorontsov <anton@...msg.org>,
Colin Cross <ccross@...roid.com>,
Tony Luck <tony.luck@...el.com>,
WeiXiong Liao <liaoweixiong@...winnertech.com>,
linux-mtd@...ts.infradead.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH 9/9] pstore/blk: don't depend on CONFIG_BLOCK
On Fri, Oct 16, 2020 at 03:20:47PM +0200, Christoph Hellwig wrote:
> pstore-blk contains of two different layers:
>
> a) a tiny layer of sugar coating ontop of pstore-zone. This part has
> no dependencies on the block layer, and can be used e.g. by mtd
> b) an implementation of a default fallback pstore zone backend for
> block devices
>
> Add an ifdef for the latter so that pstore-blk itself does not have to
> depend on CONFIG_BLOCK.
>
> Signed-off-by: Christoph Hellwig <hch@....de>
AFAIU, this can't be done until the read/write changes from patch 8 are
adopted, so, for now, I'm not taking this either.
-Kees
> ---
> fs/pstore/Kconfig | 2 +-
> fs/pstore/blk.c | 2 ++
> 2 files changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/fs/pstore/Kconfig b/fs/pstore/Kconfig
> index e16a49ebfe546d..6eadb538316e52 100644
> --- a/fs/pstore/Kconfig
> +++ b/fs/pstore/Kconfig
> @@ -164,7 +164,7 @@ config PSTORE_ZONE
> config PSTORE_BLK
> tristate "Log panic/oops to a block device"
> depends on PSTORE
> - depends on BLOCK
> + depends on BLOCK || !BLOCK
> select PSTORE_ZONE
> default n
> help
> diff --git a/fs/pstore/blk.c b/fs/pstore/blk.c
> index bd4eadfc9bd795..d3d25edb943cdd 100644
> --- a/fs/pstore/blk.c
> +++ b/fs/pstore/blk.c
> @@ -182,6 +182,7 @@ void unregister_pstore_device(const struct pstore_zone_ops *ops)
> }
> EXPORT_SYMBOL_GPL(unregister_pstore_device);
>
> +#ifdef CONFIG_BLOCK
> static struct file *psblk_file;
>
> static ssize_t psblk_generic_blk_read(char *buf, size_t bytes, loff_t pos)
> @@ -269,6 +270,7 @@ void __init pstore_blk_early_init(void)
> __pstore_blk_init(devname);
> }
> #endif /* MODULE */
> +#endif /* CONFIG_BLOCK */
>
> /* get information of pstore/blk */
> int pstore_blk_get_config(struct pstore_blk_config *info)
> --
> 2.28.0
>
--
Kees Cook
Powered by blists - more mailing lists