Index: openafs/doc/man-pages/pod1/fs_uuid.pod
diff -c /dev/null openafs/doc/man-pages/pod1/fs_uuid.pod:1.1.2.2
*** /dev/null Wed Nov 7 00:05:54 2007
--- openafs/doc/man-pages/pod1/fs_uuid.pod Tue Oct 23 13:01:15 2007
***************
*** 0 ****
--- 1,82 ----
+ =head1 NAME
+
+ fs uuid - Prints the uuid of the client or generates a new one
+
+ =head1 SYNOPSIS
+
+ =for html
+
+
+ B [B<-generate>] [B<-help>]
+
+ =for html
+
+
+ =head1 DESCRIPTION
+
+ B prints the current uuid of an OpenAFS client. It can
+ optionally force the generation of a new uuid, if needed. The client
+ uuid is used by the B to differentiate clients with the
+ same IP address.
+
+ =head1 CAUTIONS
+
+ The B command is only available in OpenAFS versions after
+ 1.4.5 and 1.5.8. The behavior differs slightly between versions. In
+ OpenAFS 1.4.5 and later, the B<-generate> option is required and the
+ uuid for the client machine is never printed. OpenAFS versions 1.5.8
+ and later will print the uuid.
+
+ =head1 OPTIONS
+
+ =over 4
+
+ =item B<-generate>
+
+ Generates a new uuid for the cache manager. This is useful if two
+ clients share the same uuid. B<-generate> is optional in OpenAFS
+ versions 1.5.8 and later, but it is required in OpenAFS versions 1.4.5
+ and later.
+
+ =item B<-help>
+
+ Prints the online help for this command. All other valid options are
+ ignored.
+
+ =back
+
+ =head1 OUTPUT
+
+ B prints out the current uuid for the client or the new uuid
+ if the B<-generate> option is passed to it.
+
+ =head1 EXAMPLES
+
+ There are only two ways to invoke B under 1.5.8 and later:
+
+ % fs uuid
+ UUID: 8ac66f9308a8e-47d7-80f7-50d0040cddc2
+
+ % fs uuid -generate
+ New UUID: 436bd660-1720-429508e470cff38f5c6fb0
+
+ Here is the only way to invoke B under OpenAFS 1.4.5 and later:
+
+ % fs uuid -generate
+ New uuid generated.
+
+
+ =head1 PRIVILEGE REQUIRED
+
+ The issuer must be logged on as the local superuser C.
+
+ =head1 SEE ALSO
+
+ L
+
+ =head1 COPYRIGHT
+
+ Copyright 2007 Jason Edgecombe
+
+ This documentation is covered by the IBM Public License Version 1.0. This
+ man page was written by Jason Edgecombe for OpenAFS.
Index: openafs/doc/txt/winnotes/afs-changes-since-1.2.txt
diff -c openafs/doc/txt/winnotes/afs-changes-since-1.2.txt:1.72.2.36 openafs/doc/txt/winnotes/afs-changes-since-1.2.txt:1.72.2.37
*** openafs/doc/txt/winnotes/afs-changes-since-1.2.txt:1.72.2.36 Mon Oct 22 11:05:15 2007
--- openafs/doc/txt/winnotes/afs-changes-since-1.2.txt Tue Nov 6 23:09:13 2007
***************
*** 1,3 ****
--- 1,116 ----
+ Since 1.5.26
+ * Fix NSIS uninstall from the .MSI installer.
+
+ * Add Stack Frame logging for AMD64
+
+ * Add support for EWOULDBLOCK to cm_Analyze. If the file
+ server returns EWOULDBLOCK, retry the request every two
+ seconds for up to the RDRtimeout.
+
+ * Reorganize the order of the includes to ensure that EWOULDBLOCK
+ is not assigned the same value as EIO.
+
+ * Update CellServDB to GCO Public 25 Oct 2007
+
+ * Add additional validation and error handling code after
+ each call to getSlot(). If an invalid slot is returned,
+ return NONODE. If the invalid slot is returned when
+ extracting a data node, invalidate the tree.
+
+ * Modify compareKeys() to always perform a case-insensitive
+ comparison and only perform a case sensistive comparison
+ if the case-insensitive one matches. This ensures the
+ ordering is consistently reported.
+
+ * Add lock assertions to ensure that all calls are being
+ performed with the correct locks being held. There have been
+ some crash reports that provide stack data that does not appear
+ to be possible unless there is a race. However, there are no
+ obvious locations where the race is taking place and the test
+ suite indicates that all of the correct locks are being held.
+ We shall see what happens in the field.
+
+ * For consistency replace all calls to findKey in which the range i
+ s (1,numentries) with calls to getSlot().
+
+ * Optimize the depth search loop by testing the slot value in the
+ for statement instead of forcing the loop to be broken later.
+
+ * Reorganize the locking for cm_BeginDirOp and cm_EndDirOp.
+ There are a number of locations where locks are obtained, dropped,
+ and reobtained. This reorganization attempts to accomplish several
+ things:
+
+ (1) be optimistic for the most common case so it will be fast
+
+ (2) add consistency checks after each location where locks are
+ dropped and re-obtained. If we lose a race in cm_BeginDirOp
+ and the bplus tree is out of date, retry until we get to a
+ consistent state that we can use.
+
+ (3) Ensure that all operations take place with the correct locks.
+
+ * One of the issues that has become a serious problem since the
+ addition of the local directory updates is that although cm_SyncOp
+ synchronizes operations, it does not preserve the order of requests.
+ This has always been a problem in that it has been possible for a
+ request to fail to complete due to its worker thread's bad luck.
+ When a request takes longer than the Windows SMB Redirector's timeout,
+ the SMB Redirector tears down the SMB virtual circuit.
+
+ When using the local directory updates it is really important that
+ the directory update operations complete in the order that they were
+ sent to the file server. If they don't, then the local directory state
+ and the file server state will not match and the local directory state
+ must be discarded which in turn forces a new read of the entire
+ directory contents over the network.
+
+ This patch adds a new cm_scache_waiter_t object that is used to store
+ the current thread, buffer, and syncop flags within a waiters queue
+ on each cm_scache_t object. If a thread is forced to sleep in
+ cm_SyncOp, upon waking it will check to see if there are any other
+ threads waiting that are attempting to perform a similar task ahead
+ of it in the queue. If yes, the thread goes back to sleep. If not,
+ it goes ahead and enters the cm_SyncOp conflict resolution block.
+
+ This patch has the additional side effect of reducing the number of
+ competing threads that must obtain the cm_scache_t mutex and process
+ the cm_SyncOp conflict resolution block. As a result, the overall CPU
+ utilization of the service and the clock time associated with processing
+ requests will be reduced.
+
+ * assert that the cm_scache_t mutex is held when calling
+ buf_ForceDataVersion().
+
+ * rename findNode to leafNode in bplus_Lookup
+
+ * replace all OutputDebugString calls with osi_LogX calls
+
+ * modify bestMatch to special case the return values for leaf nodes.
+ If an entry is above or below the values available in the leaf node
+ return BTLOWER or BTUPPER instead of BTERROR.
+
+ * In insert and delete operations check for BTLOWER/BTUPPER and isleaf,
+ if true convert to either slot 0 or Max and perform the insertion.
+ This produces easier to read code when performing lookups.
+
+ * modify lock_AssertXXX macros to call osi_assertx() and provide a
+ descriptive message.
+
+ * the difference between osi_assert() and osi_assertx() is whether or not
+ a description is specified as part of the call. When no message is
+ specified afsd_notifier() is called with a NULL msgp parameter. This
+ results in a null pointer dereference during the EventLog() call.
+
+ As a result, none of the information describing the assertion is written
+ to the log file.
+
+ This commit sets a default message for use when no other message is
+ provided and it replaces all calls to osi_assert with osi_assertx and
+ adds descriptions.
+
+ * Migrate B+ tree search key into thread local storage
+
Since 1.5.25
* Fix an uninitialized variable in lana_IsLoopback() which
could result in a random determination that a loopback
Index: openafs/doc/txt/winnotes/afs-issues.txt
diff -c openafs/doc/txt/winnotes/afs-issues.txt:1.28.2.7 openafs/doc/txt/winnotes/afs-issues.txt:1.28.2.8
*** openafs/doc/txt/winnotes/afs-issues.txt:1.28.2.7 Thu Aug 23 13:23:11 2007
--- openafs/doc/txt/winnotes/afs-issues.txt Tue Nov 6 23:09:13 2007
***************
*** 1,4 ****
! This file is a rough list of known issues with the 1.5.23 release of OpenAFS
on Windows. This list is not complete. There are probably other issues which
can be found in the RT database or on the mailing list.
--- 1,4 ----
! This file is a rough list of known issues with the 1.5.27 release of OpenAFS
on Windows. This list is not complete. There are probably other issues which
can be found in the RT database or on the mailing list.