Index: src/kernel/linux-2.6/pvfs2-utils.c
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/kernel/linux-2.6/pvfs2-utils.c,v
retrieving revision 1.156.8.4
diff -a -u -p -r1.156.8.4 pvfs2-utils.c
--- src/kernel/linux-2.6/pvfs2-utils.c	13 Jun 2011 20:01:54 -0000	1.156.8.4
+++ src/kernel/linux-2.6/pvfs2-utils.c	14 Jul 2011 17:45:27 -0000
@@ -2028,14 +2028,19 @@ void pvfs2_inode_finalize(pvfs2_inode_t 
 
 void pvfs2_op_initialize(pvfs2_kernel_op_t *op)
 {
-    op->io_completed = 0;
+    if( op )
+    {
+        spin_lock( &op->lock );
+        op->io_completed = 0;
 
-    op->upcall.type = PVFS2_VFS_OP_INVALID;
-    op->downcall.type = PVFS2_VFS_OP_INVALID;
-    op->downcall.status = -1;
+        op->upcall.type = PVFS2_VFS_OP_INVALID;
+        op->downcall.type = PVFS2_VFS_OP_INVALID;
+        op->downcall.status = -1;
 
-    op->op_state = OP_VFS_STATE_UNKNOWN;
-    op->tag = 0;
+        op->op_state = OP_VFS_STATE_UNKNOWN;
+        op->tag = 0;
+        spin_unlock( &op->lock );
+    }
 }
 
 void pvfs2_make_bad_inode(struct inode *inode)
