OpenAFS Master Repository branch, master, updated. openafs-devel-1_5_66-59-g5e99d56
Gerrit Code Review
gerrit@openafs.org
Thu, 12 Nov 2009 19:27:31 -0800 (PST)
The following commit has been merged in the master branch:
commit 5e99d56cf2a8c4c9789bc7ace04a804d07e6238f
Author: Simon Wilkinson <sxw@inf.ed.ac.uk>
Date: Wed Oct 21 23:17:15 2009 +0100
Use set_page_writeback and end_page_writeback
Calling set_page_writeback and end_page_writeback is necessary to
ensure that the dirty page radix tree and the page dirty flags
tally. The results of end_page_writeback are also used by the
bdi code to prioritise writeback. The Linux kernel
documentation contains further warnings of doom for what may
happen due to not calling them.
Adding set_page_writeback and end_page_writeback also allows us to
unlock the page earlier (the page can be locked any time after the
writeback flag is set). This means that we're not calling the
backing filesystem's ->write function with our pages locked, and
should help reduce contention and the potential for deadlocks there.
Change-Id: I9130b2ad9a09c6b9b16a0f63d7b4a614a93de8d3
Reviewed-on: http://gerrit.openafs.org/819
Reviewed-by: Marc Dionne <marc.c.dionne@gmail.com>
Tested-by: Marc Dionne <marc.c.dionne@gmail.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
src/afs/LINUX/osi_vnodeops.c | 27 +++++++++++++++++++--------
1 files changed, 19 insertions(+), 8 deletions(-)
--
OpenAFS Master Repository