ext4: ENOSPC error handling for writing to an uninitialized extent
authorAneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Tue, 29 Apr 2008 12:11:12 +0000 (08:11 -0400)
committerTheodore Ts'o <tytso@mit.edu>
Tue, 29 Apr 2008 12:11:12 +0000 (08:11 -0400)
commit093a088b76352e0a6fdca84eb78b3aa65fbe6dd1
tree18b9266ce90cb63726c8b6e0e7a026d11ed66a40
parent35802c0b2bab71695f131f981d95fcea7432c99b
ext4: ENOSPC error handling for writing to an uninitialized extent

This patch handles possible ENOSPC errors when writing to an
uninitialized extent in case the filesystem is full.

A write to a prealloc area causes the split of an unititalized extent
into initialized and uninitialized extents.  If we don't have
space to add new extent information, instead of returning error,
convert the existing uninitialized extent to initialized one.  We
need to zero out the blocks corresponding to the entire extent to
prevent uninitialized data reaching userspace.

Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Signed-off-by: Mingming Cao <cmm@us.ibm.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
fs/ext4/extents.c