From: Chris Malley Date: Wed, 26 Sep 2007 04:19:18 +0000 (+1000) Subject: lguest example launcher truncates block device file to 0 length on problems X-Git-Tag: v2.6.23-rc9~33 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f6a592e8abd2f2394623ce5427cbb4c265495974;p=linux-2.6 lguest example launcher truncates block device file to 0 length on problems The function should also use ftruncate64() rather than ftruncate() to prevent files over 4GB (not uncommon for a root filesystem) being zeroed. Signed-off-by: Chris Malley Signed-off-by: Rusty Russell Signed-off-by: Linus Torvalds --- diff --git a/Documentation/lguest/lguest.c b/Documentation/lguest/lguest.c index f7918401a0..73c5f1f3d5 100644 --- a/Documentation/lguest/lguest.c +++ b/Documentation/lguest/lguest.c @@ -882,7 +882,7 @@ static u32 handle_block_output(int fd, const struct iovec *iov, * of the block file (possibly extending it). */ if (off + len > device_len) { /* Trim it back to the correct length */ - ftruncate(dev->fd, device_len); + ftruncate64(dev->fd, device_len); /* Die, bad Guest, die. */ errx(1, "Write past end %llu+%u", off, len); }