mirror of
https://github.com/FEX-Emu/linux.git
synced 2024-12-20 00:11:22 +00:00
xfs: fix potential infinite loop in xfs_iomap_prealloc_size()
If freesp == 0, we could end up in an infinite loop while squashing
the preallocation. Break the loop when we've killed the prealloc
entirely.
Signed-off-by: Brian Foster <bfoster@redhat.com>
Reviewed-by: Dave Chinner <dchinner@redhat.com>
Signed-off-by: Ben Myers <bpm@sgi.com>
(cherry picked from commit e78c420bfc
)
This commit is contained in:
parent
6dbe51c251
commit
83cdadd8b0
@ -413,7 +413,7 @@ xfs_iomap_prealloc_size(
|
||||
* have a large file on a small filesystem and the above
|
||||
* lowspace thresholds are smaller than MAXEXTLEN.
|
||||
*/
|
||||
while (alloc_blocks >= freesp)
|
||||
while (alloc_blocks && alloc_blocks >= freesp)
|
||||
alloc_blocks >>= 4;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user