OpenAFS Master Repository branch, master, updated. openafs-devel-1_5_65-94-g6f2ce4c
Gerrit Code Review
gerrit@openafs.org
Mon, 19 Oct 2009 16:40:20 -0700 (PDT)
The following commit has been merged in the master branch:
commit 6f2ce4cdc216ad5a3e8ed09a011a5f0681f098b4
Author: Simon Wilkinson <sxw@inf.ed.ac.uk>
Date: Fri Oct 16 16:39:24 2009 +0100
Always unlock pages when returning from writepage
Writepage has a return path which returns an error with a locked
page. However, all returns that are not AOP_WRITEPAGE_ACTIVATE must
unlock their pages - using this codepath would leave a stray page lock,
which would eventually hang the machine.
The logic behind the -EIO return was also incorrect. In the Linux page
cache model, truncates simply reduce the size recorded in the inode. If
there are pages pending writeback then they may still have writepage() called
upon them - it's up to the writepage routine to discard the write
request (rather than returning an error)
Reviewed-on: http://gerrit.openafs.org/685
Tested-by: Derrick Brashear <shadow@dementia.org>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
src/afs/LINUX/osi_vnodeops.c | 44 +++++++++++++++++++++++++----------------
1 files changed, 27 insertions(+), 17 deletions(-)
--
OpenAFS Master Repository