Re: [PATCH 4.19 092/229] once: add DO_ONCE_SLOW() for sleepable contexts

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Nov 01, 2022 at 08:00:03PM +0800, Yongqin Liu wrote:
> Hi, Greg
> 
> On Tue, 1 Nov 2022 at 14:26, Greg Kroah-Hartman
> <gregkh@xxxxxxxxxxxxxxxxxxx> wrote:
> >
> > On Tue, Nov 01, 2022 at 02:07:35PM +0800, Yongqin Liu wrote:
> > > Hello,
> > >
> > > As mentioned in the thread for the 5.4 version here[1], it causes a
> > > crash for the 4.19 kernel too.
> > > Just paste the log here for reference:
> >
> > Can you try this patch please:
> >
> >
> > diff --git a/include/linux/once.h b/include/linux/once.h
> > index bb58e1c3aa03..3a6671d961b9 100644
> > --- a/include/linux/once.h
> > +++ b/include/linux/once.h
> > @@ -64,7 +64,7 @@ void __do_once_slow_done(bool *done, struct static_key_true *once_key,
> >  #define DO_ONCE_SLOW(func, ...)                                                     \
> >         ({                                                                   \
> >                 bool ___ret = false;                                         \
> > -               static bool __section(".data.once") ___done = false;         \
> > +               static bool __section(.data.once) ___done = false;           \
> >                 static DEFINE_STATIC_KEY_TRUE(___once_key);                  \
> >                 if (static_branch_unlikely(&___once_key)) {                  \
> >                         ___ret = __do_once_slow_start(&___done);             \
> 
> 
> This change works, it does not cause kernel panic again after this
> change is applied.

Great, thanks!  Can I get a Tested-by: line for the changelog?

I'll queue this up in a bit and get it fixed in the next release.

thanks,

greg k-h



[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux