diff options
author | Stephen Warren <swarren@nvidia.com> | 2014-06-11 18:46:16 (GMT) |
---|---|---|
committer | Tom Rini <trini@ti.com> | 2014-06-19 15:18:53 (GMT) |
commit | d018028055a21a28adef16b7f95422c426b46d60 (patch) | |
tree | 24546aa499a82610c0af24849a6239fc7cd09130 /arch | |
parent | 50babaf852e3b48680f7ea782a756043f64f8fe2 (diff) | |
download | u-boot-fsl-qoriq-d018028055a21a28adef16b7f95422c426b46d60.tar.xz |
fs: ext4: fix writing zero-length files
ext4fs_allocate_blocks() always allocates at least one block for a file.
If the file size is zero, this causes total_remaining_blocks to
underflow, which then causes an apparent hang while 2^32 blocks are
allocated.
To solve this, check that total_remaining_blocks is non-zero as part of
the loop condition (i.e. before each loop) rather than at the end of
the loop.
Signed-off-by: Stephen Warren <swarren@nvidia.com>
Diffstat (limited to 'arch')
0 files changed, 0 insertions, 0 deletions