User-Visible OpenAFS Changes
-OpenAFS 1.6.0 (in progress)
+OpenAFS 1.6.2.1
+
+ Linux clients
+
+ * Support Linux kernels up to 3.8.
+
+ * Make the init script cope with the output of ifconfig on recent Fedora.
+
+OpenAFS 1.6.2
All platforms
+ * Fix buffer overflows in fileserver and ptserver.
+
+ * Abort an rx connection when given an unknown service (Gerrit 7593).
+
+ * "idle dead" behavior improvements.
+
+ * Documentation updates.
+
+ All server platforms
+
+ * Fix rare file corruption during background sync (Gerrit 8796).
+
+ * Fix corrupting clients' metadata cache during certain errors (Gerrit
+ 6957).
+
+ * Avoid saying a volume doesn't exist when accessed as the volume is
+ going offline (Gerrit 7488).
+
+ * Fix fileservers to properly report >2 TiB partitions.
+
+ * Fix stale volume info from vos examine on non-DAFS filservers.
+
+ * Fix possible volume corruption with vos convertROtoRW.
+
+ * Fix bosserver to preserve all command-line options over restart.
+
+ * Fix bosserver to properly kill hung processes during shutdown.
+
+ All UNIX client platforms
+
+ * Fixes for memcache, especially on Solaris.
+
+ * Increase the size of the DNS resolver answer buffer to allow sites
+ with a long response list to use SRV and AFSDB records.
+
+ * Fix a crash when a server appears to run out of addresses (Gerrit
+ 7487).
+
+ * Fix cache corruption when reading from a file another client is
+ simultaneously writing to (Gerrit 7994).
+
+ * Improve handling of disk cache disk errors.
+
+ Linux
+
+ * fix DKMS configuration for DKMS 2.2.
+
+ * Avoid generating inode number 0 with md5 inodes (Gerrit 7276).
+
+ * Fix a crash when reading /proc/fs/openafs/unixusers (Gerrit 7914).
+
+ * Make PAG-less access use the real UID of the calling process
+ instead of the effective UID, when determining what credentials to
+ use (Gerrit 7931).
+
+ * Fix possible abuse of fs mkmount.
+ Prior to 1.6.2, users could crash a client by nesting volume mounts.
+
+ * Fix fileserver memory corruption on RHEL 6
+ Prior to 1.6.2, fileservers on RHEL 6 may crash under heavy load.
+
+ * Fix client page cache corruption on Linux
+ When multiple clients read and write to a file, the reading client
+ may see first page (4096 bytes) of a file as nulls.
+
+ * Support Linux kernels up to 3.7.
+
+ * Support newer glibc versions.
+
+ * Improve client systemd unit file.
+
+ * Update Red Hat packaging.
+
+ OS X
+
+ * Fix crashes on shutdown.
+
+ * Prevent unloading the module before shutdown completes.
+
+ * Security improvement for the OpenAFS preference pane.
+
+ Solaris
+
+ * Support newer versions of the Sun Studio compiler software.
+
+ * Support compiling on newer versions of Solaris 11 and Solaris 10.
+
+
+OpenAFS 1.6.0 (2011-08-15)
+
+ All platforms
+
+ * Substantial Rx updates to correct erroneous behavior.
+
* vos now properly deals with matching sites when servers are
multihomed.
* Properly enable Rx connection hard timeouts.
+ * Rx NAT pings are not enabled until peer has answered.
+
* Initialize rx_multi lock before use.
* Avoid spurious crashes when initializing in "backup" client.
* MTU discovery now properly shut down on call reset.
+ * Avoid leaking references to hosts during callback break multi-Rx
+ operations. (129376)
+
+ * xstat tools now cope with differing timeval structures between
+ endpoints.
+
+ * Numerous fixes to command argument parsing.
+
+ * Documentation updates.
+
All server platforms
+ * A file descriptor leak which could result in corrupted files in the
+ fileserver was fixed. An IMMEDIATE upgrade from previous 1.5 release
+ fileservers is recommended.
+
* Fix ptserver supergroups support on 64 bit platforms.
* Demand attach salvaging doesn't use freed volume pointers.
* Demand attach: ensure vnodes are not reallocated while in use due to
volume bitmap errors.
- Microsoft Windows:
+ * Properly support large volume numbers (larger than 2147483647).
+
+ * Allow salvager to be run manually again when DAFS is being
+ used. (129458)
+
+ * Avoid leaking references to hosts during callback break multi-Rx
+ operations. (129376)
+
+ * Demand attach: unlink fileserver state file on standalone salvage.
+
+ * Salvager tries harder to detect linktable issues.
+
+ * Demand attach: don't attach volumes with special status set.
+
+ * Avoid crashing on host table exhaustion. Instead, defer clients.
+
+ Microsoft Windows
* afs_config will not longer set the Tray Icon State in the registry
if the checkbox is not present in the dialog. (128591)
* Icon tray state now conditionally set. (128591)
+ * Properly create new cell mount points in freelance mode.
+
+ * Avoid recursive offline volume checks.
+
+ * Fix caching of non-existent volumes. The test to trigger an
+ immediate CM_ERROR_NOSUCHVOLUME in cm_UpdateVolumeLocation() was
+ backwards.
+
+ * Prevent the background daemon from checking the status of
+ non-existent volumes. cm_CheckOfflineVolumes() should skip volume
+ groups with the CM_VOLUMEFLAG_NOEXIST flag set.
+
+ * The afskfw library should return an error immediately if the
+ krb5_32.dll library cannot be loaded. Affects afslogon.dll and
+ afscreds.exe.
+
+ * No longer depend on leashw32.dll in afskfw library.
+
+ * NPLogonNotify must provide the user password in all calls to
+ KFW_AFS_get_cred(). It cannot count on a credential cache being
+ preserved between calls. Permits tokens to be acquired for all
+ cells listed in the TheseCells registry value for a domain.
+
+ * Improve the trace logging from NPLogonNotify().
+
+ * Avoid a race when writing the cm_scache_t mountPointString
+ when acquiring mount point or symlink target data via
+ cm_GetData(). The race could result in bogus target
+ data being cached.
+
+ * Permit the use of des-cbc-md5 and des-cbc-md4 enctypes
+ as DES keys in asetkey.exe.
+
+ * aklog supports dotted Kerberos v5 principal names.
+
+ * afskfw library always attempts afs/cell@USER-REALM
+
+ * afskfw library must test return code from krb5_cc_start_seq_get() or
+ will trigger a null pointer exception when using Heimdal.
+
+ * Lock protected fields must be 32-bit in order to avoid memory
+ overwrite races.
+
+ * Add support for NTFS symlinks.
+
+ * Handle file search requests for virtual syscall ioctl file.
+
+ * Process SyncOps properly to enforce ordered operations.
+
+ * Avoid recursing during NewServer operations.
+
+ * Correct lock acquisition order during SMB locking.
+
+ * Add shutdown message to event log.
+
+ * Check offline volume status by policy rather than on each daemon
+ thread run.
+
+ * Return error on directory object not found instead of crashing.
+
+ * Improve error message output.
+
+ * afslogin.dll can start afsd_service if it's not starting or started.
+
+ * Optimize away release lock RPCs for deleted files.
+
+ * Background Daemon will not perform operations on deleted files.
+
+ * Resort recently used directories to the top of the LRU if the
+ directory is larger than the stat cache.
+
+ * Resort deleted objects to the bottom of the LRU.
+
+ * Use interlocked operations for state and queue fields to allow safe
+ bit set and clear on multiprocessor systems.
+
All UNIX client platforms
* Servers now marked down when GetCapabilities returns error.
* FUSE client support fixed for non-/afs mounts.
+ * Avoid a potential deadlock (which times out) when we need to
+ allocate more callback returns and must flush some already in use.
+
+ * Deal with libcom_err conflicts with other packages using it
+ (e.g. krb5) (128640)
+
+ * Fall back to afs3-vlserver SRV record values when afs3-ptserver SRV
+ record is not available.
+
+ * Avoid holding unneeded locks when probing server capabilties.
+
+ * Do not attempt page flushes for directories.
+
+ * Rx connection reference counting is enabled.
+
+ * An Rx connection reference count leak is fixed in bulkstat.
+
+ * Handle unparsable directory objects.
+
+ * Handle Kerberos cred cache errors in aklog.
+
+ AIX
+
+ * Fix PAG usage to track by PAG identifier, not group list.
+
FreeBSD
* Fix socket termination on shutdown.
* Restore support for FreeBSD 7 (128612)
- * Fix locking issues at shutdown.
+ * Fix locking issues at shutdown and avoid panic at shutdown due to
+ vcache flushing.
- Linux
+ * Support for virtual network stacks.
- * Support through kernel 2.6.38.
+ * New RC script, updated packaging.
- * Red Hat init script allows deferring for a new binary restart.
+ IRIX
- * Red Hat packaging now properly supports RHEL6.
+ * Properly create new vnodes to avoid crashing in the client.
+
+ Linux
+
+ * Support through kernel 2.6.39. Treat Linux 3.0 as Linux 2.6 for
+ sysname purposes.
* Use rx_Readv in cache bypass to improve performance.
* Perform vcache eviction via a fast path before visiting vcaches
where sleep is needed.
+ * setpag() errors are now properly reported.
+
+ * Avoid attempting to free stat cache entries when we are below
+ user-specified number of entries in use.
+
+ * Properly track user-specified number of stat cache entries to use as
+ a desired usage target.
+
+ * Don't read pages beyond EOF in the cache. (128452)
+
+ * Various corrections and improvements to Red Hat packaging, including
+ modifying the init script to allow deferring for a new binary
+ restart and properly supporting RHEL6.
+
+ * Fix lockup in 2.6.38 due to erroneous kernel feature configure test.
+
+ * Improve RPM building tools.
+
+ * Attempt to properly handle SELinux in packaging.
+
+ * Init script properly returns status as exit code.
+
+ * RPM packaging fixes (executable libraries, no postinstall message)
+
+ * Kill i386 from RPM packaging.
+
MacOS
+ * MacOS 10.7 support.
+
* Properly handle setpag errors. PAGs are not supported.
* Check for unloaded kernel extensions when decoding AFS panics.
* aklog AuthorizationPlugin now provided.
+ * Preferences Pane behavior fixed for 1.6 series (version detection is
+ used to select default behavior).
+
+ * A potential kernel panic during bulkstat operations is
+ fixed. (128511)
+
+ * 64-bit MacOS kernel performance is greatly improved. (128934)
+
+ * Properly shut down AFS, closing the Rx socket in the upcall handler
+ to avoid attempting to process data after we can no longer do so.
+
+ * Rework logic for bulk status operations to avoid a potential hang.
+
+ * Avoid panic when doing FSEvent synthesis.
+
+ * Fix bug when using non-dynroot.
+
+ * Update Kerberos support in PreferencesPane.
+
+ NetBSD
+
+ * Updates for platform support.
+
OpenBSD
* Bug fixes for issues introduced previously in 1.5 series.
* vcache mappings freed on shutdown to avoid panic.
+ * Properly report errors for AFS system call callers.
+
+ * Don't leave dangling function references if kernel extension fails
+ to load.
+
+ * Try harder to avoid deadlocks on file-larger-than-cache operations.
+
+ * Avoid panic on shutdown when mount failed.
+
OpenAFS 1.5.78 (2010-11-04)