diff --git a/NEWS b/NEWS
index e9f6616..83abd6b 100644
--- a/NEWS
+++ b/NEWS
@@ -92,16 +92,14 @@
 
 * ==================== OTHER CHANGES ====================
 
-* Unwinding through inlined function calls.  By default, stack
-  unwinding now makes use of Dwarf3 inlined-unwind information if it
-  is available.  The practical effect is that inlined calls become
-  visible in stack traces.  The suppression matching machinery has
-  been adjusted accordingly.  This is controlled by the new option
-  --read-inline-info=yes|no [yes].
-
-  In the 3.10.0 beta release(s), inlined unwinding is only enabled for
-  Memcheck and Helgrind.  It is hoped to enable it for all tools in
-  the 3.10.0 final release.
+* Unwinding through inlined function calls.  Stack unwinding can now
+  make use of Dwarf3 inlined-unwind information if it is available.
+  The practical effect is that inlined calls become visible in stack
+  traces.  The suppression matching machinery has been adjusted
+  accordingly.  This is controlled by the new option
+  --read-inline-info=yes|no.  Currently this is enabled by default
+  only on Linux and Android targets and only for the tools Memcheck,
+  Helgrind and DRD.
 
 * Valgrind can now read EXIDX unwind information on 32-bit ARM
   targets.  If an object contains both CFI and EXIDX unwind
diff --git a/coregrind/m_main.c b/coregrind/m_main.c
index d1cc392..a1e7a3a 100644
--- a/coregrind/m_main.c
+++ b/coregrind/m_main.c
@@ -167,7 +167,9 @@
 "                              code found in stacks, for all code, or for all\n"
 "                              code except that from file-backed mappings\n"
 "    --read-inline-info=yes|no read debug info about inlined function calls\n"
-"                              and use it to do better stack traces [no]\n"
+"                              and use it to do better stack traces.  [yes]\n"
+"                              on Linux/Android for Memcheck/Helgrind/DRD\n"
+"                              only.  [no] for all other tools and platforms.\n"
 "    --read-var-info=yes|no    read debug info on stack and global variables\n"
 "                              and use it to print better error messages in\n"
 "                              tools that make use of it (Memcheck, Helgrind,\n"
diff --git a/docs/xml/manual-core.xml b/docs/xml/manual-core.xml
index 77a8d3b..8544084 100644
--- a/docs/xml/manual-core.xml
+++ b/docs/xml/manual-core.xml
@@ -1784,14 +1784,19 @@
 
   <varlistentry id="opt.read-inline-info" xreflabel="--read-inline-info">
     <term>
-      <option><![CDATA[--read-inline-info=<yes|no> [default: no] ]]></option>
+      <option><![CDATA[--read-inline-info=<yes|no> [default: see below] ]]></option>
     </term>
     <listitem>
-      <para>When enabled, Valgrind will read information about
-      inlined function calls from DWARF3 debug info.
-      This slows Valgrind startup and makes it use more memory (typically
-      for each inlined piece of code, 6 words + the function name), but
-      it results in more descriptive stacktraces:</para>
+      <para>When enabled, Valgrind will read information about inlined
+      function calls from DWARF3 debug info.  This slows Valgrind
+      startup and makes it use more memory (typically for each inlined
+      piece of code, 6 words and space for the function name), but it
+      results in more descriptive stacktraces.  For the 3.10.0
+      release, this functionality is enabled by default only for Linux
+      and Android targets and only for the tools Memcheck, Helgrind
+      and DRD.  Here is an example of some stacktraces with
+      <option>--read-inline-info=no</option>:
+</para>
 <programlisting><![CDATA[
 ==15380== Conditional jump or move depends on uninitialised value(s)
 ==15380==    at 0x80484EA: main (inlinfo.c:6)
@@ -1801,11 +1806,10 @@
 ==15380==    by 0x804850E: main (inlinfo.c:34)
 ==15380== 
 ==15380== Conditional jump or move depends on uninitialised value(s)
-==15380==    at 0x8048520: main (inlinfo.c:6)]]></programlisting>
-
+==15380==    at 0x8048520: main (inlinfo.c:6)
+]]></programlisting>
       <para>And here are the same errors with
       <option>--read-inline-info=yes</option>:</para>
-
 <programlisting><![CDATA[
 ==15377== Conditional jump or move depends on uninitialised value(s)
 ==15377==    at 0x80484EA: fun_d (inlinfo.c:6)
diff --git a/none/tests/cmdline1.stdout.exp b/none/tests/cmdline1.stdout.exp
index 88cbb92..cb80d84 100644
--- a/none/tests/cmdline1.stdout.exp
+++ b/none/tests/cmdline1.stdout.exp
@@ -80,7 +80,9 @@
                               code found in stacks, for all code, or for all
                               code except that from file-backed mappings
     --read-inline-info=yes|no read debug info about inlined function calls
-                              and use it to do better stack traces [no]
+                              and use it to do better stack traces.  [yes]
+                              on Linux/Android for Memcheck/Helgrind/DRD
+                              only.  [no] for all other tools and platforms.
     --read-var-info=yes|no    read debug info on stack and global variables
                               and use it to print better error messages in
                               tools that make use of it (Memcheck, Helgrind,
diff --git a/none/tests/cmdline2.stdout.exp b/none/tests/cmdline2.stdout.exp
index 6a7d7ba..990f056 100644
--- a/none/tests/cmdline2.stdout.exp
+++ b/none/tests/cmdline2.stdout.exp
@@ -80,7 +80,9 @@
                               code found in stacks, for all code, or for all
                               code except that from file-backed mappings
     --read-inline-info=yes|no read debug info about inlined function calls
-                              and use it to do better stack traces [no]
+                              and use it to do better stack traces.  [yes]
+                              on Linux/Android for Memcheck/Helgrind/DRD
+                              only.  [no] for all other tools and platforms.
     --read-var-info=yes|no    read debug info on stack and global variables
                               and use it to print better error messages in
                               tools that make use of it (Memcheck, Helgrind,
