OpenAFS Master Repository branch, master, updated. BP--openafs-stable-1_6_x-143-ge197c19
Gerrit Code Review
gerrit@openafs.org
Mon, 20 Sep 2010 22:07:26 -0700 (PDT)
The following commit has been merged in the master branch:
commit e197c19cedaafa0d2bb59212fb171083f2140041
Author: Jeffrey Altman <jaltman@your-file-system.com>
Date: Mon Sep 20 05:11:20 2010 -0700
Rx: Do not hold call lock across memcpy in rx_ReadProc/rx_WriteProc
1.4.x does not hold the call lock across memcpy operations in
rx_ReadProc, rx_ReadProc32, rx_WriteProc, rx_WriteProc32. The
claim is that the call curpos, curlen, and nLeft fields which
refer to the current packet being processed will not be touched
by any other thread. Therefore it is safe to drop the call lock
to permit another thread to add packets to the call while the memcpy
is performed in parallel.
This patchset continues to hold the call lock longer than the
original implementation but does drop it for the length of time
it takes to copy data from the packet buffer to the application
buffer.
Change-Id: I87dacdf541ba50db80ab55e500b38edab5126dc2
Reviewed-on: http://gerrit.openafs.org/2817
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
src/rx/rx_rdwr.c | 60 ++++++++++++++++++++++++++++++++++++++++++++---------
1 files changed, 49 insertions(+), 11 deletions(-)
--
OpenAFS Master Repository