Re: [RFC PATCH 6/6] block: implement NVMEM provider

From: Christoph Hellwig
Date: Fri Jul 21 2023 - 02:36:48 EST


> +static int blk_nvmem_reg_read(void *priv, unsigned int from,
> + void *val, size_t bytes)
> +{
> + pgoff_t f_index = from >> PAGE_SHIFT;
> + struct address_space *mapping;
> + struct blk_nvmem *bnv = priv;
> + size_t bytes_left = bytes;
> + struct folio *folio;
> + unsigned long offs, to_read;
> + void *p;

Btw, this function really should be using kern_read on a file
using filp_open instead of poking into block device internals.
That way you can even have a generic file provider that works
on anything that can be read from.