Home
last modified time | relevance | path

Searched hist:aab154a442f9ba2a08fc130dbc8d178a33e10345 (Results 1 – 3 of 3) sorted by relevance

/linux/tools/testing/selftests/filesystems/
H A Dfile_stressor.caab154a442f9ba2a08fc130dbc8d178a33e10345 Mon Oct 21 13:54:46 CEST 2024 Christian Brauner <brauner@kernel.org> selftests: add file SLAB_TYPESAFE_BY_RCU recycling stressor

Add a simple file stressor that lives directly in-tree. This will create
a bunch of processes that each open 500 file descriptors and then use
close_range() to close them all.

Concurrently, other processes read /proc/<pid>/fd/ which rougly does

f = fget_task_next(p, &fd);
if (!f)
break;
data.mode = f->f_mode;
fput(f);

Which means that it'll try to get a reference to a file in another
task's file descriptor table.

Under heavy file load it is increasingly likely that the other task will
manage to close @file and @file will be recycled due to
SLAB_TYPEAFE_BY_RCU concurrently. This will trigger various warnings in
the file reference counting code.

Link: https://lore.kernel.org/r/20241021-vergab-streuen-924df15dceb9@brauner
Signed-off-by: Christian Brauner <brauner@kernel.org>
H A D.gitignorediff aab154a442f9ba2a08fc130dbc8d178a33e10345 Mon Oct 21 13:54:46 CEST 2024 Christian Brauner <brauner@kernel.org> selftests: add file SLAB_TYPESAFE_BY_RCU recycling stressor

Add a simple file stressor that lives directly in-tree. This will create
a bunch of processes that each open 500 file descriptors and then use
close_range() to close them all.

Concurrently, other processes read /proc/<pid>/fd/ which rougly does

f = fget_task_next(p, &fd);
if (!f)
break;
data.mode = f->f_mode;
fput(f);

Which means that it'll try to get a reference to a file in another
task's file descriptor table.

Under heavy file load it is increasingly likely that the other task will
manage to close @file and @file will be recycled due to
SLAB_TYPEAFE_BY_RCU concurrently. This will trigger various warnings in
the file reference counting code.

Link: https://lore.kernel.org/r/20241021-vergab-streuen-924df15dceb9@brauner
Signed-off-by: Christian Brauner <brauner@kernel.org>
H A DMakefilediff aab154a442f9ba2a08fc130dbc8d178a33e10345 Mon Oct 21 13:54:46 CEST 2024 Christian Brauner <brauner@kernel.org> selftests: add file SLAB_TYPESAFE_BY_RCU recycling stressor

Add a simple file stressor that lives directly in-tree. This will create
a bunch of processes that each open 500 file descriptors and then use
close_range() to close them all.

Concurrently, other processes read /proc/<pid>/fd/ which rougly does

f = fget_task_next(p, &fd);
if (!f)
break;
data.mode = f->f_mode;
fput(f);

Which means that it'll try to get a reference to a file in another
task's file descriptor table.

Under heavy file load it is increasingly likely that the other task will
manage to close @file and @file will be recycled due to
SLAB_TYPEAFE_BY_RCU concurrently. This will trigger various warnings in
the file reference counting code.

Link: https://lore.kernel.org/r/20241021-vergab-streuen-924df15dceb9@brauner
Signed-off-by: Christian Brauner <brauner@kernel.org>