summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Bushnell <thomas@gnu.org>1999-09-04 13:00:26 +0000
committerThomas Bushnell <thomas@gnu.org>1999-09-04 13:00:26 +0000
commit176b24ab0535a80d697f915223538ea70d92c49c (patch)
tree6f5b7e7ad43c4b68c301ce0422864ccd87183151
parentde729a3081fad384c86c90822c66cf48cf789c32 (diff)
1999-09-04 Thomas Bushnell, BSG <tb@mit.edu>
* pager.c (file_pager_write_page): Don't report errors on writes that extend past NODE->allocsize. This avoids a race between sync and truncate. Reported by Mark Kettenis <kettenis@wins.uva.nl>.
-rw-r--r--ext2fs/ChangeLog6
-rw-r--r--ext2fs/pager.c5
2 files changed, 7 insertions, 4 deletions
diff --git a/ext2fs/ChangeLog b/ext2fs/ChangeLog
index 46e8e9dc..86a8b2dd 100644
--- a/ext2fs/ChangeLog
+++ b/ext2fs/ChangeLog
@@ -1,3 +1,9 @@
+1999-09-04 Thomas Bushnell, BSG <tb@mit.edu>
+
+ * pager.c (file_pager_write_page): Don't report errors on writes
+ that extend past NODE->allocsize. This avoids a race between sync
+ and truncate. Reported by Mark Kettenis <kettenis@wins.uva.nl>.
+
1999-08-23 Roland McGrath <roland@baalperazim.frob.com>
* ext2_fs.h, ext2_fs_i.h: Replaced with Linux 2.3.14 versions.
diff --git a/ext2fs/pager.c b/ext2fs/pager.c
index f2315c90..8981390e 100644
--- a/ext2fs/pager.c
+++ b/ext2fs/pager.c
@@ -374,10 +374,7 @@ file_pager_write_page (struct node *node, vm_offset_t offset, void *buf)
pending_blocks_init (&pb, buf);
if (offset >= node->allocsize)
- {
- err = EIO;
- left = 0;
- }
+ left = 0;
else if (offset + left > node->allocsize)
left = node->allocsize - offset;