Follow-up of r10638 and r10639: explained in the manual that DRD is now
able to perform rwlock type checking.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10640 a5019735-40e9-0310-863c-91ae7b9d1cf9
diff --git a/drd/docs/drd-manual.xml b/drd/docs/drd-manual.xml
index 8de5556..ee49ac7 100644
--- a/drd/docs/drd-manual.xml
+++ b/drd/docs/drd-manual.xml
@@ -147,7 +147,8 @@
       Synchronization objects and operations on these synchronization
       objects. The following types of synchronization objects have been
       defined in the POSIX threads standard: mutexes, condition variables,
-      semaphores, reader-writer locks, barriers and spinlocks.
+      semaphores, reader-writer synchronization objects, barriers and
+      spinlocks.
     </para>
   </listitem>
 </itemizedlist>
@@ -699,9 +700,9 @@
 <title>Detected Errors: Lock Contention</title>
 
 <para>
-Threads must be able to make progress without being blocked for too
-long by other threads. Sometimes a thread has to wait until a mutex or
-reader-writer lock is unlocked by another thread. This is called
+Threads must be able to make progress without being blocked for too long by
+other threads. Sometimes a thread has to wait until a mutex or reader-writer
+synchronization object is unlocked by another thread. This is called
 <emphasis>lock contention</emphasis>.
 </para>
 
@@ -800,18 +801,33 @@
     </listitem>
     <listitem>
       <para>
-        Destruction or deallocation of a locked reader-writer lock.
+        Destruction or deallocation of a locked reader-writer synchronization
+        object.
       </para>
     </listitem>
     <listitem>
       <para>
-        Attempts to unlock a reader-writer lock that was not locked by
-        the calling thread.
+        Attempts to unlock a reader-writer synchronization object that was not
+        locked by the calling thread.
       </para>
     </listitem>
     <listitem>
       <para>
-        Attempts to recursively lock a reader-writer lock exclusively.
+        Attempts to recursively lock a reader-writer synchronization object
+        exclusively.
+      </para>
+    </listitem>
+    <listitem>
+      <para>
+        Attempts to pass the address of a user-defined reader-writer
+        synchronization object to a POSIX threads function.
+      </para>
+    </listitem>
+    <listitem>
+      <para>
+        Attempts to pass the address of a POSIX reader-writer synchronization
+        object to one of the annotations for user-defined reader-writer
+        synchronization objects.
       </para>
     </listitem>
     <listitem>
@@ -833,9 +849,8 @@
     </listitem>
     <listitem>
       <para>
-        Exiting a thread without first unlocking the spinlocks,
-        mutexes or reader-writer locks that were locked by that
-        thread.
+        Exiting a thread without first unlocking the spinlocks, mutexes or
+        reader-writer synchronization objects that were locked by that thread.
       </para>
     </listitem>
   </itemizedlist>
@@ -1062,6 +1077,12 @@
 </para>
 
 <para>
+For an example of how to use the annotations for user-defined reader-writer
+synchronization objects, see
+also <literal>drd/tests/annotate_rwlock.c</literal>.
+</para>
+
+<para>
 Note: if you compiled Valgrind yourself, the header file
 <literal>&lt;valgrind/drd.h&gt;</literal> will have been installed in
 the directory <literal>/usr/include</literal> by the command