aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/samples/kobject/ssh:/git@git.zx2c4.com
diff options
context:
space:
mode:
authorKuniyuki Iwashima <kuniyu@google.com>2026-05-01 07:39:41 +0000
committerJakub Kicinski <kuba@kernel.org>2026-05-04 18:34:45 -0700
commitd82ba05263c69fa2437fe93e4e561cc40f4c03af (patch)
tree923e1148a21db16e7c26fe3121d7622512fb7225 /samples/kobject/ssh:/git@git.zx2c4.com
parentselftests: tls: add test for data loss on small pipe (diff)
af_unix: Set gc_in_progress to true in unix_gc().
Igor Ushakov reported that unix_gc() could run with gc_in_progress being false if the work is scheduled while running: Thread 1 Thread 2 Thread 3 -------- -------- -------- unix_schedule_gc() unix_schedule_gc() `- if (!gc_in_progress) `- if (!gc_in_progress) |- gc_in_progress = true | `- queue_work() | unix_gc() <----------------/ | | |- gc_in_progress = true ... `- queue_work() | | `- gc_in_progress = false | | unix_gc() <---------------------------------------------' | ... /* gc_in_progress == false */ | `- gc_in_progress = false unix_peek_fpl() relies on gc_in_progress not to confuse GC by MSG_PEEK. Let's set gc_in_progress to true in unix_gc(). Fixes: 8b90a9f819dc ("af_unix: Run GC on only one CPU.") Reported-by: Igor Ushakov <sysroot314@gmail.com> Signed-off-by: Kuniyuki Iwashima <kuniyu@google.com> Link: https://patch.msgid.link/20260501073945.1884564-1-kuniyu@google.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'samples/kobject/ssh:/git@git.zx2c4.com')
0 files changed, 0 insertions, 0 deletions