Re: [PATCH 4/8] pstore: Alert on backend write error

From: Kees Cook
Date: Thu Oct 06 2022 - 19:44:47 EST


On Thu, Oct 06, 2022 at 08:34:44PM -0300, Guilherme G. Piccoli wrote:
> On 06/10/2022 20:27, Kees Cook wrote:
> > [...]
> >> --- a/fs/pstore/platform.c
> >> +++ b/fs/pstore/platform.c
> >> @@ -463,6 +463,9 @@ static void pstore_dump(struct kmsg_dumper *dumper,
> >> if (ret == 0 && reason == KMSG_DUMP_OOPS) {
> >> pstore_new_entry = 1;
> >> pstore_timer_kick();
> >> + } else {
> >> + pr_err_once("backend (%s) writing error (%d)\n",
> >> + psinfo->name, ret);
> >
> > We're holding a spinlock here, so doing a pr_*() call isn't a great
> > idea. It's kind of not a great idea to try to write to the log in the
> > middle of a dump either, but we do attempt it at the start.
> >
> > Perhaps keep a saved_ret or something and send it after the spin lock is
> > released?
> >
>
> Hi Kees, thanks a lot for the very quick review!!
>
> Agree with you, I'll rework this one.
> Do you agree with showing only a single error? For me makes sense since
> we just wanna hint advanced users (+ people-debugging-pstore heh) that
> something went wrong.

Yeah, I agree -- it's going to be for folks working on pstore code. :)

--
Kees Cook