]> git.michaelhowe.org Git - packages/o/openafs.git/commit
RX: Avoid timing out non-kernel busy channels
authorAndrew Deason <adeason@sinenomine.net>
Mon, 7 Mar 2011 17:08:26 +0000 (11:08 -0600)
committerDerrick Brashear <shadow@dementia.org>
Wed, 9 Mar 2011 12:58:25 +0000 (04:58 -0800)
commitc0aa61b7914c724b192c78d67b3bc963be4dbcd5
treecd5b633f6b992d06afd784dd5e7620b6f7fab02a
parent3260065941c65434c9124fb51559b0519e77fa9b
RX: Avoid timing out non-kernel busy channels

When we encounter a "busy" call channel (indicated by receiving
RX_PACKET_TYPE_BUSY packets), we can error out a call with
RX_CALL_TIMEOUT to try and get the application code to retry the call.
However, many RX applications are not aware of this, and will just
fail with an error upon receiving a single busy packet.

So instead, make this behavior optional, and only do it if the
application tells us what specific error it expects to receive when a
busy call channel is detected. Enable this behavior for the Unix cache
manager, as it can cope with receiving an RX_CALL_TIMEOUT error in
this scenario.

Bump shlibafsrpc minor version to 5 instead of 3, so we don't collide
with the shlibafsrpc versions on the master branch.

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

Change-Id: I38981ad3e3c2cbb03c516c02481a2f44cb5f9acf
Reviewed-on: http://gerrit.openafs.org/4182
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
src/afs/afs_call.c
src/afs/afs_pag_call.c
src/libafsrpc/afsrpc.def
src/libafsrpc/afsrpc.exp
src/rx/rx.c
src/rx/rx_prototypes.h
src/shlibafsrpc/Makefile.in
src/shlibafsrpc/libafsrpc.map