[XFS] Fix sub-block zeroing for buffered writes into unwritten extents.
authorDavid Chinner <dgc@sgi.com>
Sat, 10 Feb 2007 07:36:35 +0000 (18:36 +1100)
committerTim Shimmin <tes@sgi.com>
Sat, 10 Feb 2007 07:36:35 +0000 (18:36 +1100)
commit549054afadae44889c0b40d4c3bfb0207b98d5a0
treefe82d3c74b4ac1412746e29300df9ca725603d2f
parent5478eead8528f6cb5ebe3015fb88b68b175e1093
[XFS] Fix sub-block zeroing for buffered writes into unwritten extents.

When writing less than a filesystem block of data into an unwritten extent
via buffered I/O, __xfs_get_blocks fails to set the buffer new flag. As a
result, the generic code will not zero either edge of the block resulting
in garbage being written to disk either side of the real data. Set the
buffer new state on bufferd writes to unwritten extents to ensure that
zeroing occurs.

SGI-PV: 960328
SGI-Modid: xfs-linux-melb:xfs-kern:28000a

Signed-off-by: David Chinner <dgc@sgi.com>
Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>
Signed-off-by: Tim Shimmin <tes@sgi.com>
fs/xfs/linux-2.6/xfs_aops.c