[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <161300160716.412.6891143842651326044.git-patchwork-notify@kernel.org>
Date: Thu, 11 Feb 2021 00:00:07 +0000
From: patchwork-bot+netdevbpf@...nel.org
To: Marco Elver <elver@...gle.com>
Cc: ast@...nel.org, daniel@...earbox.net, andrii@...nel.org,
kafai@...com, songliubraving@...com, yhs@...com,
john.fastabend@...il.com, kpsingh@...nel.org,
netdev@...r.kernel.org, bpf@...r.kernel.org,
linux-kernel@...r.kernel.org, kasan-dev@...glegroups.com,
paulmck@...nel.org, dvyukov@...gle.com,
syzbot+3536db46dfa58c573458@...kaller.appspotmail.com,
syzbot+516acdb03d3e27d91bcd@...kaller.appspotmail.com
Subject: Re: [PATCH] bpf_lru_list: Read double-checked variable once without lock
Hello:
This patch was applied to bpf/bpf-next.git (refs/heads/master):
On Tue, 9 Feb 2021 12:27:01 +0100 you wrote:
> For double-checked locking in bpf_common_lru_push_free(), node->type is
> read outside the critical section and then re-checked under the lock.
> However, concurrent writes to node->type result in data races.
>
> For example, the following concurrent access was observed by KCSAN:
>
> write to 0xffff88801521bc22 of 1 bytes by task 10038 on cpu 1:
> __bpf_lru_node_move_in kernel/bpf/bpf_lru_list.c:91
> __local_list_flush kernel/bpf/bpf_lru_list.c:298
> ...
> read to 0xffff88801521bc22 of 1 bytes by task 10043 on cpu 0:
> bpf_common_lru_push_free kernel/bpf/bpf_lru_list.c:507
> bpf_lru_push_free kernel/bpf/bpf_lru_list.c:555
> ...
>
> [...]
Here is the summary with links:
- bpf_lru_list: Read double-checked variable once without lock
https://git.kernel.org/bpf/bpf-next/c/6df8fb83301d
You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html
Powered by blists - more mailing lists