OpenAFS Master Repository branch, openafs-devel-1_7_x, updated. openafs-devel-1_7_2a-53-g506032b

Gerrit Code Review
Sat, 10 Dec 2011 11:41:24 -0800 (PST)

The following commit has been merged in the openafs-devel-1_7_x branch:
commit 8bc3dfc3d7e2f99edd8c1c293c03ee4813bb061a
Author: Jeffrey Altman <>
Date:   Fri Dec 9 18:40:42 2011 -0500

    Windows: Suspend/Resume for afsd_service
    The power mgmt events are received in the service.  The service
    can block all requests from the redirector from being processed
    until it knows that it is safe to process them.
    The service will receive a SERVICE_CONTROL_APMSUSPEND just before
    the system goes to sleep.  The service has two seconds to respond
    and it uses that time to attempt to send RXAFS_GiveUpAllCallBacks
    to all file servers as an rx_multi with no wait.  It also marks
    all servers down and updates the callback expirations to be just
    after the servers were marked down so that they will be forced to
    be refreshed when the server is marked up.
    Upon resume the service receives two events.  First,
    SERVICE_CONTROL_APMRESUMEAUTOMATIC which is used to perform an
    SMB lan adapter change detection and perform a probe of all down
    servers.  The second, SERVICE_CONTROL_APMRESUMESUSPEND is used to
    resume SMB listeners, perform a 2nd lan adapter change check (just
    in case), check the status of all down servers in additional
    networks have come up, and finally resume processing of redirector
    With these changes no special logic in the redirector is required.
    Tested-by: BuildBot <>
    Reviewed-by: Jeffrey Altman <>
    Tested-by: Jeffrey Altman <>
    (cherry picked from commit 41d145b303d61aa6f8f336e4d66748dea860d08f)
    Change-Id: I8a0d105c790c127320409e89913e399b7a35ffd5
    Tested-by: BuildBot <>
    Reviewed-by: Jeffrey Altman <>
    Tested-by: Jeffrey Altman <>

 src/WINNT/afsd/afsd_service.c               |   83 ++++++++++++++++++++++----
 src/WINNT/afsrdr/common/AFSUserPrototypes.h |    4 +
 src/WINNT/afsrdr/user/RDRInit.cpp           |   22 +++++++
 3 files changed, 96 insertions(+), 13 deletions(-)

OpenAFS Master Repository