Jeffrey Altman [Thu, 19 Jul 2007 16:55:44 +0000]
windows-afs-svrmgr-
20070719
uninitialized variable removal
Derrick Brashear [Thu, 19 Jul 2007 16:14:20 +0000]
viced-assert-less-
20070719
in don't assert for every silly thing
Derrick Brashear [Thu, 19 Jul 2007 16:09:50 +0000]
viced-no-nulluuid-
20070719
a host with a zero uuid has no uuid support
Derrick Brashear [Thu, 19 Jul 2007 16:00:20 +0000]
kill-more-ubikcall-
20070719
tested more ubik call death, so, byebye
Derrick Brashear [Thu, 19 Jul 2007 15:55:39 +0000]
vos-validate-dumpfile-
20070719
based on code from jon nials
validate a dumpfile as being complete (look for end of dump signature)
Cesar Garcia [Wed, 18 Jul 2007 15:21:12 +0000]
libadmin-deubikcall-cleanup-
20070718
remove bogus extra arg
Jeffrey Altman [Wed, 18 Jul 2007 14:02:59 +0000]
windows-pioctl-
20070718
cm_dir.h depends on cm_buf.h
Jeffrey Altman [Wed, 18 Jul 2007 13:07:46 +0000]
windows-single-dir-search-not-bulk-
20070718
the single directory search routine used when there are no wildcards
does not perform a bulk stat operation. do not set the flag on the
cm_scache_t.
Derrick Brashear [Tue, 17 Jul 2007 18:04:01 +0000]
fs-state-only-in-dafs-
20070717
FIXES 65681
only in dafs. oops.
Jeffrey Hutzelman [Tue, 17 Jul 2007 13:15:19 +0000]
osi-probe-check-readable-
20070717
FIXES 63971
avoid potentially reading pges that don't exist
Marcus Watts [Tue, 17 Jul 2007 13:06:47 +0000]
bg-fcrypt-64bit-fix-
20070717
instead of this arcane ifdef which is flawed, we know which platforms support 64 bit types...
Russ Allbery [Tue, 17 Jul 2007 04:46:25 +0000]
sparc32-no-ucontext-
20070716
Undefine USE_UCONTEXT on sparc32 Linux since glibc doesn't implement
getcontext/setcontext for that architecture.
Derrick Brashear [Tue, 17 Jul 2007 04:10:18 +0000]
sparc32-no-getcontext-
20070716
implement ptr_mangle for sparc32
Eric Sturdivant [Mon, 16 Jul 2007 21:40:45 +0000]
xbsa-54-solaris-cplusplus-fun-
20070716
FIXES 65588
deal with change to c++ xbsa library
Jeffrey Altman [Mon, 16 Jul 2007 00:58:52 +0000]
libadmin-ubik_call-
20070715
replace all calls to ubik_Call(FOO, ...) with ubik_FOO(...)
correct the incorrect parameter lists for ubik_FOO()
Derrick Brashear [Fri, 13 Jul 2007 20:53:58 +0000]
aix-aklog-lam-plugin-
20070713
allow aklog equivalent from lam
Derrick Brashear [Thu, 12 Jul 2007 19:10:05 +0000]
suser-aix-macro-
20070712
can't use ifdefs inside the macro...
Derrick Brashear [Thu, 12 Jul 2007 09:28:26 +0000]
demand-attach-init-fsstate-rwlock-
20070712
the rwlock needs to be initd before use
Douglas Engert [Wed, 11 Jul 2007 05:29:36 +0000]
aklog-deal-without-524-
20070711
patch in a way of dealing with no krb524
Rainer Toebbicke [Tue, 10 Jul 2007 21:27:59 +0000]
pagsh-krb5-
20070710
FIXES 54621
clean up the environment
Derrick Brashear [Mon, 9 Jul 2007 20:58:57 +0000]
linux-register-fs-deal-with-error-
20070709
deal with other people who think they are afs.
Chaskiel M Grundman [Mon, 9 Jul 2007 20:14:09 +0000]
sparc-linux-des-alignment-
20070709
seems like compilers really hate des. it should would be nice to euthanize this.
it's a shame there's no simple license-friendly des library to use
Jeffrey Altman [Sat, 7 Jul 2007 14:36:59 +0000]
windows-give-up-callbacks-
20070707
don't try so hard to give up all callbacks. If the server doesn't
respond in 10 seconds, too bad!
cleanup the server probe code a bit. reorganize the code so that we
can avoid unnecessary pointer evaluation. add a missing include file.
Jeffrey Altman [Sat, 7 Jul 2007 00:20:38 +0000]
windows-afsd-misc-
20070706
* Do not give back callbacks to down servers
* Output more cm_scache_t data in afsd_alloc.log
* call VolStatus_Service_Stopped after the service has stopped
Marcus Watts [Fri, 6 Jul 2007 12:37:01 +0000]
budb-ol_verify-
20070706
FIXES 53210
fixes a missing pointer declaration that would presumably
break on 64-bit architectures.
Jeffrey Hutzelman [Fri, 6 Jul 2007 00:44:35 +0000]
cellservdb-
20070705
GCO Public CellServDB 05 Jul 2007
Jeffrey Altman [Thu, 5 Jul 2007 20:21:19 +0000]
windows-volume-status-plugin-
20070705
This delta adds an interface to an optional volume status handler.
The handler (if provided) receives status updates when volumes
change state between online, offline, busy, and alldown.
Jeffrey Altman [Thu, 5 Jul 2007 16:54:48 +0000]
windows-license-translation-
20070705
replace GlobalAlloc with malloc. initialize memory and consider the
inability to read the entire input file as an error.
Jeffrey Altman [Tue, 3 Jul 2007 15:11:35 +0000]
windows-heap-corruption-
20070703
fix buffer over write error introduced since 1.5.20
Derrick Brashear [Tue, 3 Jul 2007 15:01:19 +0000]
macos-no-default-memcache-
20070703
this should be leopard only memcache for now
Derrick Brashear [Tue, 3 Jul 2007 05:21:55 +0000]
des-p-temp-volatile-
20070703
make des work again on powerpc darwin and possibly elsewhere
Jeffrey Altman [Tue, 3 Jul 2007 01:33:47 +0000]
windows-get-cellinfo-afsdb-
20070702
enable afsdb records for get cellinfo lookup outside of afsd_service.exe
====================
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.
====================
do not perform afsdb lookup for Freelance.Local.Root cell
Dan Hyde [Mon, 2 Jul 2007 18:05:04 +0000]
volser-delete-clone-not-source-
20070702
FIXES 64268
fixes a bug in the UV_CopyVolume2 cleanup code. Without
this patch, the cleanup code will delete the source volume.
Jeffrey Altman [Sat, 30 Jun 2007 05:43:17 +0000]
windows-parse-ioctl-path-
20070629
The UNIX client does not follow mount points or symlinks when evaluating
ioctl paths during commands such as "fs examine". The Windows client did
which was annoying when you wanted to know the FID of a mount point that
was not properly being evaluated.
Jeffrey Altman [Sat, 30 Jun 2007 05:37:39 +0000]
windows-eol-
20070629
fix end of line for memdump output
Jeffrey Altman [Sat, 30 Jun 2007 00:51:36 +0000]
windows-procmgmt-library-
20070629
Since the library creates its own background thread, the library must
load its own reference to itself to prevent the library from being
unloaded behind its back.
Jeffrey Altman [Thu, 28 Jun 2007 05:10:10 +0000]
windows-remove-give-up-callbacks-scache-recycling-
20070627
remove the conditionalized code used to give up callbacks in response
to stat cache recycling due to performance impacts described in the
commit for DELTA windows-give-up-callbacks-
20070627
Jeffrey Altman [Thu, 28 Jun 2007 05:04:21 +0000]
windows-give-up-callbacks-
20070627
This large patch adds support for giving up callbacks in response to three
events:
1. power management suspend
2. power management shutdown
3. stat cache object recycling
The third item is submitted as a condition compilation if GIVE_UP_CALLBACKS
is defined. Properly handing callback give ups and the associated race
conditions with revokes and fetch status requests requires a great deal of
over head. The first attempt used one GiveUpCallBacks RPC for each callback
that was being dropped as the stat cache object was recycled. This resulted
in a 27% performance drop in the MIT stress test. The code that is being
committed maintains a callback give up list on each server object. The
callback is added to the list as the callbacks are dropped and then they
are sent to the server in bulk by the background daemon thread if the
server is known to be UP after a ping. Logic is added to the
EndCallbackRequest and CallbackRevoke operations to ensure that race
conditions are addressed. With all of this, there is a 17% performance drop
in the MIT stress test.
As a result, it is my conclusion that the client side costs associated with
optimizing the load on the server are simply too high. I am committing this
code to ensure that it is not lost. I will remove this support in the next
patch while leaving the support for giving up all callbacks in response
to suspend and shutdown events.
Jeffrey Altman [Thu, 28 Jun 2007 04:52:12 +0000]
windows-odd-vnode-is-dir-
20070627
its odd vnodes are directories, not even ones
Jeffrey Altman [Thu, 28 Jun 2007 04:33:50 +0000]
windows-pioctl-
20070627
add cm_server.h to the include list
Derrick Brashear [Thu, 28 Jun 2007 03:11:01 +0000]
volser-earlier-logging-
20070627
deal with the changes to deal with reconnecting in the unix domain fsync socket
Jeffrey Altman [Thu, 28 Jun 2007 01:33:43 +0000]
windows-afsd-headers-
20070627
remove unneeded headers and shuffle order where necessary
Jeffrey Altman [Thu, 28 Jun 2007 01:15:27 +0000]
windows-smb-race-
20070627
avoid a race condition when the smb_fidp is closed and an active request
is being performed on the referenced cm_scache_t.
Kevin Hildebrand [Wed, 27 Jun 2007 22:18:59 +0000]
amd64-linux-24-syscall-probe-symbol-change-
20070623
FIXES 63763
probe for something else for 2.4 and older
====================
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.
====================
i'll spare you
Derrick Brashear [Wed, 27 Jun 2007 17:29:35 +0000]
forceallnewconns-prototype-
20070627
missed this earlier. linux wants it.
Derrick Brashear [Tue, 26 Jun 2007 20:00:26 +0000]
macos-afsd-dont-leak-symbol-
20070626
avoid leaking a ref to this symbol outside macos code
Jeffrey Altman [Tue, 26 Jun 2007 06:40:35 +0000]
backup-usedump-
20070625
FIXES 55704
afs_com_err not com_err
Tom Keiser [Mon, 25 Jun 2007 21:22:49 +0000]
aix53-avoid-wait-crash-
20070625
avoid crashing because of unpinned mmemory when doing event handling
Jeffrey Altman [Mon, 25 Jun 2007 05:58:30 +0000]
windows-get-server-list-
20070625
return an error when the cm_fid_t * is NULL since we can't look up
the volume to obtain a server list without knowing which volume we
should be looking up
if the fidp is known to be NULL, don't call cm_GetServerList()
Chas Williams [Sat, 23 Jun 2007 16:28:11 +0000]
memcache-alloc-failures-
20070623
FIXES 55339
deal with alloc failures in memcache
Garry Zacheiss [Sat, 23 Jun 2007 16:13:17 +0000]
backup-usedump-
20070623
FIXES 55704
restore from specific dump id
Derrick Brashear [Sat, 23 Jun 2007 15:17:46 +0000]
Derrick Brashear [Sat, 23 Jun 2007 15:01:24 +0000]
doc-add-missing-gifs-
20070623
FIXES 1826
Derrick Brashear [Sat, 23 Jun 2007 07:21:00 +0000]
newuuid-fix-
20070622
yeah, i should commit from places with better network if i'm going to need to edit in place, so i can see what i'm typing
Asanka Herath [Fri, 22 Jun 2007 23:22:09 +0000]
windows-install-wix-
20070622
add the images from relnotes_files to the distribution.
Jeffrey Altman [Fri, 22 Jun 2007 23:15:38 +0000]
windows-cell-hashtables-
20070622
Add name and ID hash tables for cell lookups. cell lookups occur on
every request. sometimes multiple times. removing the walking of the
cell list when there are dozens of cells decreases cpu utilization and
increases throughput.
Jeffrey Altman [Fri, 22 Jun 2007 15:42:12 +0000]
windows-install-nsis-
20070622
add missing jpg files to documentation installation
Jeffrey Altman [Fri, 22 Jun 2007 15:11:04 +0000]
windows-misc-
20070622
there were two sets of registry values that could be used to configure
the daemon thread check intervals. keep the one that was documented
in the release notes and discard the other.
Add a registry value "daemonCheckOfflineVolInterval" to configure the
offline volume check interval.
Ensure that the cm_GetConn... functions initialized the output variables
to NULL on error.
Jeffrey Altman [Fri, 22 Jun 2007 07:00:27 +0000]
windows-fake-stat-
20070622
When we are faking the status data we can use the vnode value to determine
if the object should be treated as a directory or file. even is a directory
and odd is a file. This works even when we have never successfully
obtained status data for the object.
Jeffrey Altman [Fri, 22 Jun 2007 06:30:47 +0000]
windows-mountpoint-is-directory-
20070622
when the CIFS client requests a directory listing without directories,
do not include mount points.
Jeffrey Altman [Tue, 19 Jun 2007 21:10:56 +0000]
windows-revoke-callback-
20070619
If the we can match up the host address from which the revoke was received
with one of our cm_server_t objects, then we know which cell the revoke
has been received from. With that information we can ensure that we only
revoke the status of cm_scache_t objects belonging to that cell.
Jeffrey Altman [Tue, 19 Jun 2007 19:29:41 +0000]
windows-all-cell-list-
20070619
Reverse the order of the allCellsp list. Append new cells onto the end
of the list. This ensures that the workstation cell will always be the
first in the list. Adding additional cells will not degrade the performance
to the workstation cell.
Jeffrey Altman [Tue, 19 Jun 2007 17:14:14 +0000]
windows-updatecell-
20070619
No longer permit cm_GetCell() or cm_FindCellByID() to return NULL simply
because cm_UpdateCell() failed. The cm_cell_t object still exists and
is valid even if the vlServersp list is empty.
Modify the lock management in cm_GetCell_Gen() to ensure we drop all the
locks.
In cm_Analyze() update the volume status when one of the servers reports
VBUSY or VRESTARTING.
Jeffrey Altman [Tue, 19 Jun 2007 12:51:11 +0000]
windows-deadlock-
20070619
fix deadlock on cm_volumeLock introduced by last week's work
in cm_Analyze, make sure we get a cm_cell_t reference otherwise we
won't find the cm_volume_t we are searching for when ALLOFFLINE or
ALLBUSY.
Russ Allbery [Tue, 19 Jun 2007 09:55:49 +0000]
man-page-net-info-fixes-
20070619
Fix a NetInfo reference in the NetRestrict man page that should be
NetRestrict and add cross-references in SEE ALSO.
Jeffrey Altman [Tue, 19 Jun 2007 06:29:07 +0000]
windows-amd64-
20070619
Use 0x0502 instead of 0x0500. There is no 64-bit Windows 2000 support.
Explicitly list the machine type as X64 for linking.
Jeffrey Altman [Tue, 19 Jun 2007 06:24:23 +0000]
windows-misc-
20070619
VMWare adapters have proven unreliable replacements for the Microsoft
loopback adapter. Registering AFS often results in a name space collision.
Add cm_DumpCells() function and dump the cells as part of "fs memdump"
Dump all cm_scache_t and cm_volume_t regardless of reference counts
Fix cm_GetCell_Gen() to not allocate a new cm_cell_t when evaluating
mount points to aliases. Instead, after looking up the alias successfully
search the allCellsp list for the fullname of the cell. If found, use
the existing entry and cleanup the one we were about to allocate.
Use read locks whenever possible instead of write locks when searching
the allCellsp list.
Derrick Brashear [Mon, 18 Jun 2007 19:48:33 +0000]
macos-realtime-ip-updates-
20070618
notice and deal with IP address changes
Derrick Brashear [Mon, 18 Jun 2007 19:21:53 +0000]
readme-
20070618
update the systype list
Derrick Brashear [Mon, 18 Jun 2007 19:03:00 +0000]
avoid-empty-uuid-
20070618
avoid issue where uuid can potentially be 0: set one always at AFSOP_GO step
Derrick Brashear [Mon, 18 Jun 2007 18:57:31 +0000]
darwin-collect-network-errors-for-fast-timeout-
20070618
same optimization we do on windows, linux
Derrick Brashear [Mon, 18 Jun 2007 18:05:05 +0000]
darwin-afs-syscall-eliminate-needless-vfs-context-hold-
20070618
avoid potential deadlock if e.g. SetTokens is called before the kernel module initialization completes
Asanka Herath [Sun, 17 Jun 2007 05:49:32 +0000]
windows-nim-afs-
20070617
Don't assume that WM_DESTROY is the final message received by a
window. Verify dialog data structures when handling messages and
reset the window data field when freeing the data structure.
Zero should be considered a valid credentials type identifier in
Network Identity Manager.
When checking if an identity is configured to obtain a token for a
specific cell, don't go through the list of cells if AFS tokens
are disabled for the identity.
Similarly, when removing a token for a specific cell from all
identities, don't bother modifying identities for whom AFS tokens
are disabled.
Keep track of whether a specific cell was added to the list of
cells to authenticate for an identity because it was listed in the
configuration or because a token for the cell already existed.
Correct an off-by-one error when calculating buffer sizes for
multi strings which failed to account for a double NULL
terminator.
Don't update the cell->identity mapping if a token for that cell
could not be obtained.
If the list of cell to authenticate for an identity is empty, we
still need to write the empty string to the configuration.
Otherwise, removing all the tokens from an identity will not
result in a configuration change reflecting that.
Jeffrey Altman [Thu, 14 Jun 2007 21:58:07 +0000]
windows-ioctl-path-availability-
20070614
fix cm_IoctlPathAvailability to return the current volume state.
0, CM_ERROR_ALLBUSY, CM_ERROR_ALLDOWN, CM_ERROR_ALLOFFLINE
modify fs.c to generate messages when the errors are received.
Jeffrey Altman [Thu, 14 Jun 2007 21:54:16 +0000]
windows-volstate-update-post-network-change-
20070614
When the system's IP address list changes we invalidate the existing
RX connections and probe all of the servers. A better algorithm is
to probe all vldb servers, invalidate the rx connections, and then
probe all file servers.
Jeffrey Altman [Thu, 14 Jun 2007 20:04:10 +0000]
rx-lwp-sendmsg-
20070614
update the lwp version of rxi_sendmsg to return the same error, -1,
returned by the pthread version.
replace errno with WSAGetLastError() in the Windows blocks so that
the correct error value is checked.
Jeffrey Altman [Thu, 14 Jun 2007 19:29:51 +0000]
windows-pioctl-add-error-translations-
20070614
add error translations for CM_ERROR_ALLDOWN, CM_ERROR_ALLBUSY,
CM_ERROR_ALLOFFLINE, CM_ERROR_NOSUCHPATH
Asanka Herath [Wed, 13 Jun 2007 23:25:45 +0000]
windows-magic-share-names-
20070613
Access to AFS volumes via magic share names
\\afs\<cell><type><volume>
<cell> = cellname
<type> = % or #
<volume> = volume name or id
Jeffrey Altman [Wed, 13 Jun 2007 07:04:55 +0000]
windows-server-ping-deadlock-
20070612
avoid deadlock in cm_ServerPing due to volume status update code
Derrick Brashear [Tue, 12 Jun 2007 19:59:02 +0000]
newuuid-
20070612
add the newuuid command
Marc Dionne [Tue, 12 Jun 2007 19:38:20 +0000]
linux-configure-vfs-update-
20070612
FIXES 62017
clean up output
Marc Dionne [Tue, 12 Jun 2007 19:32:19 +0000]
linux-vfs-flush-3arg-
20070612
FIXES 62203
3rd arg for passing lock owner id. add configure gunk also
Simon Wilkinson [Sat, 23 Jun 2007 07:32:56 +0000]
linux-sysctl-update-
20070612
FIXES 61906
2.6.21.1 introduces an additional .parent pointer in the middle of
the structure. As the OpenAFS code just initialises the structure
with a list, this causes it to assign the value intended
for .proc_handler to .parent
Jeffrey Altman [Tue, 12 Jun 2007 16:23:09 +0000]
windows-volume-status-tracking-
20070612
* re-write cm_Analyze to make better use of the known volume
status. VL_Server queries cannot result in CM_ERROR_ALLOFFLINE
messages.
* renamed cm_CheckBusyVolumes to cm_CheckOfflineVolumes.
busy volumes will be reset to srv_non_busy by the function
but there is no mechanism for querying the busy state other
than by attempting to access the resource.
* cm_Analyze will query the state of an offline volume before
deciding whether or not to retry when all volume instances
are offline.
Marc Dionne [Tue, 12 Jun 2007 06:41:06 +0000]
linux-2-6-22-updates-
20070611
FIXES 61767
1 - task_struct loses thread_info, which is now accessible through the
task_thread_info() macro. A configure test is added to deal with this.
2 - the SLAB_CTOR_VERIFY flag is gone
Lars Wilke [Tue, 12 Jun 2007 04:49:56 +0000]
man-fileserver-args-
20070611
Add additional arguments to the SYNOPSIS that the file server recognizes.
====================
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.
====================
Missed another erroneous option argument.
Steven Jenkins [Tue, 12 Jun 2007 04:42:01 +0000]
man-vos-online-
20070611
Add initial man pages for vos offline and vos online.
Jeffrey Altman [Sun, 10 Jun 2007 17:58:51 +0000]
windows-volume-status-tracking-
20070610
* changed the enum values for cm_serverRef_t state info to use a
private name space to avoid collisions (srv_)
* added a srv_deleted state for cm_serverRef_t objects. This
state is set when cm_FreeServerList() is called with the
CM_FREESERVERLIST_DELETE flag set. cm_FreeServerList() may
not always delete the cm_serverRef_t from the list if it is
still in use by another thread. the srv_deleted state means
the object's contents are no longer valid and it must be
skipped. It will be deleted the next time the object is
freed and the refcount hits zero.
* the srv_deleted state is also used when a file server reports
either VNOVOL or VMOVED instead of marking the cm_serverRef_t
as offline. This is done to prevent additional usage of the
stale vldb data while waiting for the update volume request
to complete.
* added a state field to the cm_volume_t object (enum volstate
vl_ name space) that maintains the state of the volume based
upon the states of all of the cm_serverRef_t and cm_server_t
objects.
* modified cm_UpdateVolume() to set the state of the cm_volume_t
RW, RO, and BK to either vl_alldown or vl_online. There can't
be any other states because cm_UpdateVolume() destroys any
previous knowledge we might have had regarding busy or offline
volume status
* modified cm_UpdateVolume() to update the volume name in the
cm_volume_t to the volume base name if the previous value was
a volume ID.
* modified cm_FollowMountPoint() to check to see if the volume
name is a volume ID and if so call cm_GetVolumeByID instead
of cm_GetVolumeByName. This ensures that volume IDs are always
looked up as numeric values. There is no longer a need to
maintain a separate cm_volume_t containing the string representation
of the ID value.
* Added a flags parameter to cm_GetVolumeByName() and cm_GetVolumeByID().
The first flag is a "CREATE" flag which is set by all existing
calls. The flag is not set by calls to cm_GetVolumeByID() from
the server probe code when volume status is being updated. We
do not want the server probe operation to result in additional
turnover in the cached volume data. The second flag is NO_LRU_UPDATE
which is set when the server probe code updates the volume status.
This flag will be used to prevent the server probe operation from
changing the order of the least recently used queue.
* Modified cm_GetVolumeByName to ensure that only one cm_volume_t is
allocated for a given set of normal, readonly, and backup volumes
regardless of whether or not the volume is accessed via name or
ID number. The cm_volume_t namep field is always the base name
of the volume.
* Added a new volume state, vl_unknown. This state is used as
the initial state for all cm_volume_t when the cache manager starts,
for each cm_volume_t at creation, and for each cm_volume_t when
recycling. The cache manager does not know the state of all
volumes in the world, only those that are in the cache and for
which it has queried the VLDB and hosting file servers.
* modified cm_GetVolumeByName() to initialize the state of a
volume to vl_unknown. The actual state will be set when a
cm_VolumeUpdate() call completes successfully.
* changed name of scache hash table variables to avoid ambiguity
when adding hash tables for volumes
* fix a buffer overrun in sys\pioctl_nt.c pioctl().
(thanks Asanka)
* modified cm_UpdateVolume() to handle the case in which there is
no RW volume but there is are RO volumes for a given base name.
This is done by querying for the ".readonly" volume name if the
base name does not exist in the VLDB. We never query for the
.backup name because under the current usage model a .backup
volume may only exist on the server that the read-write volume
is located. If there is no RW volume, there can be no .backup.
* Added four hash tables for cm_volume_t objects to improve the
search time of cm_GetVolumeByID(), cm_GetVolumeByName() and
cm_ForceUpdateVolume(). One each for Name, RWID, ROID, and
BKID. Three ID hash tables are necessary as long as it is
desireable to maintain a single cm_volume_t containing all
of the related RW, RO, and BK volume data. Having the RW and
RO volume data in the same object is necessary for the
implementation of cm_GetROVolumeID() which returns either the
RO or RW ID depending upon the existence of RO volume instances.
* Added a volume LRU queue so that volume reuse becomes fairer.
This does not replace the all Volumes list which is used when
it is desireable to walk a list of all the volumes whose order
is not going to change out from underneath you which makes it
safe to drop the cm_volumeLock.
* handles volume hash table updates where volume name to
volume ID number changes. The volume name remains
constant in the cm_volume_t. if a vos rename is performed,
the name of the volume will change and the volume IDs will be
updated. Subsequent access to the old volume ID will create a
new cm_volume_t with the new name.
* Added a daemon thread operation to query the state of volumes
listed as busy or offline. cm_CheckBusyVolumes() calls
RXAFS_GetVolumeStatus() for each volume ID that is marked vl_busy
or vl_offline. If the volume is now online, the status on the
volume is updated. The default period is 600 seconds. This can
be configured with the BusyVolumeCheckInterval registry value.
* Added prototype for smb_IoctlPrepareRead() which was missing a
return type in the function definition.
* Added volume id lists to the cm_server_t. These lists are
allocated in blocks of ~32 IDs. When a cm_PingServer()
detects a change in server state, the state of the cm_volume_t
is updated.
* Added volID to the cm_serverRef_t object. volID is used
to identify the volume for which the object is a referral.
cm_FreeServerList() uses the volID to remove the volume
from the cm_server_t.
* In cm_Analyze, when VNOVOL or VMOVED are received,
call cm_ForceVolumeUpdate() to force a refresh of the volume
location data.
* Added cm_VolumeStatusNotification() which is used at the moment
to log volume status changes to the trace log. It will also
be used as the access point to the File System Filter driver
notification engine.
* Added an all cm_scache_t list to cm_data. This replaces the use
of the stat cache LRU queue when we need to enumerate all
entries. The LRU list order is not static and when using it to
enumerate all entries it can result in items being missed or
items being processed more than once.
* Modified cm_Analyze(). Instead of reseting the busy or offline
state of a volume and forcing a retry of the operation
cm_Analyze will defer to the background daemon thread that will
update the state once every 600 seconds.
* Added the automatic generation of a Freelance ".root" read-write
mountpoint that refers to the root.afs volume of the workstation
cellname at the time the mountpoint is created.
Jeffrey Altman [Sun, 10 Jun 2007 15:20:43 +0000]
rxkad-badticket-
20070610
In rxkad_CheckResponse, when checking the return value from tkt_CheckTimes,
the order is == 0, == -1, < -1, <= 0. The <= 0 case is extraneous so
remove it. Both < -1 and <= 0 returned RXKADBADTICKET.
Asanka Herath [Sun, 10 Jun 2007 06:52:51 +0000]
windows-pioctl-buffer-overrun-
20070609
this patch protects against a buffer overrun in the client if the
server were to send more data than the receiving buffer can hold.
Derrick Brashear [Sun, 10 Jun 2007 06:39:15 +0000]
linux-kmem-destroy-fix-
20070609
don't destroy if create failed
Marc Dionne [Thu, 7 Jun 2007 03:18:21 +0000]
restore-missing_afs_realm_names-
20070606
FIXES 62016
restore AFS_REALM_NAMES
Derrick Brashear [Wed, 6 Jun 2007 18:55:04 +0000]
vsprocs-avoid-bogus-error-
20070606
don't EPRINT if it's not an error
Derrick Brashear [Wed, 6 Jun 2007 18:21:05 +0000]
aix-declare-setlim-
20070606
maybe fix lwp.c compiling with modern aix
Derrick Brashear [Tue, 5 Jun 2007 18:10:00 +0000]
solaris-sparc-default-to-v8-insns-for-kmod-
20070605
FIXES 23935
don't use the default instruction set since the compiler has changed over time
Jeffrey Hutzelman [Tue, 5 Jun 2007 04:47:09 +0000]
fix-kbuild-linux-ppc64-
20070604
The Linux 2.6 kbuild environment requires assembly files end in .S, not .s.
Derrick Brashear [Fri, 18 May 2007 06:52:37 +0000]
clone-dont-hold-vol-lock-
20070516
same deal as purge. a transaction on the volume outstanding holds it. we don't need to preclude all access
====================
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.
====================
same deal as purge. a transaction on the volume outstanding holds it. we don't n
eed to preclude all access
====================
same deal as purge. a transaction on the volume outstanding holds it. we don't n
eed to preclude all access
Derrick Brashear [Thu, 17 May 2007 19:28:10 +0000]
linux-posix-lock-file-has-wait-arg-now-
20070517
FIXES 58590
hopefully this works, i can't actually try it now
Arkadi Shishlov [Thu, 17 May 2007 07:50:02 +0000]
linux-sparc-arch-detection-
20070517
FIXES 60288
use arch to figure out if we are sparc64
Derrick Brashear [Thu, 17 May 2007 07:34:15 +0000]
linux-posix-lock-file-has-wait-arg-now-
20070517
FIXES 58590
hopefully this works, i can't actually try it now