]> git.michaelhowe.org Git - packages/o/openafs.git/log
packages/o/openafs.git
17 years agoDEVEL15-windows-vnovol-20080912
Jeffrey Altman [Sat, 13 Sep 2008 05:20:48 +0000 (05:20 +0000)]
DEVEL15-windows-vnovol-20080912

LICENSE MIT

The cm_serverRef_t list reference counts were undercounting and
prematurely freeing the server lists for volumes that experienced
VNOVOL and VMOVED errors.  cm_Analyze() must release the server
list before forcibly updating the volume location info.  Otherwise,
the list that gets freed is the old one concatenated with the new
one.

Add more trace messages.

(cherry picked from commit 1456a67c5ca024c523e0fc3edcba720780d4be9e)

17 years agoDEVEL15-windows-service-procs-20080912
Jeffrey Altman [Fri, 12 Sep 2008 15:41:30 +0000 (15:41 +0000)]
DEVEL15-windows-service-procs-20080912

LICENSE MIT

if we are going to use hot threads it would be useful if there were
some additional server threads available to become listeners as
needed.

(cherry picked from commit fd55471b57bce441454d7b3c72c7be6a66aad65d)

17 years agoDEVEL15-redhat-mockbuild-dksm-20080912
Simon Wilkinson [Fri, 12 Sep 2008 14:07:40 +0000 (14:07 +0000)]
DEVEL15-redhat-mockbuild-dksm-20080912

LICENSE IPL10

make mockbuild do the dkms rpms also

(cherry picked from commit 11b45ad09b7d257a476ddb57e48133ecf88375f7)

17 years agoDEVEL15-windows-dir-new-pages-20080911
Asanka Herath [Fri, 12 Sep 2008 05:09:44 +0000 (05:09 +0000)]
DEVEL15-windows-dir-new-pages-20080911

LICENSE MIT

A small patch to permit the directory package to allocate additional
directory pages when adding new entries that do not fit in the pages
that were obtained from the file server.

(cherry picked from commit 7ae4174d95a9d90e16f0ddc66648741a119339d2)

17 years agoDEVEL15-windows-vnovol-20080911
Jeffrey Altman [Thu, 11 Sep 2008 18:26:21 +0000 (18:26 +0000)]
DEVEL15-windows-vnovol-20080911

LICENSE MIT

Modify MSG_SERVER_REPORTS_VNOVOL to mention that the volume may
have been moved or deleted.

In cm_Analyze(), do not call cm_ForceUpdateVolume() or force a retry
when processing CM_ERROR_NOSUCHVOLUME.  This CM error value is the
result of a VNOVOL already being processed which would have forced
the update.

When a VMOVED or VNOVOL error is received, remove the volume id from
the server's volume list.

If cm_ForceUpdateVolume() returns a failure, do not retry if a
VMOVED or VNOVOL error was received.

Make sure that if a cm_serverRef_t object is marked srv_deleted
that its references not be used.

Now that cm_ForceUpdateVolume() is being called only when processing
VMOVED and VNOVOL errors, permit it to call cm_UpdateVolumeLocation()
immediately.

Refactor cm_CheckOfflineVolume() to reduce code duplication.

(cherry picked from commit 5ea02ad1e2bdb98bea27e11c1372f90d1940de17)

17 years agoDEVEL15-windows-flush-btrees-20080911
Jeffrey Altman [Thu, 11 Sep 2008 18:11:15 +0000 (18:11 +0000)]
DEVEL15-windows-flush-btrees-20080911

LICENSE MIT

fs flushall, fs flushvolume, and fs flush should tear down directory
B+ trees so that when the data buffers are re-read from the file server
with the same data version, the B+ trees will be rebuilt.

(cherry picked from commit 186f1e97d0c15ead6bddae8697161a47ce9a80e4)

17 years agoDEVEL15-windows-cell-list-validation-20080911
Jeffrey Altman [Thu, 11 Sep 2008 18:05:32 +0000 (18:05 +0000)]
DEVEL15-windows-cell-list-validation-20080911

LICENSE MIT

correct cell list validation now that the free cell list exists

(cherry picked from commit d85bdb4c9f9ddf7d287072a3d12e65423e551f40)

17 years agoDEVEL15-windows-rx-jumbo-20080911
Jeffrey Altman [Thu, 11 Sep 2008 18:00:44 +0000 (18:00 +0000)]
DEVEL15-windows-rx-jumbo-20080911

LICENSE MIT

Disable rx jumbo by default.  Permit rx jumbo to be enabled with
registry value "RxJumbo" set to 1 or "RxNoJumbo" set to 0.

RxNoJumbo has priority.

(cherry picked from commit 8e1b48ad0ab7f3790729ea0feb25256b3a9da709)

17 years agoDEVEL15-windows-multi-check-server-20080911
Jeffrey Altman [Thu, 11 Sep 2008 17:52:45 +0000 (17:52 +0000)]
DEVEL15-windows-multi-check-server-20080911

LICENSE MIT

Permit rx_multi check server to be toggled via a registry setting
at checked prior to each invocation.  "MultiCheckServers".
Default is on.

Remove volume status updates for vldb server status changes.

(cherry picked from commit 59c1c22747b8aaf1da31f97d8a3ea178a4f7adee)

17 years agoDEVEL15-aix-export-build-fix-20080906
Derrick Brashear [Sat, 6 Sep 2008 12:59:13 +0000 (12:59 +0000)]
DEVEL15-aix-export-build-fix-20080906

LICENSE IPL10

add missing ; to case actions

(cherry picked from commit f51e8e7be5b16f84f0603a0e8bc1be4ffafac617)

17 years agoDEVEL15-syncserv-syncvldb-manpages-dryrun-20080906
Derrick Brashear [Sat, 6 Sep 2008 12:51:27 +0000 (12:51 +0000)]
DEVEL15-syncserv-syncvldb-manpages-dryrun-20080906

LICENSE IPL10

make syncserv and syncvldb manpages reflect dryrun option

(cherry picked from commit 4119d9742b3e17fac6a3f1f7ab64ec829f085498)

17 years agoDEVEL15-windows-vnovol-20080905
Jeffrey Altman [Sat, 6 Sep 2008 05:25:59 +0000 (05:25 +0000)]
DEVEL15-windows-vnovol-20080905

LICENSE MIT

force a volume location update upon receipt of a VNOVOL error
in case the volume was moved.  VMOVED is only returned by the file
server if the volume is in the process of being moved.  Once it has
been deleted the file server returns VNOVOL.

(cherry picked from commit 0860d5b5b17ef5f58592d739424a4cca8dd91bb5)

17 years agoDEVEL15-fileserver-sticky-bit-admin-only-20080905
Derrick Brashear [Fri, 5 Sep 2008 17:57:55 +0000 (17:57 +0000)]
DEVEL15-fileserver-sticky-bit-admin-only-20080905

LICENSE IPL10

do restrict the sticky bit to admins.

(cherry picked from commit 5c2406070fc08c5fee0a09a1aa25e16af123b81a)

17 years agoDEVEL15-windows-smb-volname-20080904
Jeffrey Altman [Thu, 4 Sep 2008 21:09:13 +0000 (21:09 +0000)]
DEVEL15-windows-smb-volname-20080904

LICENSE MIT

Advertise the correct length for the volume name.  Do not include the NUL.

Add more create option values as #defines.

(cherry picked from commit beef54e70cc86672b9971288fe4034829186aa41)

17 years agoDEVEL15-fileserver-sticky-bit-not-admin-only-20080904
Derrick Brashear [Thu, 4 Sep 2008 20:41:26 +0000 (20:41 +0000)]
DEVEL15-fileserver-sticky-bit-not-admin-only-20080904

LICENSE IPL10

don't restrict the sticky bit to admins.

(cherry picked from commit 9689e78d716422970a0ae3ad89d36acaa517072e)

17 years agoDEVEL15-windows-cell-locking-20080903
Jeffrey Altman [Wed, 3 Sep 2008 22:04:51 +0000 (22:04 +0000)]
DEVEL15-windows-cell-locking-20080903

LICENSE MIT

fix a lock order issue and protect the timeout and flags field
of cm_cell_t with the mutex instead of the global lock.

(cherry picked from commit bbd713ad3f403c9137e01797f576f5dbd04a0f08)

17 years agoDEVEL15-windows-smb-lock-order-20080903
Jeffrey Altman [Wed, 3 Sep 2008 21:41:04 +0000 (21:41 +0000)]
DEVEL15-windows-smb-lock-order-20080903

LICENSE MIT

another lock order violation to fix

(cherry picked from commit 441cc643e027ab98ed14ab486ec077bbbd0c0d4f)

17 years agoDEVEL15-aix61-old-build-system-20080903
Derrick Brashear [Wed, 3 Sep 2008 20:35:32 +0000 (20:35 +0000)]
DEVEL15-aix61-old-build-system-20080903

LICENSE IPL10

massage in support for pinstall

17 years agoDEVEL15-aix61-initial-support-20080903
Niklas Edmundsson [Wed, 3 Sep 2008 19:27:02 +0000 (19:27 +0000)]
DEVEL15-aix61-initial-support-20080903

LICENSE IPL10
FIXES 113638

aix 6.1 support

(cherry picked from commit 539535cf679d6e70f34b80b74c127efae1f0bba2)

17 years agoDEVEL15-rx-mutex-init-once-20080903
Jeffrey Altman [Wed, 3 Sep 2008 19:07:23 +0000 (19:07 +0000)]
DEVEL15-rx-mutex-init-once-20080903

LICENSE IPL10
FIXES 114555

because rx_Finalize doesn't clean up, we end up reiniting mutexes. use
pthread_once when not in the kernel.
(kernel does not now call rx_Finalize, ever)

(cherry picked from commit 7f4e0dfc3ef1464c8d8b422bf00915fa4538090c)

17 years agoDEVEL15-linux26-libafs-makefileproto-trust-kbuild-system-no-really-20080903
Derrick Brashear [Wed, 3 Sep 2008 17:59:18 +0000 (17:59 +0000)]
DEVEL15-linux26-libafs-makefileproto-trust-kbuild-system-no-really-20080903

LICENSE IPL10

if we are really not using COMMON_KERN_CFLAGS and being trusting, let's do so.

(cherry picked from commit 995ee981fd2631d6e1e45311cee0a6d58f4a56be)

17 years agoDEVEL15-windows-afsd-dns-env-20080902
Jeffrey Altman [Tue, 2 Sep 2008 23:35:36 +0000 (23:35 +0000)]
DEVEL15-windows-afsd-dns-env-20080902

LICENSE MIT

Fix the conditionals so that the right thing happens if AFS_AFSDB_ENV
is not defined.

(cherry picked from commit 9803e84e63c28e87c76e6f4e77343fec4ef4dcf4)

17 years agoDEVEL15-windows-fs-setcrypt-auth-20080902
Jeffrey Altman [Tue, 2 Sep 2008 22:25:55 +0000 (22:25 +0000)]
DEVEL15-windows-fs-setcrypt-auth-20080902

LICENSE MIT

fix parsing and display of fs setcrypt auth

(cherry picked from commit 8bf17e7c813f9b2aa8a953a8d0251322ee970d2c)

17 years agoDEVEL15-smb-string-conversion-20080902
Jeffrey Altman [Tue, 2 Sep 2008 22:21:34 +0000 (22:21 +0000)]
DEVEL15-smb-string-conversion-20080902

LICENSE MIT

more cases where -1 should be passed in as opposed to the strlen value
when converting between char and wchar forms

(cherry picked from commit 84e10d582abdf65a5354b1c4b41d7e2ecad532f8)

17 years agoDEVEL15-windows-rxkad-auth-20080902
Jeffrey Altman [Tue, 2 Sep 2008 22:16:18 +0000 (22:16 +0000)]
DEVEL15-windows-rxkad-auth-20080902

LICENSE MIT

Add ability for users to select rxkad auth only mode.
"fs setcrypt auth".

(cherry picked from commit d94b9a78188357f87fa569ec7738d4e69ff05faa)

17 years agoDEVEL15-windows-afsd-init-20080902
Jeffrey Altman [Tue, 2 Sep 2008 22:09:13 +0000 (22:09 +0000)]
DEVEL15-windows-afsd-init-20080902

LICENSE MIT

report state of "Rx Jumbo" and "RxExtraPackets" more often

(cherry picked from commit 21abc0e0b51cd3fd014b06b187d497996058ffe4)

17 years agoDEVEL15-windows-cell-free-list-20080902
Jeffrey Altman [Tue, 2 Sep 2008 21:18:33 +0000 (21:18 +0000)]
DEVEL15-windows-cell-free-list-20080902

LICENSE MIT

add a free list to the cm_cell_t structure.  if during cm_GetCellGen()
the cm_SearchCellXXX() calls fail, store the allocated cm_cell_t object
on a free list so that it can be reused for the next request.

(cherry picked from commit e31826d3331b8eb1893c627ac55eb299df88995b)

17 years agoDEVEL15-windows-cell-alloc-reversed-20080902
Jeffrey Altman [Tue, 2 Sep 2008 17:34:41 +0000 (17:34 +0000)]
DEVEL15-windows-cell-alloc-reversed-20080902

LICENSE MIT

The approach taken in windows-cell-alloc-20080902 won't work.

(cherry picked from commit 829ff4e54f055de1dc26a1508d2abf4a3c72ff75)

17 years agoDEVEL15-windows-cell-alloc-20080902
Jeffrey Altman [Tue, 2 Sep 2008 16:21:39 +0000 (16:21 +0000)]
DEVEL15-windows-cell-alloc-20080902

LICENSE MIT

Perform the initial cm_SearchCellXXX call using a temporary cm_cell_t
object in case the search fails.

(cherry picked from commit ef64f50fb9f477a0acbe1223ee2b0c9981f9324e)

17 years agoDEVEL15-windows-smb-free-lsa-response-20080901
Jeffrey Altman [Mon, 1 Sep 2008 13:39:39 +0000 (13:39 +0000)]
DEVEL15-windows-smb-free-lsa-response-20080901

LICENSE MIT

Whether or not LsaCallAuthenticationPackage succeeds, it may return
a response buffer.  If it does, free it.

(cherry picked from commit a653057ff453a0d340c8153615aa44ae1679c892)

17 years agoDEVEL15-windows-afsd-init-lock-order-validation-20080830
Jeffrey Altman [Sat, 30 Aug 2008 15:14:43 +0000 (15:14 +0000)]
DEVEL15-windows-afsd-init-lock-order-validation-20080830

LICENSE MIT

Add TransarcAFSDaemon/Parameters key "LockOrderValidation" DWORD
to control lock order validation functionality.  Defaults to off
for release builds and on for checked builds.

(cherry picked from commit 83dadab93adde0812f9ae228667683cfcc761f67)

17 years agoDEVEL15-windows-lock-order-validation-20080830
Jeffrey Altman [Sat, 30 Aug 2008 15:05:14 +0000 (15:05 +0000)]
DEVEL15-windows-lock-order-validation-20080830

LICENSE MIT

Add osi_SetLockOrderValidation(int) to permit lock order validation
to be turned on and off.  Must be executed before the first lock
is obtained.

(cherry picked from commit a36596f10ff4d87d75a808cabe4e0e5ec661c5df)

17 years agoDEVEL15-windows-buf-shutdown-20080829
Jeffrey Altman [Sat, 30 Aug 2008 03:15:07 +0000 (03:15 +0000)]
DEVEL15-windows-buf-shutdown-20080829

LICENSE MIT

During buf_Shutdown() all dirty buffers should be written to the file
server if they can be.

(cherry picked from commit ccdf50ade371de595abe20f5a6b0ff149ce9ae79)

17 years agoDEVEL15-windows-afsd-shutdown-20080829
Jeffrey Altman [Sat, 30 Aug 2008 03:06:28 +0000 (03:06 +0000)]
DEVEL15-windows-afsd-shutdown-20080829

LICENSE MIT

reorganize the service shutdown order to permit dirty buffers to be
flushed to the file server without competition from incoming requests.

(cherry picked from commit 2da64d02a2707a3c9220951a30b5cea8464b9ef9)

17 years agoDEVEL15-windows-check-servers-20080828
Jeffrey Altman [Thu, 28 Aug 2008 10:47:41 +0000 (10:47 +0000)]
DEVEL15-windows-check-servers-20080828

LICENSE MIT

if the server count is zero, don't both trying

(cherry picked from commit 00fee5efee68f1647fa810dffa7ad991235d01c5)

17 years agoDEVEL15-windows-check-server-heap-overwrite2-20080827
Jeffrey Altman [Thu, 28 Aug 2008 00:44:03 +0000 (00:44 +0000)]
DEVEL15-windows-check-server-heap-overwrite2-20080827

LICENSE MIT

the incorporation of nconns into the foo incremental was a mistake

(cherry picked from commit 43eb87a916b87c6037841ea38cde616014d892a8)

17 years agoDEVEL15-windows-check-server-heap-overwrite-20080827
Jeffrey Altman [Wed, 27 Aug 2008 23:09:56 +0000 (23:09 +0000)]
DEVEL15-windows-check-server-heap-overwrite-20080827

LICENSE MIT

Protect against a heap overwrite that could occur is the number of file
servers or vldb servers grows while the maximum number of connections
is computed and when the connection list is populated.

(cherry picked from commit e68255c12c444e36b7ca7f1864d964cd3a0bcda8)

17 years agoDEVEL15-windows-callback-lock-order-20080827
Jeffrey Altman [Wed, 27 Aug 2008 23:03:19 +0000 (23:03 +0000)]
DEVEL15-windows-callback-lock-order-20080827

LICENSE MIT

do not hold cm_server_t mutex when calling cm_FindVolumeByID because
the cm_volume_t lock must be obtained ahead of the cm_server_t mutex

(cherry picked from commit 0affa4b86a08c3be9cb4edc4c9f680ae02a2fcd8)

17 years agoDEVEL15-windows-lock-order-20080827
Jeffrey Altman [Wed, 27 Aug 2008 13:18:04 +0000 (13:18 +0000)]
DEVEL15-windows-lock-order-20080827

LICENSE MIT

do not hold cm_scacheLock while obtaining cm_scache_t->rw

(cherry picked from commit c50857b05e6636bef864c9418b21d1bf3c63494a)

17 years agoDEVEL15-windows-short-names-20080827
Jeffrey Altman [Wed, 27 Aug 2008 12:49:20 +0000 (12:49 +0000)]
DEVEL15-windows-short-names-20080827

LICENSE MIT

plus and equal are not valid characters in short names.
we replace them with left and right brace in order to
minimize the instability in the file names.

(cherry picked from commit bef68684fd7bb4e58e621766a0f2abbdfd15af80)

17 years agoDEVEL15-freebsd-70-client-20080826
Matt Benjamin [Tue, 26 Aug 2008 15:59:52 +0000 (15:59 +0000)]
DEVEL15-freebsd-70-client-20080826

LICENSE IPL10

FreeBSD 7.0 client support (and 8.0 support but that's a moving target)

(cherry picked from commit a123bd8ccde0d6baf04401201b1672b19e9778db)

17 years agoDEVEL15-studio12-solaris-updates-20080826
Tom Keiser [Tue, 26 Aug 2008 15:11:46 +0000 (15:11 +0000)]
DEVEL15-studio12-solaris-updates-20080826

LICENSE IPL10
FIXES 113671

update so we build with studio 12 on solaris

(cherry picked from commit 4d245c6a19394d54a241bd612016b10d1113ee7b)

17 years agoDEVEL15-linux-rpm-make-dkms-remove-work-20080826
Derrick Brashear [Tue, 26 Aug 2008 14:44:43 +0000 (14:44 +0000)]
DEVEL15-linux-rpm-make-dkms-remove-work-20080826

LICENSE IPL10

rpm -e failed because of a typo here when removing our dkms rpm

(cherry picked from commit 82c62ae0e3b6366c9cdef0569e5be4637127e586)

17 years agoDEVEL15-windows-scache-lock-20080825
Jeffrey Altman [Tue, 26 Aug 2008 05:56:42 +0000 (05:56 +0000)]
DEVEL15-windows-scache-lock-20080825

LICENSE MIT

restore a missing obtain write lock

(cherry picked from commit e16c4f8a96f0568d5f7155c88f9b877baa500b7d)

17 years agoDEVEL15-windows-misc-20080825
Jeffrey Altman [Tue, 26 Aug 2008 05:38:44 +0000 (05:38 +0000)]
DEVEL15-windows-misc-20080825

LICENSE MIT

avoid a deadlock in cm_GiveUpAllCallbacks

log UAEEXIST / EEXIST in cm_Analyze

(cherry picked from commit e0380d54bad50582b6bc39e2b41e78d72117ec79)

17 years agoDEVEL15-windows-client-osi-20080825
Jeffrey Altman [Tue, 26 Aug 2008 05:16:02 +0000 (05:16 +0000)]
DEVEL15-windows-client-osi-20080825

LICENSE MIT

add more asserts to attempt to catch locks released in threads other
than the one that obtained them.

(cherry picked from commit cb455744d49f250c236ab24cdcfffda104ef3774)

17 years agoDEVEL15-server-argument-consistency-and-jumbograms-off-20080824
Derrick Brashear [Mon, 25 Aug 2008 02:14:59 +0000 (02:14 +0000)]
DEVEL15-server-argument-consistency-and-jumbograms-off-20080824

LICENSE IPL10
FIXES 108703

go through and make servers able to take debug log level on command line;
add -jumbo; default to -nojumbo

(cherry picked from commit 12c8abc69030d3368194b148c692215c61b5da9c)

17 years agoDEVEL15-windows-smb-more-check-open-done-20080824
Jeffrey Altman [Sun, 24 Aug 2008 22:46:42 +0000 (22:46 +0000)]
DEVEL15-windows-smb-more-check-open-done-20080824

LICENSE MIT

call cm_CheckNTOpenDone() in error conditions as well

(cherry picked from commit a88d12746a9e7e8e79a80c5bcafda449810b4e22)

17 years agoDEVEL15-windows-prefetch-lock-order-20080824
Jeffrey Altman [Sun, 24 Aug 2008 18:47:43 +0000 (18:47 +0000)]
DEVEL15-windows-prefetch-lock-order-20080824

LICENSE MIT

lock order violation between cm_daemonLock and cm_scache_t rw lock

(cherry picked from commit 82741251b1f444a1f18e3b9816f8cadac3e168b5)

17 years agoDEVEL15-windows-smb-locks-20080224
Jeffrey Altman [Sun, 24 Aug 2008 17:33:06 +0000 (17:33 +0000)]
DEVEL15-windows-smb-locks-20080224

LICENSE MIT

smb_dirSearch_t refCount field is protected by smb_globalLock not the
smb_dirSearch_t mutex.

Do not hold the smb_fid_t mutex across calls to smb_NotifyChange()

(cherry picked from commit 24f8b1b4c327c3fb01a575ccb46d5ae6bf7edd36)

17 years agoDEVEL15-windows-check-nt-open-lock-sync-20080224
Jeffrey Altman [Sun, 24 Aug 2008 17:27:24 +0000 (17:27 +0000)]
DEVEL15-windows-check-nt-open-lock-sync-20080224

LICENSE MIT

Move cm_SyncOpDone(CM_SCACHESYNC_LOCK) from cm_CheckNTOpen to
cm_CheckNTOpenDone.  This is necessary to synchronize lock operations.

(cherry picked from commit cc48a5a3b4d328127ca56c1a5845ec6cac136548)

17 years agoDEVEL15-darwin-fake-afs-bigger-20080822
Derrick Brashear [Fri, 22 Aug 2008 20:26:48 +0000 (20:26 +0000)]
DEVEL15-darwin-fake-afs-bigger-20080822

LICENSE IPL10
FIXES 112564

set up max uint64 "free" in afs so finder isn't dumb.

(cherry picked from commit 186f707378ce0c04705170743cbc67ff44e1c93f)

17 years agoDEVEL15-analyze-srvr-safety-check-20080822
Derrick Brashear [Fri, 22 Aug 2008 19:52:57 +0000 (19:52 +0000)]
DEVEL15-analyze-srvr-safety-check-20080822

LICENSE IPL10
FIXES 112681

safety check to make sure a conn's srvr is set before dereferencing it

(cherry picked from commit ea81e608bae42ea84d7bc85d289bfe6f24d8d383)

17 years agoDEVEL15-windows-misc-20080822
Jeffrey Altman [Fri, 22 Aug 2008 19:10:00 +0000 (19:10 +0000)]
DEVEL15-windows-misc-20080822

LICENSE MIT

1. In multi-threaded applications deadlocking is always a problem.
Deadlock avoidance requires a strict adherence to a documented
hierarchy.  The lock hierarchy for OAFW is described in a file
called locks.txt.  There are two problems.  First, some of the
locks are not included in locks.txt.  Second, it is nearly
impossible given the depth of function calls for any programmer
 to identify all of the locks that are held at any given time
a function is called.  This patch implements a new locking order
verification mechanism.  Each lock is assigned a lock level at
initialization.  Each thread maintains a queue of held locks.
Each time a lock is acquired the queue is checked to ensure that
no locks with a higher level than the requested lock has already
been acquired.  If a violation occurs, the service panics.

2. When the service panics ensure that a minidump will always be generated.

3. Remove unused lock cm_bufGetMutex.

4. The lock order verifier identified approximately a dozen
lock order violations that are corrected.

5. A race condition within the function path cm_GetSCache() ->
cm_GetNewSCache() -> cm_RecycleSCache() permitted a cm_scache_t
object to be issued simultaneously to two threads.  This would
eventually result in a panic due to the resulting under count.

6. Fix interpretation of the empty string as the ioctl path to
mean the current directory.   "fs lsm", "symlink list", etc.
now return a "not a ..." error instead of "does not exist".

7. Add SMB_STRF_SRCNULTERM flag to smb_ParseStringXXX functions
to indicate that the input string is a nul terminated string.
Assign it when input strings are nul terminated.

8. The CIFS protocol specification for handling NT_TRANSACT_CREATE
does not match the observed behavior.  The 'nameLength' is specified
in bytes not in characters.  Fix the implementation to match.

9. The cm_HaveAccessRights() attempt at deadlock avoidance by calling
lock_TryRead() on the parent directory cm_scache_t rw-lock does not
avoid the deadlock.  Avoid the deadlock by enforcing the lock order
of lowest vnode first.  Then remove the infinite loop avoidance in
cm_SyncOp() that was returning an unwarranted access denied error.

(cherry picked from commit ef10390e12ffd697f9eaaacd1d7291e05d16c835)

17 years agoDEVEL15-rx-allow-jumbogram-disabling-really-20080822
Derrick Brashear [Fri, 22 Aug 2008 05:31:48 +0000 (05:31 +0000)]
DEVEL15-rx-allow-jumbogram-disabling-really-20080822

LICENSE IPL10

right now, jumbograms can still be sent when -nojumbo is specified. make the
current macro a default and override when we're supposed to.

(cherry picked from commit 46dbd678714110002a36269beca8961e013650ac)

17 years agoDEVEL15-windows-list-symlink-20080820
Jeffrey Altman [Wed, 20 Aug 2008 20:46:16 +0000 (20:46 +0000)]
DEVEL15-windows-list-symlink-20080820

LICENSE MIT

Another casaulty of the Unicode transition, the return value of the
ListLink operation was not being convered from wchar to char before
it was copied into the output buffer.

(cherry picked from commit a00f706eb67c257af9892557cfb6ad35594144cf)

17 years agoDEVEL15-windows-afsd-service-20080820
Jeffrey Altman [Wed, 20 Aug 2008 20:42:47 +0000 (20:42 +0000)]
DEVEL15-windows-afsd-service-20080820

LICENSE MIT

When afsd_service.exe is not running as a service do not call the
Service Manager functions.  Doing so causes invalid access exceptions
to be thrown in the kernel and can corrupt the heap.

(cherry picked from commit 9488898fdb22e8c999ad4f713bd656caba91fe1c)

17 years agoDEVEL15-redhat-spec-default-build-authlibs-20080820
Derrick Brashear [Wed, 20 Aug 2008 19:45:28 +0000 (19:45 +0000)]
DEVEL15-redhat-spec-default-build-authlibs-20080820

LICENSE IPL10
FIXES 101879

make build_authlibs default usefully

(cherry picked from commit 651f25b9c84b57cb88e2066c91c5234399673164)

17 years agoDEVEL15-windows-notes-20080816
Jeffrey Altman [Sat, 16 Aug 2008 22:01:15 +0000 (22:01 +0000)]
DEVEL15-windows-notes-20080816

LICENSE MIT

1.5.52

17 years agoDEVEL15-windows-des-20080816
Jeffrey Altman [Sat, 16 Aug 2008 20:19:02 +0000 (20:19 +0000)]
DEVEL15-windows-des-20080816

LICENSE MIT

codesign binaries

17 years agoDEVEL15-namei-by-default-on-sol10-20080816 openafs-devel-1_5_52
Derrick Brashear [Sat, 16 Aug 2008 22:37:39 +0000 (22:37 +0000)]
DEVEL15-namei-by-default-on-sol10-20080816

LICENSE IPL10

default to namei, not inode, on solaris 10 except by request

(cherry picked from commit 03982bd54839f81cdc691ad83e946fac8f8789b7)

17 years agoDEVEL15-volser-initialize-volume-updatedate-20080816
Dan Hyde [Sat, 16 Aug 2008 21:07:45 +0000 (21:07 +0000)]
DEVEL15-volser-initialize-volume-updatedate-20080816

LICENSE IPL10
FIXES 110943

right now this isn't set until a vnode update happens. technically creating
the root directory is an update, so let's set it to now.

(cherry picked from commit b080c5d82ba5c7641afeb6836961cacf283e4902)

17 years agoDEVEL15-netbsd-sigwait-broken-til-nbsd5-20080816
Tracy Di Marco White [Sat, 16 Aug 2008 20:46:55 +0000 (20:46 +0000)]
DEVEL15-netbsd-sigwait-broken-til-nbsd5-20080816

LICENSE IPL10
FIXES 111404

work around netbsd sigwait brokenness

(cherry picked from commit 8190e75b38a7cd136ce70050fdd71b1d62888055)

17 years agoDEVEL15-linux-2-6-27-20080816
Marc Dionne [Sat, 16 Aug 2008 20:42:56 +0000 (20:42 +0000)]
DEVEL15-linux-2-6-27-20080816

LICENSE IPL10
FIXES 111634

add support for 2.6.27, which removes asm/semaphore.h

(cherry picked from commit d7a5619e5bd8241dd13611a4be37f04f3aa4ed27)

17 years agoDEVEL15-windows-build-20080815
Jeffrey Altman [Sat, 16 Aug 2008 18:59:03 +0000 (18:59 +0000)]
DEVEL15-windows-build-20080815

LICENSE MIT

remove duplicate rules for man-pages

(cherry picked from commit 4274e854c58655ae2d1142ec3e08d62aebb07be0)

17 years agoDEVEL15-no-more-win95-20080816
Jeffrey Altman [Sat, 16 Aug 2008 18:49:42 +0000 (18:49 +0000)]
DEVEL15-no-more-win95-20080816

LICENSE MIT

remove win95 pthread dll from the build

17 years agoDEVEL15-windows-version-20080816
Jeffrey Altman [Sat, 16 Aug 2008 18:15:51 +0000 (18:15 +0000)]
DEVEL15-windows-version-20080816

LICENSE MIT

1.5.5200.0 == 1.5.52

17 years agoDEVEL15-windows-rx-extra-packets-20080816
Jeffrey Altman [Sat, 16 Aug 2008 18:11:01 +0000 (18:11 +0000)]
DEVEL15-windows-rx-extra-packets-20080816

LICENSE MIT

Make the default number of pre-allocated rx packets equal to the number
of threads times the rx window size.

(cherry picked from commit dbd98583d35d6aea57cb4d9c46790479dc1a137e)

17 years agoDEVEL15-windows-pioctl-getdrivetype-20080816
Jeffrey Altman [Sat, 16 Aug 2008 17:50:06 +0000 (17:50 +0000)]
DEVEL15-windows-pioctl-getdrivetype-20080816

LICENSE MIT

Use GetDriveType() to check if the current path is a local disk.
If it is, fail the pioctl attempt immediately.  This should avoid
the reported 30 second delay in the AFS Shell Extension.

(cherry picked from commit ffbee95174ad1fffecff2889e80e168cea60a531)

17 years agoDEVEL15-windows-freelance-deadlock-20080815
Jeffrey Altman [Fri, 15 Aug 2008 21:19:06 +0000 (21:19 +0000)]
DEVEL15-windows-freelance-deadlock-20080815

LICENSE MIT

avoid a deadlock in cm_reInitLockMountPoints() and make the function
useful again by actually using the index value in the construction
of the FIDs

(cherry picked from commit 20d38bc268b13258e2358591756824d712cdb403)

17 years agoDEVEL15-windows-shlibafsauthent-20080814
Jeffrey Altman [Fri, 15 Aug 2008 00:39:12 +0000 (00:39 +0000)]
DEVEL15-windows-shlibafsauthent-20080814

LICENSE MIT

export pioctl_utf8

(cherry picked from commit aa011cc0d8bbff96d5772d0069520b41826c3857)

17 years agoDEVEL15-windows-server-dereference-null-two-20080814
Jeffrey Altman [Thu, 14 Aug 2008 21:24:03 +0000 (21:24 +0000)]
DEVEL15-windows-server-dereference-null-two-20080814

LICENSE MIT

protect against a potential null pointer dereference of a cm_server_t
object

(cherry picked from commit 357223aefd86c007987333b2a8859faa33f21424)

17 years agoDEVEL15-windows-server-dereference-null-20080814
Jeffrey Altman [Thu, 14 Aug 2008 21:21:27 +0000 (21:21 +0000)]
DEVEL15-windows-server-dereference-null-20080814

LICENSE MIT

protect against a null pointer dereference of a cm_server_t object

(cherry picked from commit 90fe95e994efe62175959aab95c276898f1ff54c)

17 years agoDEVEL15-windows-memdump-20080814
Jeffrey Altman [Thu, 14 Aug 2008 18:25:04 +0000 (18:25 +0000)]
DEVEL15-windows-memdump-20080814

LICENSE MIT

add locks, waiting lock requests, smb user, smb tid, and cell expiration
to the memory dump output (fs memdump)

(cherry picked from commit f430aee67c4f3d1f3c644f97c30db081d2a9880f)

17 years agoDEVEL15-windows-release-notes-20080813
Jeffrey Altman [Thu, 14 Aug 2008 04:18:07 +0000 (04:18 +0000)]
DEVEL15-windows-release-notes-20080813

LICENSE MIT

1.5.52

17 years agoDEVEL15-windows-notes-20080813
Jeffrey Altman [Thu, 14 Aug 2008 03:55:30 +0000 (03:55 +0000)]
DEVEL15-windows-notes-20080813

LICENSE MIT

1.5.52

17 years agoDEVEL15-windows-free-server-deadlock-20080813
Jeffrey Altman [Thu, 14 Aug 2008 03:37:59 +0000 (03:37 +0000)]
DEVEL15-windows-free-server-deadlock-20080813

LICENSE MIT

avoid a deadloc when freeing servers.  cm_serverLock must be released
around cm_GCConnections()

(cherry picked from commit 06b5006517c77767a246df2b6d66a344a44cbea1)

17 years agoDEVEL15-windows-search-cell-file-20080813
Jeffrey Altman [Thu, 14 Aug 2008 03:34:32 +0000 (03:34 +0000)]
DEVEL15-windows-search-cell-file-20080813

LICENSE MIT

if a cell has been found with addresses and the next cell name
is reached before the EOF, return success.

If the cell has been found and there are no addresses, return -6

(cherry picked from commit 4e7e66d4dc14513e1beed465fc5180429571921b)

17 years agoDEVEL15-rx-buffer-allocation-corrected-20080813
Jeffrey Altman [Thu, 14 Aug 2008 03:29:02 +0000 (03:29 +0000)]
DEVEL15-rx-buffer-allocation-corrected-20080813

LICENSE MIT

a corrected version of delta rx-buffer-allocation-20080812

(cherry picked from commit 919fb5e14bdcde66218e64cfdd7fecccab67d8f5)

17 years agoDEVEL15-windows-build-man-pages-20080813
Jeffrey Altman [Thu, 14 Aug 2008 03:21:42 +0000 (03:21 +0000)]
DEVEL15-windows-build-man-pages-20080813

LICENSE MIT

move building of man pages to installer phase

(cherry picked from commit 844d7e570772ab2bdbfa2d59ac0f48afff37d8b7)

17 years agoDEVEL15-nfstrans-extra-protection-20080813
Derrick Brashear [Thu, 14 Aug 2008 00:49:26 +0000 (00:49 +0000)]
DEVEL15-nfstrans-extra-protection-20080813

LICENSE IPL10

ensure, at least, that there is a filehandle for everything we check

(cherry picked from commit 04a25e0a4057b63cf7c700b17b1a6ab28e469547)

17 years agoDEVEL15-salvager-dont-corrupt-dir-lengths-20080812
Rainer Toebbicke [Thu, 14 Aug 2008 00:44:29 +0000 (00:44 +0000)]
DEVEL15-salvager-dont-corrupt-dir-lengths-20080812

LICENSE IPL10
FIXES 111585

make the int64 macros work when the "64 bit" number to fill isn't.
use the correct variable type for length in salvager

(cherry picked from commit e5bf9b91eaf8cb930c6cf70419983901907db84d)

17 years agoDEVEL15-rx-buffer-allocation-pulled-20080813
Jeffrey Altman [Wed, 13 Aug 2008 15:16:31 +0000 (15:16 +0000)]
DEVEL15-rx-buffer-allocation-pulled-20080813

LICENSE MIT

remove delta rx-buffer-allocation-20080812 as it leads to data corruption

(cherry picked from commit 156b13f74d4cc4e42644c9c9d7c63cb42f1d4ae3)

17 years agoDEVEL15-rx-buffer-allocation-20080812
Jeffrey Altman [Tue, 12 Aug 2008 19:42:03 +0000 (19:42 +0000)]
DEVEL15-rx-buffer-allocation-20080812

LICENSE MIT

Prevent rxi_MorePacketsNoLock() from dereferencing a NULL pointer if
the requested allocation size cannot be satsified.  In that case back
off the number of packets until osi_Alloc() succeeds or panic if no
packets can be allocated at all.

In AllocPacketBufs() do not transfer more than rx_TSFPQGlobSize packets.

Modify RX_TS_FPQ_GTOL2() macro to protect against transfering more packets
that are actually free.

Modify RX_TS_FPQ_COMPUTE_LIMITS() to enforce a rx_TSFPQGlobSize maximum
value of 64 packets to prevent ever increasing allocation sizes within
AllocPacketBufs()

(cherry picked from commit 643a632a38d3a9b0b9d4819abb37e227b5946c47)

17 years agoDEVEL15-windows-stack-overruns-20080811
Jeffrey Altman [Tue, 12 Aug 2008 05:31:30 +0000 (05:31 +0000)]
DEVEL15-windows-stack-overruns-20080811

LICENSE MIT

prevent stack overruns

(cherry picked from commit c19c4b3ebb9460eb373081fcbfcca6b7ae1f1495)

17 years agoDEVEL15-windows-fs-mkmount-20080811
Jeffrey Altman [Tue, 12 Aug 2008 00:56:14 +0000 (00:56 +0000)]
DEVEL15-windows-fs-mkmount-20080811

LICENSE MIT

fix volume name validity test.  strip trailing '.' from volume name

(cherry picked from commit 1f6c7ca14a10ec476dc6720c264a004bc2c9d955)

17 years agoDEVEL15-openafs-1-5-52-20080811
Derrick Brashear [Mon, 11 Aug 2008 05:40:03 +0000 (05:40 +0000)]
DEVEL15-openafs-1-5-52-20080811

LICENSE IPL10

make 1.5.52

17 years agoDEVEL15-windows-make-nls-win2000-compat-20080809
Jeffrey Altman [Sun, 10 Aug 2008 01:01:43 +0000 (01:01 +0000)]
DEVEL15-windows-make-nls-win2000-compat-20080809

LICENSE MIT

make the nls module compatible with windows 2000.
cannot use LOCALE_INVARIANT instead must lie and
say everyone is US English.  windows 2000 does not
have normalization functions and now doesn't have
case insensitive string comparison functions either
for languages other than English.

====================
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.
====================
LICENSE MIT

not all applications that link to cm_nls perform initialization.
Call initialization if it has not already been done explicitly.

(cherry picked from commit eaf2843a81839d1431280fa54f05c69135205e5c)

17 years agoDEVEL15-windows-freelance-deadlock-20080809
Jeffrey Altman [Sat, 9 Aug 2008 23:32:38 +0000 (23:32 +0000)]
DEVEL15-windows-freelance-deadlock-20080809

LICENSE MIT

avoid a deadlock between cm_freelanceLock and cm_scacheLock

(cherry picked from commit d5af3b4236f72349551ce326d615d2e74d993c97)

17 years agoDEVEL15-windows-rx-udpbufsize-20080809
Jeffrey Altman [Sat, 9 Aug 2008 05:53:42 +0000 (05:53 +0000)]
DEVEL15-windows-rx-udpbufsize-20080809

LICENSE MIT

Set UdpBufSize to 256K.  Add RxUdpBufSize registry value to permit
runtime configuration.

(cherry picked from commit cd316ff51c12b8c6dd5c09384bbe1d700735fe3c)

17 years agoDEVEL15-windows-smb-skip-nuls-20080809
Jeffrey Altman [Sat, 9 Aug 2008 05:49:50 +0000 (05:49 +0000)]
DEVEL15-windows-smb-skip-nuls-20080809

LICENSE MIT

rename SMB_STF_IGNORENULL to SMB_STF_IGNORENUL

apply SMB_STR_IGNORENUL when copying length tagged strings into
the smb response packets.

(cherry picked from commit 4eea9caac3cf260cf99ec67c30e31dd2d8c623d9)

17 years agoDEVEL15-windows-lock-corrections-20080808
Jeffrey Altman [Fri, 8 Aug 2008 17:46:35 +0000 (17:46 +0000)]
DEVEL15-windows-lock-corrections-20080808

LICENSE MIT

Derrick helped identify a few locations where rw or mx locks where
not properly being tracked.  As a result there were some locations
in which an assertion could be thrown due to releasing the wrong
type of lock.

Also added lock_AssertXXX calls to some locations to ensure that
the correct lock type is being held when the calls are made.  volume
location updates, cm_SyncOp, cm_SyncOpDone.

(cherry picked from commit 423cdb708f21dcbc28f6563c7c49069f6a6ec155)

17 years agoDEVEL15-windows-max-cell-name-20080807
Jeffrey Altman [Thu, 7 Aug 2008 14:48:12 +0000 (14:48 +0000)]
DEVEL15-windows-max-cell-name-20080807

LICENSE MIT

Anywhere cm_GetCell_Gen() is called CELL_MAXNAMELEN must be used
otherwise there will be a stack overflow error.

(cherry picked from commit 425d6e2e159798e8d6a6d092d780edef6b3a2220)

17 years agoDEVEL15-windows-misc-20080806
Jeffrey Altman [Thu, 7 Aug 2008 06:37:18 +0000 (06:37 +0000)]
DEVEL15-windows-misc-20080806

LICENSE MIT

Return CM_ERROR_READONLY if the caller wants PRSFS_DELETE and the
volume is readonly.

In cm_CheckNTDelete() do not call cm_SyncOpDone if cm_SyncOp failed

Do not force the use of fake directory data if the user does not
have PRSFS_READ on the directory.  Let the bulkstatus call take
place now that it is actually being used efficiently.

In ApplyV3SearchDirPatches, use cm_SyncOp(CM_SCACHESYNC_GETSTATUS)
to obtain the status info for Freelance entries instead of the
bulkstatus call.

Fix the truncation of 8.3 names in directory search responses.

(cherry picked from commit 467ac5e32d5d57056e6e19a47bb69b9d8ac0ba2d)

17 years agoDEVEL15-windows-cell-name-length-consistency-two-20080806
Jeffrey Altman [Wed, 6 Aug 2008 21:26:47 +0000 (21:26 +0000)]
DEVEL15-windows-cell-name-length-consistency-two-20080806

LICENSE MIT

fix what I broke

(cherry picked from commit d0ed34baa0e23b7bb24ea009004a527331baf275)

17 years agoDEVEL15-windows-afssw-20080806
Jeffrey Altman [Wed, 6 Aug 2008 06:13:09 +0000 (06:13 +0000)]
DEVEL15-windows-afssw-20080806

LICENSE MIT

prevent buffer underrun and overrun errors

(cherry picked from commit d44f1a17e4e1831ef39b8f5767a2ca7aad870fb2)

17 years agoDEVEL15-windows-cell-name-length-consistency-20080806
Jeffrey Altman [Wed, 6 Aug 2008 06:11:30 +0000 (06:11 +0000)]
DEVEL15-windows-cell-name-length-consistency-20080806

LICENSE MIT

make all cell name lengths consistent so that safer string copy/cat
functions can be used to prevent buffer overruns

(cherry picked from commit 255d055e6123bcce76ef9e531a0c4963da4f0fef)

17 years agoDEVEL15-windows-getaccessrights-20080805
Jeffrey Altman [Tue, 5 Aug 2008 16:46:37 +0000 (16:46 +0000)]
DEVEL15-windows-getaccessrights-20080805

LICENSE MIT

Do not permit GetAccessRights() to be called multiple times within
cm_SyncOp for the same rights check.  If the GetAccessRights() succeeded
and in the next loop the rights check fails, the user simply doesn't
have the rights.

Move a call to cm_SyncOpDone(FETCHSTATUS) from GetBuffer() to MergeStatus().
Anytime an RPC completes successfully we get updated status info for
the object.  Might as well allow threads waiting for status info to us
it.

(cherry picked from commit aab4b2b32f933daf48cc138c0eb5d8cf5a2023b5)

17 years agoDEVEL15-windows-smb-dir-search-20080805
Jeffrey Altman [Tue, 5 Aug 2008 15:32:05 +0000 (15:32 +0000)]
DEVEL15-windows-smb-dir-search-20080805

LICENSE MIT

Only return 50 items at a time to the caller.
Do not apply patches based on buffer boundaries.  Instead
apply patches when AFSCBMAX entries are ready to be processed
in order to minimize the number of RPCs.

17 years agoDEVEL15-windows-ioctl-make-submount-20080802
Jeffrey Altman [Sun, 3 Aug 2008 04:30:14 +0000 (04:30 +0000)]
DEVEL15-windows-ioctl-make-submount-20080802

LICENSE MIT
FIXES 109951

Restore the ascii version of cm_NormalizeAfsPathAscii() so that it
can be used by cm_IoctlMakeSubmount().

(cherry picked from commit a021b79556f7918598fc48bcd8742429f5620cc9)