Re: [BUG] KCSAN: data-race in process_one_work / process_one_work

From: Tejun Heo
Date: Thu Aug 17 2023 - 18:00:43 EST


On Thu, Aug 17, 2023 at 09:24:28PM +0200, Mirsad Todorovac wrote:
> Hi,
>
> This is your friendly bug reporter.
>
> The environment is vanilla torvalds tree kernel on Ubuntu 22.04 LTS and on a Ryzen 7950X
> assembled box.
>
> The kernel reports G taint "properietary module loaded", but I know of no module since
> the boot state when the status was "Not tainted".
>
> Please find the complete dmesg output (or what's left in the ring buffer) and lshw output
> attached.
>
> Here is the dmesg output excerpt:
>
> [ 6849.221584] ==================================================================
> [ 6849.221607] BUG: KCSAN: data-race in process_one_work / process_one_work
>
> [ 6849.221635] write to 0xffff9b7440151398 of 8 bytes by task 6364 on cpu 7:
> [ 6849.221647] process_one_work+0x504/0x930
> [ 6849.221660] worker_thread+0x311/0x7e0
> [ 6849.221673] kthread+0x18b/0x1d0
> [ 6849.221683] ret_from_fork+0x43/0x70
> [ 6849.221695] ret_from_fork_asm+0x1b/0x30
>
> [ 6849.221712] read to 0xffff9b7440151398 of 8 bytes by task 5586 on cpu 28:
> [ 6849.221724] process_one_work+0x4e8/0x930
> [ 6849.221737] worker_thread+0x519/0x7e0
> [ 6849.221749] kthread+0x18b/0x1d0
> [ 6849.221759] ret_from_fork+0x43/0x70
> [ 6849.221770] ret_from_fork_asm+0x1b/0x30
>
> [ 6849.221786] value changed: 0x00000000000154d0 -> 0x00000000000154d1
>
> [ 6849.221802] Reported by Kernel Concurrency Sanitizer on:
> [ 6849.221811] CPU: 28 PID: 5586 Comm: kworker/u64:0 Tainted: G L 6.5.0-rc6-net-cfg-kcsan-00038-g16931859a650 #35
> [ 6849.221825] Hardware name: ASRock X670E PG Lightning/X670E PG Lightning, BIOS 1.21 04/26/2023
> [ 6849.221833] Workqueue: events_unbound wq_barrier_func
> [ 6849.221846] ==================================================================

That looks like the PENDING bit. The setting is atomic. Maybe there's a raw
read? Can you map the addresses to lines?

Thanks.

--
tejun