OpenAFS Master Repository branch, master, updated. openafs-devel-1_5_76-1973-g41d145b

Gerrit Code Review gerrit@openafs.org
Sat, 10 Dec 2011 06:45:33 -0800 (PST)


The following commit has been merged in the master branch:
commit 41d145b303d61aa6f8f336e4d66748dea860d08f
Author: Jeffrey Altman <jaltman@your-file-system.com>
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
    requests.
    
    With these changes no special logic in the redirector is required.
    
    Change-Id: I5405ecab754dca04f34afb024c4dacc3fe089088
    Reviewed-on: http://gerrit.openafs.org/6243
    Tested-by: BuildBot <buildbot@rampaginggeek.com>
    Reviewed-by: Jeffrey Altman <jaltman@secure-endpoints.com>
    Tested-by: Jeffrey Altman <jaltman@secure-endpoints.com>

 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