diff options
author | Theodore Ts'o <tytso@mit.edu> | 2018-12-25 08:56:33 +0300 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2019-01-17 00:16:12 +0300 |
commit | 3897b4ae1fdc2cdc90594f817c69166855139c06 (patch) | |
tree | f0e174804c12678f90f03b8fb4bf7a329edcdb02 /net/sunrpc | |
parent | 6b22de54346b5d00e3fcf3b0bd0bc2958cc52c41 (diff) | |
download | linux-3897b4ae1fdc2cdc90594f817c69166855139c06.tar.xz |
ext4: fix a potential fiemap/page fault deadlock w/ inline_data
commit 2b08b1f12cd664dc7d5c84ead9ff25ae97ad5491 upstream.
The ext4_inline_data_fiemap() function calls fiemap_fill_next_extent()
while still holding the xattr semaphore. This is not necessary and it
triggers a circular lockdep warning. This is because
fiemap_fill_next_extent() could trigger a page fault when it writes
into page which triggers a page fault. If that page is mmaped from
the inline file in question, this could very well result in a
deadlock.
This problem can be reproduced using generic/519 with a file system
configuration which has the inline_data feature enabled.
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Cc: stable@kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'net/sunrpc')
0 files changed, 0 insertions, 0 deletions