Re: WARNING: at kernel/workqueue.c:1473 __queue_work+0x3b8/0x3d0

From: Corentin Labbe
Date: Thu Feb 20 2020 - 04:04:18 EST


On Tue, Feb 18, 2020 at 11:35:04AM -0500, Daniel Jordan wrote:
> Hi Corentin,
>
> On Mon, Feb 17, 2020 at 09:48:03PM +0100, Corentin Labbe wrote:
> > When running some CI test jobs (targeting crypto tests), I always get the following WARNING:
>
> Can you be more specific about which test triggers this? I used the config
> option you mention and failed to reproduce after doing the boot-time crypto
> tests and running various tcrypt incantations.
>

Hello

It appears before any user space start. But according to the "Modules linked", probably ghash is already loaded and perhaps tested.

Removing GHASH lead to:
[ 7.920931] ------------[ cut here ]------------
[ 7.920955] WARNING: CPU: 1 PID: 120 at kernel/workqueue.c:1469 __queue_work+0x370/0x388
[ 7.920960] Modules linked in: ccm

And removing CCM lead to
[ 7.798877] ------------[ cut here ]------------
[ 7.798902] WARNING: CPU: 2 PID: 127 at kernel/workqueue.c:1469 __queue_work+0x370/0x388
[ 7.798907] Modules linked in: ctr

So it confirm that the problem is not related to the tested crypto algorithm.

> > [ 7.886361] ------------[ cut here ]------------
> > [ 7.886388] WARNING: CPU: 2 PID: 147 at kernel/workqueue.c:1473 __queue_work+0x3b8/0x3d0
> > [ 7.886394] Modules linked in: ghash_generic
> > [ 7.886409] CPU: 2 PID: 147 Comm: modprobe Not tainted 5.6.0-rc1-next-20200214-00068-g166c9264f0b1-dirty #545
>
> I was using just plain next-20200214. Can't find 166c9264f0b1, what tag/branch
> were you using exactly?
>

The pasted example has some commit to try to debug it.
But I got the same with plain next (like yesterday 5.6.0-rc2-next-20200219 and tomorow 5.6.0-rc2-next-20200220) and master got the same issue.

But for reproductability on different hardware, I agree it is difficult.
For the moment, I got it only on Allwinner H5, A64, H6 SoCs and imx8q.
[ 6.611449] ------------[ cut here ]------------
[ 6.613234] WARNING: CPU: 1 PID: 157 at /srv/data/clabbe/linux-next/kernel/workqueue.c:1471 __queue_work+0x324/0x3b0
[ 6.623809] Modules linked in: ghash_generic
[ 6.628101] CPU: 1 PID: 157 Comm: modprobe Not tainted 5.6.0-rc2-next-20200220 #82
[ 6.635710] Hardware name: NXP i.MX8MNano DDR4 EVK board (DT)

I tried amlogic boards and some qemu "virt" without success.

(I have added linux-crypto@xxxxxxxxxxxxxxx to the CC)