Skip to content
This repository was archived by the owner on Nov 11, 2024. It is now read-only.

ext4: fix race writing to an inline_data file while its xattrs are ch… - #52

Open
JeevakaPrabu wants to merge 1 commit into
projectceladon:masterfrom
JeevakaPrabu:cve-2021-40490
Open

ext4: fix race writing to an inline_data file while its xattrs are ch…#52
JeevakaPrabu wants to merge 1 commit into
projectceladon:masterfrom
JeevakaPrabu:cve-2021-40490

Conversation

@JeevakaPrabu

Copy link
Copy Markdown
Contributor

…anging

commit a54c4613dac1500b40e4ab55199f7c51f028e848 upstream.

The location of the system.data extended attribute can change whenever
xattr_sem is not taken. So we need to recalculate the i_inline_off
field since it mgiht have changed between ext4_write_begin() and
ext4_write_end().

This means that caching i_inline_off is probably not helpful, so in
the long run we should probably get rid of it and shrink the in-memory
ext4 inode slightly, but let's fix the race the simple way for now.

Cc: stable@kernel.org
Fixes: f19d587 ("ext4: add normal write support for inline data")
Reported-by: syzbot+13146364637c7363a7de@syzkaller.appspotmail.com
Signed-off-by: Theodore Ts'o tytso@mit.edu
Signed-off-by: Greg Kroah-Hartman gregkh@linuxfoundation.org

…anging

commit a54c4613dac1500b40e4ab55199f7c51f028e848 upstream.

The location of the system.data extended attribute can change whenever
xattr_sem is not taken.  So we need to recalculate the i_inline_off
field since it mgiht have changed between ext4_write_begin() and
ext4_write_end().

This means that caching i_inline_off is probably not helpful, so in
the long run we should probably get rid of it and shrink the in-memory
ext4 inode slightly, but let's fix the race the simple way for now.

Cc: stable@kernel.org
Fixes: f19d587 ("ext4: add normal write support for inline data")
Reported-by: syzbot+13146364637c7363a7de@syzkaller.appspotmail.com
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
@sysopenci sysopenci added the Stale Stale label for inactive open prs label Sep 5, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

Stale Stale label for inactive open prs

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants