[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20200810103508.GA142779@lx-t490>
Date: Mon, 10 Aug 2020 12:35:08 +0200
From: "Ahmed S. Darwish" <a.darwish@...utronix.de>
To: Greg KH <gregkh@...uxfoundation.org>
Cc: bigeasy@...utronix.de, linux-kernel@...r.kernel.org,
linux@...ck-us.net, mingo@...hat.com, paulmck@...nel.org,
peterz@...radead.org, rostedt@...dmis.org, tglx@...utronix.de,
will@...nel.org
Subject: Re: [PATCH] Revert "seqlock: lockdep assert non-preemptibility on
seqcount_t write"
On Mon, Aug 10, 2020 at 12:05:02PM +0200, Greg KH wrote:
> On Mon, Aug 10, 2020 at 11:54:28AM +0200, Ahmed S. Darwish wrote:
> > This reverts commit 859247d39fb008ea812e8f0c398a58a20c12899e.
> >
> > Current implementation of lockdep_assert_preemption_disabled() uses
> > per-CPU variables, which was done to untangle the existing
> > seqlock.h<=>sched.h 'current->' task_struct circular dependency.
> >
> > Using per-CPU variables did not fully untangle the dependency for
> > various non-x86 architectures though, resulting in multiple broken
> > builds. For the affected architectures, raw_smp_processor_id() led
> > back to 'current->', thus having the original seqlock.h<=>sched.h
> > dependency in full-effect.
> >
> > For now, revert adding lockdep_assert_preemption_disabled() to
> > seqlock.h.
> >
> > Reported-by: Guenter Roeck <linux@...ck-us.net>
> > Link: https://lkml.kernel.org/r/20200808232122.GA176509@roeck-us.net
> > Link: https://lkml.kernel.org/r/20200810085954.GA1591892@kroah.com
> > References: Commit a21ee6055c30 ("lockdep: Change hardirq{s_enabled,_context} to per-cpu variables")
> > Signed-off-by: Ahmed S. Darwish <a.darwish@...utronix.de>
>
> Reviewed-by: Greg Kroah-Hartman <gregkh@...uxfoundation.org>
>
> Even after this, there are still some build errors on arm32, but I don't
> think they are due to this change:
>
> ERROR: modpost: "__aeabi_uldivmod" [drivers/net/ethernet/sfc/sfc.ko] undefined!
> ERROR: modpost: "__bad_udelay" [drivers/net/ethernet/aquantia/atlantic/atlantic.ko] undefined!
>
Yes, they are unrelated to the seqlock.h changes.
(I've locally reverted the whole series just to be sure, and the same
linking errors as above were still there for an ARM allyesconfig.)
Thanks,
--
Ahmed S. Darwish
Linutronix GmbH
Powered by blists - more mailing lists