* don't DebugBreak unless a debugger is attached
* replace afsdcell.ini with CellServDB in error message
* do not NetBIOS Reset adapters when checking to see if only the loopback
is in use because doing so breaks the existing LANA bind
* remove a deadlock in smb3.c
* do not retry dirty buffer writes when flushing in response to a suspend
* do not flush in response to a suspend when only the loopback is present
(cherry picked from commit 4f26bcfdb3c6a47d17f825e99f9d5a1bc97eba45)
fixup build dependencies for afsp_version.h
====================
This delta was composed from multiple commits as part of the CVS->Git migration.
The checkin message with each commit was inconsistent.
The following are the additional commit messages.
====================
fixup copyrights
(cherry picked from commit 5aa0347678c472d21b99af516c64578c4af41ea9)
fixes for aix pre 5.2 (statfs64), remove a c++ style comment (makes xlc sad) and
make clean target clean
(cherry picked from commit 453abf6aa149e27622745b818afb88019e22171a)
afsp_version.h is auto-generated
====================
This delta was composed from multiple commits as part of the CVS->Git migration.
The checkin message with each commit was inconsistent.
The following are the additional commit messages.
====================
fix product version generation
(cherry picked from commit c8a86da7f76a8e71d883cda39c10251b0910302c)
Secure Endpoints Inc. is contributing its AFS plug-in for KFW 3.1's
Network Identity Manager to OpenAFS under an MIT style license.
(cherry picked from commit f72c2fc3e75a13e3736a275df35597ad43f620fa)
FIXES 42312
iafs_InactiveVCache() calls afs_InvalidateAllSegments() which says
it should be called with the vnode locked. so the lock should
probably be moved to afs_InactiveVCache() so it can be droppped
before calling afs_remunlink().
(cherry picked from commit ac52e2f3c0bec9298d020de963036409165f380e)
prevent a stack overflow if the afsd_service does not successfully
start after a request to do so is issued.
(cherry picked from commit 3c13e5f0c0423d5e724ab224af22d7d3606ef1b0)
add debugging code that can be activated with #define DEBUG_REFCOUNT
to assist in debugging scache refcount leaks
(cherry picked from commit 8919e0d5175dae85991a3782f659621c5be4056f)
reformat some code; make sure that pointers are copied while
mutexes are held; ...
(cherry picked from commit b4007635064f08d4d0f019acc9888f0d4005708c)
#ifdef DEBUG_REFCOUNT the ref count log entries so they aren't always
compiled in
comment out the remaining location where the write lock on cm_scacheLock
is dropped in order to obtain the scache mutex on the object returned
from cm_GetNewSCache(). Dropping the lock results in more than one
thread being given the same cm_scache_t which is more dangerous than
blowing away the contents of the object without holding the mutex
ensure that cm_BufWrite is always called with a non-NULL scp. Add
an assertion to double check that we do it all the time.
(cherry picked from commit ffe26eb18da581d2df02f9531d97e31e1c6dee65)
replace all DebugBreak() calls with osi_panic.
remove calls to cm_RecycleSCache from VNOVNODE handler as its not
lock safe to drop and re-obtain locks to adhere to the locking
hierarchy
restore reference to CM_SCACHESYNC_STOREDATA that should
not have been removed.
remove attempts to adhere to locking hierarching from cm_GetNewSCache.
dropping the cm_scacheLock is too dangerous
add a check to ensure that the scache refcount is not zero if there
is a valid smb_fid_t pointing to it.
more debug logging
(cherry picked from commit b7117f61036c63238eb926c6eb71d42a56766501)
still tracking down issues when large numbers of temporary files
are created and deleted in the same directory from multiple
machines.
VNOVNODE must return CM_ERROR_BADFD
ensure that all calls to cm_GetCallback are made from cm_SyncOp.
add CM_SCACHESYNC_FORCECB logic to cm_SyncOp so that it can be
removed from cm_GetAccess
don't mix CM_SCACHESYNC_NEEDCALLBACK with CM_SCACHESYNC_STOREDATA
or CM_SCACHESYNC_FETCHDATA
(cherry picked from commit 4cd9eee0155edba89b77779af9aea4f1aa55cd96)
more cleanup from recent patches. comment out the recycling code because
it is not possible to implement it using the current locking hierarchy.
change cm_BufWrite to take a pointer to cm_scache_t instead of a fid
which must be used to look up a new reference to the cm_scache_t.
more often than not we already have the scp and in the one case we
don't we can let the caller look up the scp and then call cm_BufWrite
if it is found. If not, we have saved a function call and a bunch
of lock operations.
add a lot more logging.
improve the scp mutex handling within smb_CloseFID
(cherry picked from commit 38d464e5791dbd96d6da85a0c0123f8b575f4e39)