[PATCH] mtd: don't WARN about overloaded users of mtd->reboot_notifier.notifier_call
Brian Norris
computersforpeace at gmail.com
Fri Nov 6 09:35:32 PST 2015
On Fri, Nov 06, 2015 at 06:15:37AM -0800, Guenter Roeck wrote:
> On Tue, Nov 03, 2015 at 05:01:53PM -0800, Brian Norris wrote:
> > There are multiple types of users of mtd->reboot_notifier.notifier_call:
> >
> > (1) A while back, the cfi_cmdset_000{1,2} chip drivers implemented a
> > reboot notifier to (on a best effort basis) attempt to reset their flash
> > chips before rebooting.
> >
> > (2) More recently, we implemented a common _reboot() hook so that MTD
> > drivers (particularly, NAND flash) could better halt I/O operations
> > without having to reimplement the same notifier boilerplate.
> >
> > Currently, the WARN_ONCE() condition here was written to handle (2), but
> > at the same time it mis-diagnosed case (1) as an already-registered MTD.
> > Let's fix this by having the WARN_ONCE() condition better imitate the
> > condition that immediately follows it. (Wow, I don't know how I missed
> > that one.)
> >
> > (Side note: Unfortunately, we can't yet combine the reboot notifier code
> > for (1) and (2) with a patch like [1], because some users of (1) also
> > use mtdconcat, and so the mtd_info struct from cfi_cmdset_000{1,2} won't
> > actually get registered with mtdcore, and therefore their reboot
> > notifier won't get registered.)
> >
> > [1] http://patchwork.ozlabs.org/patch/417981/
> >
> > Suggested-by: Guenter Roeck <linux at roeck-us.net>
> > Signed-off-by: Brian Norris <computersforpeace at gmail.com>
> > Cc: Jesper Nilsson <jespern at axis.com>
> > Cc: linux-cris-kernel at axis.com
>
> Tested-by: Guenter Roeck <linux at roeck-us.net>
Thanks! Pushed to l2-mtd.git.
I'll be queueing up the 4.4-rc1 pull request soon.
Brian
More information about the linux-mtd
mailing list