]> git.michaelhowe.org Git - packages/o/openafs.git/commitdiff
Zero rx_multi_lock before initializing it
authorBen Kaduk <kaduk@mit.edu>
Mon, 20 Dec 2010 00:29:17 +0000 (19:29 -0500)
committerDerrick Brashear <shadow@dementia.org>
Tue, 11 Jan 2011 16:31:28 +0000 (08:31 -0800)
FreeBSD's kernel debugging facilities will panic if it detects
an attempt to re-initialize an already-initialized lock, as detected
through some particular bits being nonzero.  Zero everything out
before starting, to prevent this panic.

Reviewed-on: http://gerrit.openafs.org/3550
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
(cherry picked from commit 37c20528df26a43ec81b8e0f7658f1516d3c1b39)

Change-Id: I7e78989c313269388808c26d521f4075c0749cd4
Reviewed-on: http://gerrit.openafs.org/3638
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
src/rx/rx_multi.c

index 56b8a8994a81fcef632e65322b3760500b8413d0..cb7186a0492baa4713857d123902a14ca00e7f2d 100644 (file)
@@ -42,6 +42,7 @@ multi_Init(struct rx_connection **conns, int nConns)
     mh = (struct multi_handle *)osi_Alloc(sizeof(struct multi_handle));
     if (!calls || !ready || !mh)
        osi_Panic("multi_Rx: no mem\n");
+    memset(mh, 0, sizeof(struct multi_handle));
     mh->calls = calls;
     mh->nextReady = mh->firstNotReady = mh->ready = ready;
     mh->nReady = 0;