]> git.michaelhowe.org Git - packages/o/openafs.git/commit
volser transaction object race conditions
authorMichael Meffie <mmeffie@sinenomine.net>
Wed, 18 Nov 2009 15:07:14 +0000 (10:07 -0500)
committerRuss Allbery <rra@debian.org>
Mon, 30 Nov 2009 22:50:41 +0000 (14:50 -0800)
commited293165d26e327b20bc9b69fc82030f65911c9d
tree6b9cf45cfacbe700095f2216a7b932018a450a05
parent9c35021cd64f282e86466d6a517e3f3fd1a6c43a
volser transaction object race conditions

Fix the transaction object races between VolMonitor and the
volume operation procedures which can cause the volume
server to crash.

Add a per transaction object mutex to safely set the
transaction call pointer and name. Fix VolMonitor to safely
traverse the transaction list and to access the call pointer
and last proc name while copying info to send to the vos
client.  Fix the sleep thread to safely access the last proc
name.

FIXES 125479

Change-Id: I6dffa31a84d98249712dd17aad353f99151b4fd5
Reviewed-on: http://gerrit.openafs.org/619
Reviewed-by: Alistair Ferguson <alistair.ferguson@mac.com>
Reviewed-by: Tom Keiser <tkeiser@sinenomine.net>
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
Tested-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
src/volser/Makefile.in
src/volser/volmain.c
src/volser/volprocs.c
src/volser/volser.p.h
src/volser/voltrans.c
src/volser/voltrans_inline.h [new file with mode: 0644]