--- /dev/null
+ OpenAFS Release Notes - Version 1.6.0
+ _________________________________________________________________
+All UNIX systems: Security bugfixes.
+All systems: Major bugfixes.
+ _________________________________________________________________
+
+All platforms:
+
+- Rx NAT pings are not enabled until peer has answered.
+
+- Numerous fixes to command argument parsing.
+
+All server platforms:
+
+- Avoid crashing on host table exhaustion. Instead, defer clients.
+
+All UNIX platforms:
+
+- 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.
+
+Linux:
+
+- Init script properly returns status as exit code.
+
+- RPM packaging fixes (executable libraries, no postinstall message)
+
+- Kill i386 from RPM packaging.
+
+MacOS:
+
+- Fix 32 bit Lion client support.
+
+- Avoid panic when doing FSEvent synthesis.
+
+- Fix bug when using non-dynroot.
+
+- Update Kerberos support in PreferencesPane.
+
+Solaris:
+
+- Avoid panic on shutdown when mount failed.
+
+Windows:
+
+- 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.
+
+CHANGES IN 1.6.0PRE7
+
+All platforms:
+
+- Substantial Rx updates to correct erroneous behavior.
+
+- Salvager tries harder to detect linktable issues.
+
+- Additional documentation.
+
+- xstat tools now cope with differing timeval structures between endpoints.
+
+All UNIX platforms:
+
+- New build targets to make distribution tarfiles (make dist) and
+ srpms (srpm).
+
+Demand Attach Fileserver platforms:
+
+- Don't attach volumes with special status set.
+
+FreeBSD:
+
+- Avoid panic at shutdown due to vcache flushing.
+
+- Support virtual network stacks.
+
+Linux:
+
+- Treat Linux 3.0 as Linux 2.6 for sysname purposes.
+
+- Attempt to properly handle SELinux in packaging.
+
+MacOS:
+
+- MacOS 10.7 support.
+
+Solaris:
+
+- Try harder to avoid deadlocks on file-larger-than-cache operations.
+
+Windows:
+
+- 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.
+
+CHANGES IN 1.6.0PRE6
+
+All UNIX platforms:
+
+- 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.
+
+Demand Attach Fileserver platforms:
+
+- Unlink fileserver state file on standalone salvage.
+
+FreeBSD:
+
+- Support for virtual network stacks.
+
+Linux:
+
+- Further corrections to Redhat packaging.
+
+- Avoid showing files larger than one cache chunk size as full of NULLs.
+ (129880) This bug was in unissued pre5 only, not in pre4.
+
+- Fix lockup in 2.6.38 due to erroneous kernel feature configure test.
+
+MacOS:
+
+- Rework logic for bulk status operations to avoid a potential hang.
+
+Solaris:
+
+- Don't leave dangling function references if kernel extension fails to load.
+
+Windows:
+
+- 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.
+
+CHANGES IN 1.6.0PRE5
+
+All server platforms:
+
+- Avoid leaking references to hosts during callback break multi-Rx
+ operations. (129376)
+
+All UNIX platforms:
+
+- 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)
+
+AIX:
+
+- Fix PAG usage to track by PAG identifier, not group list.
+
+Irix:
+
+- Properly create new vnodes to avoid crashing in the client.
+
+Linux:
+
+- Support 2.6.39.
+
+- 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)
+
+MacOS:
+
+- 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.
+
+NetBSD:
+
+- Updates for platform support.
+
+Windows:
+
+- 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.
+
+CHANGES IN 1.6.0PRE4
+
+All server platforms:
+
+- A file descriptor leak which could result in corrupted files
+ in the fileserver was fixed. An IMMEDIATE upgrade from previous
+ 1.6 release candidates as well as 1.5 release fileserver is
+ SUGGESTED!
+
+- Properly support large volume numbers (larger than 2147483647).
+
+All platforms:
+
+- Documentation updates.
+
+Demand Attach Fileserver platforms:
+
+- Allow salvager to be run manually again when DAFS is being used. (129458)
+
+FreeBSD:
+
+- New RC script, updated packaging.
+
+Linux:
+
+- Improve RPM building tools.
+
+- setpag() errors are now properly reported.
+
+MacOS:
+
+- 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)
+
+Solaris:
+
+- Properly report errors for AFS system call callers.
+
+Windows:
+
+- Properly create new cell mount points in freelance mode.
+
+- Avoid recursive offline volume checks.
+
+CHANGES IN 1.6.0PRE3
+
+All platforms:
+
+- Revert UUID support in vos.
+
+- pt_util fixed to properly create new databases.
+
+- Rx busy call channel error handling improved.
+
+- MTU discovery now properly shut down on call reset.
+
+- FUSE client support fixed for non-/afs mounts.
+
+All server platforms:
+
+- A deleted volume can now be recreated properly.
+
+- Callbacks are again not broken during whole partition salvages.
+
+- Positional vectored IO fixed for largefile (>2GB) capable systems.
+
+- Fileserver per-client thread usage again properly enforced.
+
+- Anonymous dropbox support improved and drawbacks documented.
+
+Demand Attach Fileserver platforms:
+
+- Ensure vnodes are not reallocated while in use due to volume
+ bitmap errors.
+
+Linux:
+
+- Perform vcache eviction via a fast path before visiting vcaches
+ where sleep is needed.
+
+MacOS:
+
+- aklog AuthorizationPlugin now provided.
+
+Solaris:
+
+- Corrected Solaris 11 startup script.
+
+- vcache mappings freed on shutdown to avoid panic.
+
+Windows:
+
+- icon tray state now conditionally set (128591)
+
+CHANGES IN 1.6.0PRE2
+
+All platforms:
+
+- Documentation updates.
+
+- Don't stop Rx keepalives after an ackall is received, avoiding
+ spurious connection timeouts. (128848)
+
+- Don't retry Rx calls on channels returning busy errors. (128671)
+
+- vos will not die with a double free error at command completion.
+
+- Properly enable Rx connection hard timeouts.
+
+- Initialize rx_multi lock before use.
+
+- Avoid spurious crashes when initializing in "backup" client.
+
+All unix platforms:
+
+- Check for /afs existance before starting, unless -nomount is specified.
+
+- Avoid a potential panic when using /afs/.:mount syntax.
+
+- Avoid a panic in memcache mode due to missing CellItems file.
+
+All server platforms:
+
+- Attempt to recovery more quickly from timed out volume release
+ transactions.
+
+- Auditing now properly byte order swaps IP addresses when printing.
+
+- vos split now has improved error handling.
+
+- Many changes to again support Windows fileservers.
+
+- During volume removal, data removal speed improved.
+
+- Improve CPU utilization during volume attaching by DAFS.
+
+- In salvager check-only mode, avoid potentially fixing a vnode.
+
+- Fix support for large (greater than 2gb) volume special files.
+
+- Salvager will not crash if multiple or bad volume link tables
+ are encountered.
+
+- Avoid erroneous full dump by remembering which sites were out of date
+ at the start of the release.
+
+FreeBSD:
+
+- Remove support for "Giant" lock as we no longer need to use it.
+
+- Don't sleep with AFS GLOCK.
+
+- Properly enable 64 bit long long support.
+
+- Restore support for FreeBSD 7 (128612)
+
+- Fix locking issues at shutdown.
+
+Linux:
+
+- support through kernel 2.6.38.
+
+- RedHat packaging now properly supports RHEL6.
+
+- Use rx_Readv in cache bypass to improve performance.
+
+- Properly handle 0-length replies during cache bypass operations.
+
+- Properly handle non-contiguous readpage cache bypass operations.
+
+- Do proper locking when transitioning to or from cache bypass.
+
+- Avoid extra runs of vcache freeing routine. (128756)
+
+MacOS:
+
+- Check for unloaded kernel extensions when decoding AFS panics.
+
+- Properly handle setpag errors. PAGs are not supported.
+
+- Disable "get tokens at login" in prefs pane if AD authentication
+ plugin is configured.
+
+OpenBSD:
+
+- support through OpenBSD 4.8.
+
+Solaris:
+
+- Fix support for Solaris pre-10.
+
+Windows:
+
+- afs_config will not longer set the Tray Icon State
+ in the registry if the checkbox is not present in
+ the dialog. (128591)
+
+- AFS Explorer Shell Extension now works from folder
+ backgrounds. Overlays for mount points and symlinks
+ are present in the dll, but are not registered at present
+ by the installers.
+
+- Do not use RankServerInterval registry value as the value for
+ PerformanceTuningInterval.
+
+- When the data version of a mountpoint or symlink changes,
+ the target string in the cm_scache_t object must be cleared.
+
+- "fs checkservers" now includes vldb servers in the output
+ and only lists multi-homed servers once. A multi-homed
+ server that has at least one up interface is no longer
+ considered to be down.
+
+- When asynchronously storing dirty data buffers to the
+ file server ensure that (a) the cm_scache_t object and
+ the cm_buf_t object are for the same File ID so that
+ locking and signalling work properly; and (b) if the
+ FID no longer exists on the file server, do not panic,
+ just discard the buffer.
+
+- When processing VNOVOL, VMOVED and VOFFLINE errors perform
+ server comparisons by UUID or address and not simply by
+ cm_server_t pointer. Otherwise, server failover may not
+ succeed.
+
+- Do not preserve status information for cm_scache_t objects
+ when the issuing server is multi-homed.
+
+- Giving up all callbacks when shutting down or suspending
+ the machine is now significantly faster due to the use
+ of an rx_multi implementation. (This functionality is
+ still off by default and must be activated by a registry
+ value.)
+
+- Race conditions were possible when updating the state
+ of the cm_volume_t flags and when moving the volumes
+ within the least recently used list.
+
+- Ensure that the lanahelper library does not perform a
+ NCBRESET of each lan adapter when enumerating the
+ current network bindings. Correcting this permits OpenAFS
+ to work on Windows 7 when the network adapter settings
+ change.
+
+- Fix creation of mount points and symlinks as \\AFS\xxxx
+
+PREVIOUS CHANGES:
+
+All platforms:
+
+- vos now properly deals with matching sites when servers are multihomed.
+
+All Unix platforms:
+
+- Servers now marked down when GetCapabilities returns error.
+
+- In-use vcache count is now properly tracked.
+
+All server platforms:
+
+- Fix ptserver supergroups support on 64 bit platforms.
+
+- Demand attach salvaging doesn't use freed volume pointers.
+
+- Properly hold host lock during host enumeration in fileserver.
+
+FreeBSD:
+
+- Fix socket termination on shutdown.
+
+- Support for 7.2, 7.3, 7.4 and 8.2 included.
+
+- References to vcaches are no longer leaked during root or reclaim.
+
+Linux:
+
+- Define llseek handler to avoid ESPIPE error in 2.6.37.
+
+- Mount interface replaces get_sb (new for 2.6.37, not yet required).
+
+- RedHat init script allows deferring for a new binary restart.
+
+- DEFINE_MUTEX replaces DECLARE_MUTEX for 2.6.37.
+
+MacOS:
+
+- Correct return value from setpag syscall.
+
+OpenBSD:
+
+- Bug fixes for issues introduced previously in 1.5 series.
+
+Solaris:
+
+- Switch to ioctl() syscall replacement for Solaris 11 since syscall 65
+ is not safe.