Commit 2e121c5
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 327de5b commit 2e121c5
1 file changed
+16
-0
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2192 | 2192 | | |
2193 | 2193 | | |
2194 | 2194 | | |
| 2195 | + | |
| 2196 | + | |
| 2197 | + | |
| 2198 | + | |
| 2199 | + | |
| 2200 | + | |
| 2201 | + | |
| 2202 | + | |
2195 | 2203 | | |
2196 | 2204 | | |
2197 | 2205 | | |
| |||
2201 | 2209 | | |
2202 | 2210 | | |
2203 | 2211 | | |
| 2212 | + | |
2204 | 2213 | | |
2205 | 2214 | | |
2206 | 2215 | | |
2207 | 2216 | | |
| 2217 | + | |
2208 | 2218 | | |
| 2219 | + | |
2209 | 2220 | | |
2210 | 2221 | | |
2211 | 2222 | | |
| 2223 | + | |
| 2224 | + | |
| 2225 | + | |
| 2226 | + | |
| 2227 | + | |
2212 | 2228 | | |
2213 | 2229 | | |
2214 | 2230 | | |
| |||
0 commit comments