Commit cead3be
gfs2: fiemap page fault fix
[ Upstream commit e411d74 ]
In gfs2_fiemap(), we are calling iomap_fiemap() while holding the inode
glock. This can lead to recursive glock taking if the fiemap buffer is
memory mapped to the same inode and accessing it triggers a page fault.
Fix by disabling page faults for iomap_fiemap() and faulting in the
buffer by hand if necessary.
Fixes xfstest generic/742.
Signed-off-by: Andreas Gruenbacher <agruenba@redhat.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>1 parent 8ce4da0 commit cead3be
1 file changed
+16
-0
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2073 | 2073 | | |
2074 | 2074 | | |
2075 | 2075 | | |
| 2076 | + | |
| 2077 | + | |
| 2078 | + | |
| 2079 | + | |
| 2080 | + | |
| 2081 | + | |
| 2082 | + | |
| 2083 | + | |
2076 | 2084 | | |
2077 | 2085 | | |
2078 | 2086 | | |
| |||
2082 | 2090 | | |
2083 | 2091 | | |
2084 | 2092 | | |
| 2093 | + | |
2085 | 2094 | | |
2086 | 2095 | | |
2087 | 2096 | | |
2088 | 2097 | | |
| 2098 | + | |
2089 | 2099 | | |
| 2100 | + | |
2090 | 2101 | | |
2091 | 2102 | | |
2092 | 2103 | | |
| 2104 | + | |
| 2105 | + | |
| 2106 | + | |
| 2107 | + | |
| 2108 | + | |
2093 | 2109 | | |
2094 | 2110 | | |
2095 | 2111 | | |
| |||
0 commit comments