rx: hold call->lock across RXS_PreparePacket

RX Security Classes have a right to assume that when RXS_PreparePacket
is called that they have exclusive access to the rx_call structure.
Commit e445faa68c unintentionally
failed to acquire the call->lock prior to RXS_PreparePacket being
called.

Change-Id: I5a9dfb2818fa17ba6fc1ab6f76ec5cde602c6f16
Reviewed-on: http://gerrit.openafs.org/6904
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Alistair Ferguson <alistair.ferguson@mac.com>
Reviewed-by: Jeffrey Altman <jaltman@secure-endpoints.com>
Tested-by: Jeffrey Altman <jaltman@secure-endpoints.com>
This commit is contained in:
Simon Wilkinson 2012-03-14 10:56:06 -04:00 committed by Jeffrey Altman
parent 317b227a20
commit 0fdcf171a8

View File

@ -2736,8 +2736,8 @@ rxi_PrepareSendPacket(struct rx_call *call,
}
if (len)
p->wirevec[i - 1].iov_len += len;
RXS_PreparePacket(conn->securityObject, call, p);
MUTEX_ENTER(&call->lock);
RXS_PreparePacket(conn->securityObject, call, p);
}
/* Given an interface MTU size, calculate an adjusted MTU size that