All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/8] docs: Fixes for recent versions of Sphinx
@ 2019-05-22 20:50 Jonathan Corbet
  2019-05-22 20:50 ` [PATCH 1/8] doc: Cope with Sphinx logging deprecations Jonathan Corbet
                   ` (8 more replies)
  0 siblings, 9 replies; 21+ messages in thread
From: Jonathan Corbet @ 2019-05-22 20:50 UTC (permalink / raw)
  To: linux-doc
  Cc: linux-kernel, Jani Nikula, Markus Heiser, Mauro Carvalho Chehab,
	Oleksandr Natalenko, Jonathan Corbet

The Sphinx folks deprecated some interfaces in the 2.0 release; one
immediate result of that is a bunch of warnings that show up when building
with 1.8.  These two patches make those warnings go away, but at a cost:

 - It introduces a couple of Sphinx version checks, which are always
   ugly, but the alternative would be to stop supporting versions
   before 1.7.  For now, I think we can carry that cruft.

 - The second patch causes the build to fail horribly on newer
   Sphinx installations.  The change to switch_source_input() seems
   to make the parser much more finicky, increasing warnings and
   eventually failing the build altogether.  In particular, it will
   scream about problems in .rst files that are not included in the
   TOC tree at all.

This version of the patch set fixes up the worst problems (the i915 error
in particular, which breaks the build hard).  I've tested it with versions
1.4, 1.8, and 2.0.

Given that these problems are already breaking builds on some systems, I
think I may try to sell these changes to Linus for 5.2 still.

Changes since v1:
  - Fix up a couple of logging changes I somehow missed
  - Don't save state when using switch_source_input()
  - Fix a few build errors
  - Add Mauro's sphinx-pre-install improvements

Jonathan Corbet (7):
  doc: Cope with Sphinx logging deprecations
  doc: Cope with the deprecation of AutoReporter
  docs: fix numaperf.rst and add it to the doc tree
  lib/list_sort: fix kerneldoc build error
  docs: fix multiple doc build warnings in enumeration.rst
  docs/gpu: fix a documentation build break in i915.rst
  docs: Fix conf.py for Sphinx 2.0

Mauro Carvalho Chehab (1):
  scripts/sphinx-pre-install: make it handle Sphinx versions

 Documentation/admin-guide/mm/index.rst        |  1 +
 Documentation/admin-guide/mm/numaperf.rst     |  2 +-
 Documentation/conf.py                         |  2 +-
 .../firmware-guide/acpi/enumeration.rst       |  2 +-
 Documentation/gpu/i915.rst                    |  4 +-
 Documentation/sphinx/kerneldoc.py             | 44 +++++++---
 Documentation/sphinx/kernellog.py             | 28 +++++++
 Documentation/sphinx/kfigure.py               | 40 +++++----
 lib/list_sort.c                               |  3 +-
 scripts/sphinx-pre-install                    | 81 +++++++++++++++++--
 10 files changed, 166 insertions(+), 41 deletions(-)
 create mode 100644 Documentation/sphinx/kernellog.py

-- 
2.21.0


^ permalink raw reply	[flat|nested] 21+ messages in thread

* [PATCH 1/8] doc: Cope with Sphinx logging deprecations
  2019-05-22 20:50 [PATCH 0/8] docs: Fixes for recent versions of Sphinx Jonathan Corbet
@ 2019-05-22 20:50 ` Jonathan Corbet
  2019-05-22 20:50 ` [PATCH 2/8] doc: Cope with the deprecation of AutoReporter Jonathan Corbet
                   ` (7 subsequent siblings)
  8 siblings, 0 replies; 21+ messages in thread
From: Jonathan Corbet @ 2019-05-22 20:50 UTC (permalink / raw)
  To: linux-doc
  Cc: linux-kernel, Jani Nikula, Markus Heiser, Mauro Carvalho Chehab,
	Oleksandr Natalenko, Jonathan Corbet

Recent versions of sphinx will emit messages like:

  /stuff/k/git/kernel/Documentation/sphinx/kerneldoc.py:103:
     RemovedInSphinx20Warning: app.warning() is now deprecated.
     Use sphinx.util.logging instead.

Switch to sphinx.util.logging to make this unsightly message go away.
Alas, that interface was only added in version 1.6, so we have to add a
version check to keep things working with older sphinxes.

Signed-off-by: Jonathan Corbet <corbet@lwn.net>
---
 Documentation/sphinx/kerneldoc.py | 12 ++++++----
 Documentation/sphinx/kernellog.py | 28 ++++++++++++++++++++++
 Documentation/sphinx/kfigure.py   | 40 ++++++++++++++++++-------------
 3 files changed, 59 insertions(+), 21 deletions(-)
 create mode 100644 Documentation/sphinx/kernellog.py

diff --git a/Documentation/sphinx/kerneldoc.py b/Documentation/sphinx/kerneldoc.py
index 9d0a7f08f93b..200c8aa4a04f 100644
--- a/Documentation/sphinx/kerneldoc.py
+++ b/Documentation/sphinx/kerneldoc.py
@@ -39,6 +39,8 @@ from docutils.statemachine import ViewList
 from docutils.parsers.rst import directives, Directive
 from sphinx.ext.autodoc import AutodocReporter
 
+import kernellog
+
 __version__  = '1.0'
 
 class KernelDocDirective(Directive):
@@ -90,7 +92,8 @@ class KernelDocDirective(Directive):
         cmd += [filename]
 
         try:
-            env.app.verbose('calling kernel-doc \'%s\'' % (" ".join(cmd)))
+            kernellog.verbose(env.app,
+                              'calling kernel-doc \'%s\'' % (" ".join(cmd)))
 
             p = subprocess.Popen(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
             out, err = p.communicate()
@@ -100,7 +103,8 @@ class KernelDocDirective(Directive):
             if p.returncode != 0:
                 sys.stderr.write(err)
 
-                env.app.warn('kernel-doc \'%s\' failed with return code %d' % (" ".join(cmd), p.returncode))
+                kernellog.warn(env.app,
+                               'kernel-doc \'%s\' failed with return code %d' % (" ".join(cmd), p.returncode))
                 return [nodes.error(None, nodes.paragraph(text = "kernel-doc missing"))]
             elif env.config.kerneldoc_verbosity > 0:
                 sys.stderr.write(err)
@@ -132,8 +136,8 @@ class KernelDocDirective(Directive):
             return node.children
 
         except Exception as e:  # pylint: disable=W0703
-            env.app.warn('kernel-doc \'%s\' processing failed with: %s' %
-                         (" ".join(cmd), str(e)))
+            kernellog.warn(env.app, 'kernel-doc \'%s\' processing failed with: %s' %
+                           (" ".join(cmd), str(e)))
             return [nodes.error(None, nodes.paragraph(text = "kernel-doc missing"))]
 
 def setup(app):
diff --git a/Documentation/sphinx/kernellog.py b/Documentation/sphinx/kernellog.py
new file mode 100644
index 000000000000..af924f51a7dc
--- /dev/null
+++ b/Documentation/sphinx/kernellog.py
@@ -0,0 +1,28 @@
+# SPDX-License-Identifier: GPL-2.0
+#
+# Sphinx has deprecated its older logging interface, but the replacement
+# only goes back to 1.6.  So here's a wrapper layer to keep around for
+# as long as we support 1.4.
+#
+import sphinx
+
+if sphinx.__version__[:3] >= '1.6':
+    UseLogging = True
+    from sphinx.util import logging
+    logger = logging.getLogger('kerneldoc')
+else:
+    UseLogging = False
+
+def warn(app, message):
+    if UseLogging:
+        logger.warning(message)
+    else:
+        app.warn(message)
+
+def verbose(app, message):
+    if UseLogging:
+        logger.verbose(message)
+    else:
+        app.verbose(message)
+
+
diff --git a/Documentation/sphinx/kfigure.py b/Documentation/sphinx/kfigure.py
index b97228d2cc0e..fbfe6693bb60 100644
--- a/Documentation/sphinx/kfigure.py
+++ b/Documentation/sphinx/kfigure.py
@@ -60,6 +60,8 @@ import sphinx
 from sphinx.util.nodes import clean_astext
 from six import iteritems
 
+import kernellog
+
 PY3 = sys.version_info[0] == 3
 
 if PY3:
@@ -171,20 +173,20 @@ def setupTools(app):
     This function is called once, when the builder is initiated.
     """
     global dot_cmd, convert_cmd   # pylint: disable=W0603
-    app.verbose("kfigure: check installed tools ...")
+    kernellog.verbose(app, "kfigure: check installed tools ...")
 
     dot_cmd = which('dot')
     convert_cmd = which('convert')
 
     if dot_cmd:
-        app.verbose("use dot(1) from: " + dot_cmd)
+        kernellog.verbose(app, "use dot(1) from: " + dot_cmd)
     else:
-        app.warn("dot(1) not found, for better output quality install "
-                 "graphviz from http://www.graphviz.org")
+        kernellog.warn(app, "dot(1) not found, for better output quality install "
+                       "graphviz from http://www.graphviz.org")
     if convert_cmd:
-        app.verbose("use convert(1) from: " + convert_cmd)
+        kernellog.verbose(app, "use convert(1) from: " + convert_cmd)
     else:
-        app.warn(
+        kernellog.warn(app,
             "convert(1) not found, for SVG to PDF conversion install "
             "ImageMagick (https://www.imagemagick.org)")
 
@@ -220,12 +222,13 @@ def convert_image(img_node, translator, src_fname=None):
 
     # in kernel builds, use 'make SPHINXOPTS=-v' to see verbose messages
 
-    app.verbose('assert best format for: ' + img_node['uri'])
+    kernellog.verbose(app, 'assert best format for: ' + img_node['uri'])
 
     if in_ext == '.dot':
 
         if not dot_cmd:
-            app.verbose("dot from graphviz not available / include DOT raw.")
+            kernellog.verbose(app,
+                              "dot from graphviz not available / include DOT raw.")
             img_node.replace_self(file2literal(src_fname))
 
         elif translator.builder.format == 'latex':
@@ -252,7 +255,8 @@ def convert_image(img_node, translator, src_fname=None):
 
         if translator.builder.format == 'latex':
             if convert_cmd is None:
-                app.verbose("no SVG to PDF conversion available / include SVG raw.")
+                kernellog.verbose(app,
+                                  "no SVG to PDF conversion available / include SVG raw.")
                 img_node.replace_self(file2literal(src_fname))
             else:
                 dst_fname = path.join(translator.builder.outdir, fname + '.pdf')
@@ -265,18 +269,19 @@ def convert_image(img_node, translator, src_fname=None):
         _name = dst_fname[len(translator.builder.outdir) + 1:]
 
         if isNewer(dst_fname, src_fname):
-            app.verbose("convert: {out}/%s already exists and is newer" % _name)
+            kernellog.verbose(app,
+                              "convert: {out}/%s already exists and is newer" % _name)
 
         else:
             ok = False
             mkdir(path.dirname(dst_fname))
 
             if in_ext == '.dot':
-                app.verbose('convert DOT to: {out}/' + _name)
+                kernellog.verbose(app, 'convert DOT to: {out}/' + _name)
                 ok = dot2format(app, src_fname, dst_fname)
 
             elif in_ext == '.svg':
-                app.verbose('convert SVG to: {out}/' + _name)
+                kernellog.verbose(app, 'convert SVG to: {out}/' + _name)
                 ok = svg2pdf(app, src_fname, dst_fname)
 
             if not ok:
@@ -305,7 +310,8 @@ def dot2format(app, dot_fname, out_fname):
     with open(out_fname, "w") as out:
         exit_code = subprocess.call(cmd, stdout = out)
         if exit_code != 0:
-            app.warn("Error #%d when calling: %s" % (exit_code, " ".join(cmd)))
+            kernellog.warn(app,
+                          "Error #%d when calling: %s" % (exit_code, " ".join(cmd)))
     return bool(exit_code == 0)
 
 def svg2pdf(app, svg_fname, pdf_fname):
@@ -322,7 +328,7 @@ def svg2pdf(app, svg_fname, pdf_fname):
     # use stdout and stderr from parent
     exit_code = subprocess.call(cmd)
     if exit_code != 0:
-        app.warn("Error #%d when calling: %s" % (exit_code, " ".join(cmd)))
+        kernellog.warn(app, "Error #%d when calling: %s" % (exit_code, " ".join(cmd)))
     return bool(exit_code == 0)
 
 
@@ -415,15 +421,15 @@ def visit_kernel_render(self, node):
     app = self.builder.app
     srclang = node.get('srclang')
 
-    app.verbose('visit kernel-render node lang: "%s"' % (srclang))
+    kernellog.verbose(app, 'visit kernel-render node lang: "%s"' % (srclang))
 
     tmp_ext = RENDER_MARKUP_EXT.get(srclang, None)
     if tmp_ext is None:
-        app.warn('kernel-render: "%s" unknown / include raw.' % (srclang))
+        kernellog.warn(app, 'kernel-render: "%s" unknown / include raw.' % (srclang))
         return
 
     if not dot_cmd and tmp_ext == '.dot':
-        app.verbose("dot from graphviz not available / include raw.")
+        kernellog.verbose(app, "dot from graphviz not available / include raw.")
         return
 
     literal_block = node[0]
-- 
2.21.0


^ permalink raw reply related	[flat|nested] 21+ messages in thread

* [PATCH 2/8] doc: Cope with the deprecation of AutoReporter
  2019-05-22 20:50 [PATCH 0/8] docs: Fixes for recent versions of Sphinx Jonathan Corbet
  2019-05-22 20:50 ` [PATCH 1/8] doc: Cope with Sphinx logging deprecations Jonathan Corbet
@ 2019-05-22 20:50 ` Jonathan Corbet
  2019-05-22 20:50 ` [PATCH 3/8] docs: fix numaperf.rst and add it to the doc tree Jonathan Corbet
                   ` (6 subsequent siblings)
  8 siblings, 0 replies; 21+ messages in thread
From: Jonathan Corbet @ 2019-05-22 20:50 UTC (permalink / raw)
  To: linux-doc
  Cc: linux-kernel, Jani Nikula, Markus Heiser, Mauro Carvalho Chehab,
	Oleksandr Natalenko, Jonathan Corbet

AutoReporter is going away; recent versions of sphinx emit a warning like:

  /stuff/k/git/kernel/Documentation/sphinx/kerneldoc.py:125:
      RemovedInSphinx20Warning: AutodocReporter is now deprecated.
      Use sphinx.util.docutils.switch_source_input() instead.

Make the switch.  But switch_source_input() only showed up in 1.7, so we
have to do ugly version checks to keep things working in older versions.

Signed-off-by: Jonathan Corbet <corbet@lwn.net>
---
 Documentation/sphinx/kerneldoc.py | 34 +++++++++++++++++++++++--------
 1 file changed, 26 insertions(+), 8 deletions(-)

diff --git a/Documentation/sphinx/kerneldoc.py b/Documentation/sphinx/kerneldoc.py
index 200c8aa4a04f..1159405cb920 100644
--- a/Documentation/sphinx/kerneldoc.py
+++ b/Documentation/sphinx/kerneldoc.py
@@ -37,7 +37,17 @@ import glob
 from docutils import nodes, statemachine
 from docutils.statemachine import ViewList
 from docutils.parsers.rst import directives, Directive
-from sphinx.ext.autodoc import AutodocReporter
+
+#
+# AutodocReporter is only good up to Sphinx 1.7
+#
+import sphinx
+
+Use_SSI = sphinx.__version__[:3] >= '1.7'
+if Use_SSI:
+    from sphinx.util.docutils import switch_source_input
+else:
+    from sphinx.ext.autodoc import AutodocReporter
 
 import kernellog
 
@@ -125,13 +135,7 @@ class KernelDocDirective(Directive):
                     lineoffset += 1
 
             node = nodes.section()
-            buf = self.state.memo.title_styles, self.state.memo.section_level, self.state.memo.reporter
-            self.state.memo.reporter = AutodocReporter(result, self.state.memo.reporter)
-            self.state.memo.title_styles, self.state.memo.section_level = [], 0
-            try:
-                self.state.nested_parse(result, 0, node, match_titles=1)
-            finally:
-                self.state.memo.title_styles, self.state.memo.section_level, self.state.memo.reporter = buf
+            self.do_parse(result, node)
 
             return node.children
 
@@ -140,6 +144,20 @@ class KernelDocDirective(Directive):
                            (" ".join(cmd), str(e)))
             return [nodes.error(None, nodes.paragraph(text = "kernel-doc missing"))]
 
+    def do_parse(self, result, node):
+        if Use_SSI:
+            with switch_source_input(self.state, result):
+                self.state.nested_parse(result, 0, node, match_titles=1)
+        else:
+            save = self.state.memo.title_styles, self.state.memo.section_level, self.state.memo.reporter
+            self.state.memo.reporter = AutodocReporter(result, self.state.memo.reporter)
+            self.state.memo.title_styles, self.state.memo.section_level = [], 0
+            try:
+                self.state.nested_parse(result, 0, node, match_titles=1)
+            finally:
+                self.state.memo.title_styles, self.state.memo.section_level, self.state.memo.reporter = save
+
+
 def setup(app):
     app.add_config_value('kerneldoc_bin', None, 'env')
     app.add_config_value('kerneldoc_srctree', None, 'env')
-- 
2.21.0


^ permalink raw reply related	[flat|nested] 21+ messages in thread

* [PATCH 3/8] docs: fix numaperf.rst and add it to the doc tree
  2019-05-22 20:50 [PATCH 0/8] docs: Fixes for recent versions of Sphinx Jonathan Corbet
  2019-05-22 20:50 ` [PATCH 1/8] doc: Cope with Sphinx logging deprecations Jonathan Corbet
  2019-05-22 20:50 ` [PATCH 2/8] doc: Cope with the deprecation of AutoReporter Jonathan Corbet
@ 2019-05-22 20:50 ` Jonathan Corbet
  2019-05-23  5:45   ` Mike Rapoport
  2019-05-22 20:50 ` [PATCH 4/8] lib/list_sort: fix kerneldoc build error Jonathan Corbet
                   ` (5 subsequent siblings)
  8 siblings, 1 reply; 21+ messages in thread
From: Jonathan Corbet @ 2019-05-22 20:50 UTC (permalink / raw)
  To: linux-doc
  Cc: linux-kernel, Jani Nikula, Markus Heiser, Mauro Carvalho Chehab,
	Oleksandr Natalenko, Jonathan Corbet, Keith Busch, Mike Rapoport

Commit 13bac55ef7ae ("doc/mm: New documentation for memory performance")
added numaperf.rst, but did not add it to the TOC tree.  There was also an
incorrectly marked literal block leading to this warning sequence:

  numaperf.rst:24: WARNING: Unexpected indentation.
  numaperf.rst:24: WARNING: Inline substitution_reference start-string without end-string.
  numaperf.rst:25: WARNING: Block quote ends without a blank line; unexpected unindent.

Fix the block and add the file to the document tree.

Fixes: 13bac55ef7ae ("doc/mm: New documentation for memory performance")
Cc: Keith Busch <keith.busch@intel.com>
Cc: Mike Rapoport <rppt@linux.ibm.com>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
---
 Documentation/admin-guide/mm/index.rst    | 1 +
 Documentation/admin-guide/mm/numaperf.rst | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/Documentation/admin-guide/mm/index.rst b/Documentation/admin-guide/mm/index.rst
index 8edb35f11317..ddf8d8d33377 100644
--- a/Documentation/admin-guide/mm/index.rst
+++ b/Documentation/admin-guide/mm/index.rst
@@ -31,6 +31,7 @@ the Linux memory management.
    ksm
    memory-hotplug
    numa_memory_policy
+   numaperf
    pagemap
    soft-dirty
    transhuge
diff --git a/Documentation/admin-guide/mm/numaperf.rst b/Documentation/admin-guide/mm/numaperf.rst
index b79f70c04397..c067ed145158 100644
--- a/Documentation/admin-guide/mm/numaperf.rst
+++ b/Documentation/admin-guide/mm/numaperf.rst
@@ -15,7 +15,7 @@ characteristics.  Some memory may share the same node as a CPU, and others
 are provided as memory only nodes. While memory only nodes do not provide
 CPUs, they may still be local to one or more compute nodes relative to
 other nodes. The following diagram shows one such example of two compute
-nodes with local memory and a memory only node for each of compute node:
+nodes with local memory and a memory only node for each of compute node::
 
  +------------------+     +------------------+
  | Compute Node 0   +-----+ Compute Node 1   |
-- 
2.21.0


^ permalink raw reply related	[flat|nested] 21+ messages in thread

* [PATCH 4/8] lib/list_sort: fix kerneldoc build error
  2019-05-22 20:50 [PATCH 0/8] docs: Fixes for recent versions of Sphinx Jonathan Corbet
                   ` (2 preceding siblings ...)
  2019-05-22 20:50 ` [PATCH 3/8] docs: fix numaperf.rst and add it to the doc tree Jonathan Corbet
@ 2019-05-22 20:50 ` Jonathan Corbet
  2019-05-22 20:50 ` [PATCH 5/8] docs: fix multiple doc build warnings in enumeration.rst Jonathan Corbet
                   ` (4 subsequent siblings)
  8 siblings, 0 replies; 21+ messages in thread
From: Jonathan Corbet @ 2019-05-22 20:50 UTC (permalink / raw)
  To: linux-doc
  Cc: linux-kernel, Jani Nikula, Markus Heiser, Mauro Carvalho Chehab,
	Oleksandr Natalenko, Jonathan Corbet, George Spelvin

Commit 043b3f7b6388 ("lib/list_sort: simplify and remove
MAX_LIST_LENGTH_BITS") added some useful kerneldoc info, but also broke the
docs build:

  ./lib/list_sort.c:128: WARNING: Definition list ends without a blank line; unexpected unindent.
  ./lib/list_sort.c:161: WARNING: Unexpected indentation.
  ./lib/list_sort.c:162: WARNING: Block quote ends without a blank line; unexpected unindent.

Fix the offending literal block and make the error go away.

Fixes: 043b3f7b6388 ("lib/list_sort: simplify and remove MAX_LIST_LENGTH_BITS")
Cc: George Spelvin <lkml@sdf.org>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
---
 lib/list_sort.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/lib/list_sort.c b/lib/list_sort.c
index 06e900c5587b..712ed1f4eb64 100644
--- a/lib/list_sort.c
+++ b/lib/list_sort.c
@@ -120,7 +120,8 @@ static void merge_final(void *priv, cmp_func cmp, struct list_head *head,
  * The latter offers a chance to save a few cycles in the comparison
  * (which is used by e.g. plug_ctx_cmp() in block/blk-mq.c).
  *
- * A good way to write a multi-word comparison is
+ * A good way to write a multi-word comparison is::
+ *
  *	if (a->high != b->high)
  *		return a->high > b->high;
  *	if (a->middle != b->middle)
-- 
2.21.0


^ permalink raw reply related	[flat|nested] 21+ messages in thread

* [PATCH 5/8] docs: fix multiple doc build warnings in enumeration.rst
  2019-05-22 20:50 [PATCH 0/8] docs: Fixes for recent versions of Sphinx Jonathan Corbet
                   ` (3 preceding siblings ...)
  2019-05-22 20:50 ` [PATCH 4/8] lib/list_sort: fix kerneldoc build error Jonathan Corbet
@ 2019-05-22 20:50 ` Jonathan Corbet
  2019-05-22 20:50 ` [PATCH 6/8] docs/gpu: fix a documentation build break in i915.rst Jonathan Corbet
                   ` (3 subsequent siblings)
  8 siblings, 0 replies; 21+ messages in thread
From: Jonathan Corbet @ 2019-05-22 20:50 UTC (permalink / raw)
  To: linux-doc
  Cc: linux-kernel, Jani Nikula, Markus Heiser, Mauro Carvalho Chehab,
	Oleksandr Natalenko, Jonathan Corbet, Changbin Du

The conversion of acpi/enumeration.txt to RST included one markup error,
leading to many warnings like:

  .../firmware-guide/acpi/enumeration.rst:430: WARNING: Unexpected indentation.

Add the missing colon and create some peace.

Fixes: c24bc66e8157 ("Documentation: ACPI: move enumeration.txt to firmware-guide/acpi and convert to reST")
Cc: Changbin Du <changbin.du@gmail.com>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
---
 Documentation/firmware-guide/acpi/enumeration.rst | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Documentation/firmware-guide/acpi/enumeration.rst b/Documentation/firmware-guide/acpi/enumeration.rst
index 6b32b7be8c85..850be9696931 100644
--- a/Documentation/firmware-guide/acpi/enumeration.rst
+++ b/Documentation/firmware-guide/acpi/enumeration.rst
@@ -423,7 +423,7 @@ will be enumerated to depends on the device ID returned by _HID.
 
 For example, the following ACPI sample might be used to enumerate an lm75-type
 I2C temperature sensor and match it to the driver using the Device Tree
-namespace link:
+namespace link::
 
 	Device (TMP0)
 	{
-- 
2.21.0


^ permalink raw reply related	[flat|nested] 21+ messages in thread

* [PATCH 6/8] docs/gpu: fix a documentation build break in i915.rst
  2019-05-22 20:50 [PATCH 0/8] docs: Fixes for recent versions of Sphinx Jonathan Corbet
                   ` (4 preceding siblings ...)
  2019-05-22 20:50 ` [PATCH 5/8] docs: fix multiple doc build warnings in enumeration.rst Jonathan Corbet
@ 2019-05-22 20:50 ` Jonathan Corbet
  2019-05-29  6:54   ` Daniel Vetter
  2019-05-22 20:50 ` [PATCH 7/8] docs: Fix conf.py for Sphinx 2.0 Jonathan Corbet
                   ` (2 subsequent siblings)
  8 siblings, 1 reply; 21+ messages in thread
From: Jonathan Corbet @ 2019-05-22 20:50 UTC (permalink / raw)
  To: linux-doc
  Cc: linux-kernel, Jani Nikula, Markus Heiser, Mauro Carvalho Chehab,
	Oleksandr Natalenko, Jonathan Corbet

Documentation/gpu/i915.rst is not included in the TOC tree, but newer
versions of sphinx parse it anyway.  That leads to this hard build failure:

> Global GTT Fence Handling
> ~~~~~~~~~~~~~~~~~~~~~~~~~
>
> reST markup error:
> /stuff/k/git/kernel/Documentation/gpu/i915.rst:403: (SEVERE/4) Title level inconsistent:

Make the underlining consistent and restore a working docs build.

Signed-off-by: Jonathan Corbet <corbet@lwn.net>
---
 Documentation/gpu/i915.rst | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/Documentation/gpu/i915.rst b/Documentation/gpu/i915.rst
index 055df45596c1..cf9ff64753cc 100644
--- a/Documentation/gpu/i915.rst
+++ b/Documentation/gpu/i915.rst
@@ -401,13 +401,13 @@ GTT Fences and Swizzling
    :internal:
 
 Global GTT Fence Handling
-~~~~~~~~~~~~~~~~~~~~~~~~~
+-------------------------
 
 .. kernel-doc:: drivers/gpu/drm/i915/i915_gem_fence_reg.c
    :doc: fence register handling
 
 Hardware Tiling and Swizzling Details
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+-------------------------------------
 
 .. kernel-doc:: drivers/gpu/drm/i915/i915_gem_fence_reg.c
    :doc: tiling swizzling details
-- 
2.21.0


^ permalink raw reply related	[flat|nested] 21+ messages in thread

* [PATCH 7/8] docs: Fix conf.py for Sphinx 2.0
  2019-05-22 20:50 [PATCH 0/8] docs: Fixes for recent versions of Sphinx Jonathan Corbet
                   ` (5 preceding siblings ...)
  2019-05-22 20:50 ` [PATCH 6/8] docs/gpu: fix a documentation build break in i915.rst Jonathan Corbet
@ 2019-05-22 20:50 ` Jonathan Corbet
  2019-05-22 20:50 ` [PATCH 8/8] scripts/sphinx-pre-install: make it handle Sphinx versions Jonathan Corbet
  2019-05-23  9:39 ` [PATCH 0/8] docs: Fixes for recent versions of Sphinx Oleksandr Natalenko
  8 siblings, 0 replies; 21+ messages in thread
From: Jonathan Corbet @ 2019-05-22 20:50 UTC (permalink / raw)
  To: linux-doc
  Cc: linux-kernel, Jani Nikula, Markus Heiser, Mauro Carvalho Chehab,
	Oleksandr Natalenko, Jonathan Corbet

Our version check in Documentation/conf.py never envisioned a world where
Sphinx moved beyond 1.x.  Now that the unthinkable has happened, fix our
version check to handle higher version numbers correctly.

Signed-off-by: Jonathan Corbet <corbet@lwn.net>
---
 Documentation/conf.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Documentation/conf.py b/Documentation/conf.py
index 72647a38b5c2..7ace3f8852bd 100644
--- a/Documentation/conf.py
+++ b/Documentation/conf.py
@@ -37,7 +37,7 @@ needs_sphinx = '1.3'
 extensions = ['kerneldoc', 'rstFlatTable', 'kernel_include', 'cdomain', 'kfigure', 'sphinx.ext.ifconfig']
 
 # The name of the math extension changed on Sphinx 1.4
-if major == 1 and minor > 3:
+if (major == 1 and minor > 3) or (major > 1):
     extensions.append("sphinx.ext.imgmath")
 else:
     extensions.append("sphinx.ext.pngmath")
-- 
2.21.0


^ permalink raw reply related	[flat|nested] 21+ messages in thread

* [PATCH 8/8] scripts/sphinx-pre-install: make it handle Sphinx versions
  2019-05-22 20:50 [PATCH 0/8] docs: Fixes for recent versions of Sphinx Jonathan Corbet
                   ` (6 preceding siblings ...)
  2019-05-22 20:50 ` [PATCH 7/8] docs: Fix conf.py for Sphinx 2.0 Jonathan Corbet
@ 2019-05-22 20:50 ` Jonathan Corbet
  2019-05-22 21:22   ` Mauro Carvalho Chehab
  2019-05-23  9:39 ` [PATCH 0/8] docs: Fixes for recent versions of Sphinx Oleksandr Natalenko
  8 siblings, 1 reply; 21+ messages in thread
From: Jonathan Corbet @ 2019-05-22 20:50 UTC (permalink / raw)
  To: linux-doc
  Cc: linux-kernel, Jani Nikula, Markus Heiser, Mauro Carvalho Chehab,
	Oleksandr Natalenko, Mauro Carvalho Chehab, Jonathan Corbet

From: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>

As we want to switch to a newer Sphinx version in the future,
add some version detected logic, checking if the current
version meets the requirement and suggesting upgrade it the
version is supported but too old.

Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
---
 scripts/sphinx-pre-install | 81 ++++++++++++++++++++++++++++++++++----
 1 file changed, 74 insertions(+), 7 deletions(-)

diff --git a/scripts/sphinx-pre-install b/scripts/sphinx-pre-install
index f6a5c0bae31e..e667db230d0a 100755
--- a/scripts/sphinx-pre-install
+++ b/scripts/sphinx-pre-install
@@ -13,7 +13,7 @@ use strict;
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 # GNU General Public License for more details.
 
-my $virtenv_dir = "sphinx_1.4";
+my $conf = "Documentation/conf.py";
 my $requirement_file = "Documentation/sphinx/requirements.txt";
 
 #
@@ -26,7 +26,9 @@ my $need = 0;
 my $optional = 0;
 my $need_symlink = 0;
 my $need_sphinx = 0;
+my $rec_sphinx_upgrade = 0;
 my $install = "";
+my $virtenv_dir = "sphinx_";
 
 #
 # Command line arguments
@@ -201,13 +203,15 @@ sub check_missing_tex($)
 	}
 }
 
-sub check_sphinx()
+sub get_sphinx_fname()
 {
-	return if findprog("sphinx-build");
+	my $fname = "sphinx-build";
+	return $fname if findprog($fname);
 
-	if (findprog("sphinx-build-3")) {
+	$fname = "sphinx-build-3";
+	if (findprog($fname)) {
 		$need_symlink = 1;
-		return;
+		return $fname;
 	}
 
 	if ($virtualenv) {
@@ -219,6 +223,68 @@ sub check_sphinx()
 	} else {
 		add_package("python-sphinx", 0);
 	}
+
+	return "";
+}
+
+sub check_sphinx()
+{
+	my $min_version;
+	my $rec_version;
+	my $cur_version;
+
+	open IN, $conf or die "Can't open $conf";
+	while (<IN>) {
+		if (m/^\s*needs_sphinx\s*=\s*[\'\"]([\d\.]+)[\'\"]/) {
+			$min_version=$1;
+			last;
+		}
+	}
+	close IN;
+
+	die "Can't get needs_sphinx version from $conf" if (!$min_version);
+
+	open IN, $requirement_file or die "Can't open $requirement_file";
+	while (<IN>) {
+		if (m/^\s*Sphinx\s*==\s*([\d\.]+)$/) {
+			$rec_version=$1;
+			last;
+		}
+	}
+	close IN;
+
+	die "Can't get recommended sphinx version from $requirement_file" if (!$min_version);
+
+	my $sphinx = get_sphinx_fname();
+	return if ($sphinx eq "");
+
+	open IN, "$sphinx --version 2>&1 |" or die "$sphinx returned an error";
+	while (<IN>) {
+		if (m/^\s*sphinx-build\s+([\d\.]+)$/) {
+			$cur_version=$1;
+			last;
+		}
+	}
+	close IN;
+
+	$virtenv_dir .= $rec_version;
+
+	die "$sphinx didn't return its version" if (!$cur_version);
+
+	printf "Sphinx version %s (minimal: %s, recommended >= %s)\n",
+		$cur_version, $min_version, $rec_version;
+
+	if ($cur_version lt $min_version) {
+		print "Warning: Sphinx version should be >= $min_version\n\n";
+		$need_sphinx = 1;
+		return;
+	}
+
+	if ($cur_version lt $rec_version) {
+		print "Warning: It is recommended at least Sphinx version $rec_version.\n";
+		print "         To upgrade, use:\n\n";
+		$rec_sphinx_upgrade = 1;
+	}
 }
 
 #
@@ -540,7 +606,7 @@ sub check_needs()
 		printf "\tsudo ln -sf %s /usr/bin/sphinx-build\n\n",
 		       which("sphinx-build-3");
 	}
-	if ($need_sphinx) {
+	if ($need_sphinx || $rec_sphinx_upgrade) {
 		my $activate = "$virtenv_dir/bin/activate";
 		if (-e "$ENV{'PWD'}/$activate") {
 			printf "\nNeed to activate virtualenv with:\n";
@@ -554,7 +620,8 @@ sub check_needs()
 			printf "\t$virtualenv $virtenv_dir\n";
 			printf "\t. $activate\n";
 			printf "\tpip install -r $requirement_file\n";
-			$need++;
+
+			$need++ if (!$rec_sphinx_upgrade);
 		}
 	}
 	printf "\n";
-- 
2.21.0


^ permalink raw reply related	[flat|nested] 21+ messages in thread

* Re: [PATCH 8/8] scripts/sphinx-pre-install: make it handle Sphinx versions
  2019-05-22 20:50 ` [PATCH 8/8] scripts/sphinx-pre-install: make it handle Sphinx versions Jonathan Corbet
@ 2019-05-22 21:22   ` Mauro Carvalho Chehab
  2019-05-22 21:44     ` Mauro Carvalho Chehab
  0 siblings, 1 reply; 21+ messages in thread
From: Mauro Carvalho Chehab @ 2019-05-22 21:22 UTC (permalink / raw)
  To: Jonathan Corbet
  Cc: linux-doc, linux-kernel, Jani Nikula, Markus Heiser,
	Oleksandr Natalenko, Mauro Carvalho Chehab

Em Wed, 22 May 2019 14:50:34 -0600
Jonathan Corbet <corbet@lwn.net> escreveu:

> From: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
> 
> As we want to switch to a newer Sphinx version in the future,
> add some version detected logic, checking if the current
> version meets the requirement and suggesting upgrade it the
> version is supported but too old.
> 
> Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
> Signed-off-by: Jonathan Corbet <corbet@lwn.net>
> ---
>  scripts/sphinx-pre-install | 81 ++++++++++++++++++++++++++++++++++----
>  1 file changed, 74 insertions(+), 7 deletions(-)
> 
> diff --git a/scripts/sphinx-pre-install b/scripts/sphinx-pre-install
> index f6a5c0bae31e..e667db230d0a 100755
> --- a/scripts/sphinx-pre-install
> +++ b/scripts/sphinx-pre-install
> @@ -13,7 +13,7 @@ use strict;
>  # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
>  # GNU General Public License for more details.
>  
> -my $virtenv_dir = "sphinx_1.4";
> +my $conf = "Documentation/conf.py";
>  my $requirement_file = "Documentation/sphinx/requirements.txt";
>  
>  #
> @@ -26,7 +26,9 @@ my $need = 0;
>  my $optional = 0;
>  my $need_symlink = 0;
>  my $need_sphinx = 0;
> +my $rec_sphinx_upgrade = 0;
>  my $install = "";
> +my $virtenv_dir = "sphinx_";
>  
>  #
>  # Command line arguments
> @@ -201,13 +203,15 @@ sub check_missing_tex($)
>  	}
>  }
>  
> -sub check_sphinx()
> +sub get_sphinx_fname()
>  {
> -	return if findprog("sphinx-build");
> +	my $fname = "sphinx-build";
> +	return $fname if findprog($fname);
>  
> -	if (findprog("sphinx-build-3")) {
> +	$fname = "sphinx-build-3";
> +	if (findprog($fname)) {
>  		$need_symlink = 1;
> -		return;
> +		return $fname;
>  	}
>  
>  	if ($virtualenv) {
> @@ -219,6 +223,68 @@ sub check_sphinx()
>  	} else {
>  		add_package("python-sphinx", 0);
>  	}
> +
> +	return "";
> +}
> +
> +sub check_sphinx()
> +{
> +	my $min_version;
> +	my $rec_version;
> +	my $cur_version;
> +
> +	open IN, $conf or die "Can't open $conf";
> +	while (<IN>) {
> +		if (m/^\s*needs_sphinx\s*=\s*[\'\"]([\d\.]+)[\'\"]/) {
> +			$min_version=$1;
> +			last;
> +		}
> +	}
> +	close IN;
> +
> +	die "Can't get needs_sphinx version from $conf" if (!$min_version);
> +
> +	open IN, $requirement_file or die "Can't open $requirement_file";
> +	while (<IN>) {
> +		if (m/^\s*Sphinx\s*==\s*([\d\.]+)$/) {
> +			$rec_version=$1;
> +			last;
> +		}
> +	}
> +	close IN;
> +
> +	die "Can't get recommended sphinx version from $requirement_file" if (!$min_version);
> +
> +	my $sphinx = get_sphinx_fname();
> +	return if ($sphinx eq "");
> +
> +	open IN, "$sphinx --version 2>&1 |" or die "$sphinx returned an error";
> +	while (<IN>) {
> +		if (m/^\s*sphinx-build\s+([\d\.]+)$/) {
> +			$cur_version=$1;
> +			last;
> +		}
> +	}
> +	close IN;
> +
> +	$virtenv_dir .= $rec_version;
> +
> +	die "$sphinx didn't return its version" if (!$cur_version);
> +
> +	printf "Sphinx version %s (minimal: %s, recommended >= %s)\n",
> +		$cur_version, $min_version, $rec_version;
> +
> +	if ($cur_version lt $min_version) {
> +		print "Warning: Sphinx version should be >= $min_version\n\n";
> +		$need_sphinx = 1;
> +		return;
> +	}
> +
> +	if ($cur_version lt $rec_version) {
> +		print "Warning: It is recommended at least Sphinx version $rec_version.\n";
> +		print "         To upgrade, use:\n\n";
> +		$rec_sphinx_upgrade = 1;
> +	}
>  }
>  
>  #
> @@ -540,7 +606,7 @@ sub check_needs()
>  		printf "\tsudo ln -sf %s /usr/bin/sphinx-build\n\n",
>  		       which("sphinx-build-3");
>  	}
> -	if ($need_sphinx) {
> +	if ($need_sphinx || $rec_sphinx_upgrade) {
>  		my $activate = "$virtenv_dir/bin/activate";
>  		if (-e "$ENV{'PWD'}/$activate") {
>  			printf "\nNeed to activate virtualenv with:\n";
> @@ -554,7 +620,8 @@ sub check_needs()
>  			printf "\t$virtualenv $virtenv_dir\n";
>  			printf "\t. $activate\n";
>  			printf "\tpip install -r $requirement_file\n";
> -			$need++;
> +
> +			$need++ if (!$rec_sphinx_upgrade);
>  		}
>  	}
>  	printf "\n";

Please fold this to the patch:

diff --git a/scripts/sphinx-pre-install b/scripts/sphinx-pre-install
index e667db230d0a..45427f4289ed 100755
--- a/scripts/sphinx-pre-install
+++ b/scripts/sphinx-pre-install
@@ -255,6 +255,8 @@ sub check_sphinx()
 
 	die "Can't get recommended sphinx version from $requirement_file" if (!$min_version);
 
+	$virtenv_dir .= $rec_version;
+
 	my $sphinx = get_sphinx_fname();
 	return if ($sphinx eq "");
 
@@ -267,8 +269,6 @@ sub check_sphinx()
 	}
 	close IN;
 
-	$virtenv_dir .= $rec_version;
-
 	die "$sphinx didn't return its version" if (!$cur_version);
 
 	printf "Sphinx version %s (minimal: %s, recommended >= %s)\n",


Thanks,
Mauro

^ permalink raw reply related	[flat|nested] 21+ messages in thread

* Re: [PATCH 8/8] scripts/sphinx-pre-install: make it handle Sphinx versions
  2019-05-22 21:22   ` Mauro Carvalho Chehab
@ 2019-05-22 21:44     ` Mauro Carvalho Chehab
  0 siblings, 0 replies; 21+ messages in thread
From: Mauro Carvalho Chehab @ 2019-05-22 21:44 UTC (permalink / raw)
  To: Jonathan Corbet
  Cc: linux-doc, linux-kernel, Jani Nikula, Markus Heiser, Oleksandr Natalenko

Em Wed, 22 May 2019 18:22:37 -0300
Mauro Carvalho Chehab <mchehab@kernel.org> escreveu:

> Em Wed, 22 May 2019 14:50:34 -0600
> Jonathan Corbet <corbet@lwn.net> escreveu:
> 
> > From: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
> > 
> > As we want to switch to a newer Sphinx version in the future,
> > add some version detected logic, checking if the current
> > version meets the requirement and suggesting upgrade it the
> > version is supported but too old.
> > 
> > Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
> > Signed-off-by: Jonathan Corbet <corbet@lwn.net>
> > ---
> >  scripts/sphinx-pre-install | 81 ++++++++++++++++++++++++++++++++++----
> >  1 file changed, 74 insertions(+), 7 deletions(-)
> > 
> > diff --git a/scripts/sphinx-pre-install b/scripts/sphinx-pre-install
> > index f6a5c0bae31e..e667db230d0a 100755
> > --- a/scripts/sphinx-pre-install
> > +++ b/scripts/sphinx-pre-install
> > @@ -13,7 +13,7 @@ use strict;
> >  # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
> >  # GNU General Public License for more details.
> >  
> > -my $virtenv_dir = "sphinx_1.4";
> > +my $conf = "Documentation/conf.py";
> >  my $requirement_file = "Documentation/sphinx/requirements.txt";
> >  
> >  #
> > @@ -26,7 +26,9 @@ my $need = 0;
> >  my $optional = 0;
> >  my $need_symlink = 0;
> >  my $need_sphinx = 0;
> > +my $rec_sphinx_upgrade = 0;
> >  my $install = "";
> > +my $virtenv_dir = "sphinx_";
> >  
> >  #
> >  # Command line arguments
> > @@ -201,13 +203,15 @@ sub check_missing_tex($)
> >  	}
> >  }
> >  
> > -sub check_sphinx()
> > +sub get_sphinx_fname()
> >  {
> > -	return if findprog("sphinx-build");
> > +	my $fname = "sphinx-build";
> > +	return $fname if findprog($fname);
> >  
> > -	if (findprog("sphinx-build-3")) {
> > +	$fname = "sphinx-build-3";
> > +	if (findprog($fname)) {
> >  		$need_symlink = 1;
> > -		return;
> > +		return $fname;
> >  	}
> >  
> >  	if ($virtualenv) {
> > @@ -219,6 +223,68 @@ sub check_sphinx()
> >  	} else {
> >  		add_package("python-sphinx", 0);
> >  	}
> > +
> > +	return "";
> > +}
> > +
> > +sub check_sphinx()
> > +{
> > +	my $min_version;
> > +	my $rec_version;
> > +	my $cur_version;
> > +
> > +	open IN, $conf or die "Can't open $conf";
> > +	while (<IN>) {
> > +		if (m/^\s*needs_sphinx\s*=\s*[\'\"]([\d\.]+)[\'\"]/) {
> > +			$min_version=$1;
> > +			last;
> > +		}
> > +	}
> > +	close IN;
> > +
> > +	die "Can't get needs_sphinx version from $conf" if (!$min_version);
> > +
> > +	open IN, $requirement_file or die "Can't open $requirement_file";
> > +	while (<IN>) {
> > +		if (m/^\s*Sphinx\s*==\s*([\d\.]+)$/) {
> > +			$rec_version=$1;
> > +			last;
> > +		}
> > +	}
> > +	close IN;
> > +
> > +	die "Can't get recommended sphinx version from $requirement_file" if (!$min_version);
> > +
> > +	my $sphinx = get_sphinx_fname();
> > +	return if ($sphinx eq "");
> > +
> > +	open IN, "$sphinx --version 2>&1 |" or die "$sphinx returned an error";
> > +	while (<IN>) {
> > +		if (m/^\s*sphinx-build\s+([\d\.]+)$/) {
> > +			$cur_version=$1;
> > +			last;
> > +		}
> > +	}
> > +	close IN;
> > +
> > +	$virtenv_dir .= $rec_version;
> > +
> > +	die "$sphinx didn't return its version" if (!$cur_version);
> > +
> > +	printf "Sphinx version %s (minimal: %s, recommended >= %s)\n",
> > +		$cur_version, $min_version, $rec_version;
> > +
> > +	if ($cur_version lt $min_version) {
> > +		print "Warning: Sphinx version should be >= $min_version\n\n";
> > +		$need_sphinx = 1;
> > +		return;
> > +	}
> > +
> > +	if ($cur_version lt $rec_version) {
> > +		print "Warning: It is recommended at least Sphinx version $rec_version.\n";
> > +		print "         To upgrade, use:\n\n";
> > +		$rec_sphinx_upgrade = 1;
> > +	}
> >  }
> >  
> >  #
> > @@ -540,7 +606,7 @@ sub check_needs()
> >  		printf "\tsudo ln -sf %s /usr/bin/sphinx-build\n\n",
> >  		       which("sphinx-build-3");
> >  	}
> > -	if ($need_sphinx) {
> > +	if ($need_sphinx || $rec_sphinx_upgrade) {
> >  		my $activate = "$virtenv_dir/bin/activate";
> >  		if (-e "$ENV{'PWD'}/$activate") {
> >  			printf "\nNeed to activate virtualenv with:\n";
> > @@ -554,7 +620,8 @@ sub check_needs()
> >  			printf "\t$virtualenv $virtenv_dir\n";
> >  			printf "\t. $activate\n";
> >  			printf "\tpip install -r $requirement_file\n";
> > -			$need++;
> > +
> > +			$need++ if (!$rec_sphinx_upgrade);
> >  		}
> >  	}
> >  	printf "\n";  
> 
> Please fold this to the patch:
> 
> diff --git a/scripts/sphinx-pre-install b/scripts/sphinx-pre-install
> index e667db230d0a..45427f4289ed 100755
> --- a/scripts/sphinx-pre-install
> +++ b/scripts/sphinx-pre-install
> @@ -255,6 +255,8 @@ sub check_sphinx()
>  
>  	die "Can't get recommended sphinx version from $requirement_file" if (!$min_version);
>  
> +	$virtenv_dir .= $rec_version;
> +
>  	my $sphinx = get_sphinx_fname();
>  	return if ($sphinx eq "");
>  
> @@ -267,8 +269,6 @@ sub check_sphinx()
>  	}
>  	close IN;
>  
> -	$virtenv_dir .= $rec_version;
> -
>  	die "$sphinx didn't return its version" if (!$cur_version);
>  
>  	printf "Sphinx version %s (minimal: %s, recommended >= %s)\n",
> 
> 
> Thanks,
> Mauro

Found another issue when trying to run it with Sphinx 1.2. Just sent
a version 2 with this fix, plus the version detection for very old
Sphinx versions.

Thanks,
Mauro

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: [PATCH 3/8] docs: fix numaperf.rst and add it to the doc tree
  2019-05-22 20:50 ` [PATCH 3/8] docs: fix numaperf.rst and add it to the doc tree Jonathan Corbet
@ 2019-05-23  5:45   ` Mike Rapoport
  0 siblings, 0 replies; 21+ messages in thread
From: Mike Rapoport @ 2019-05-23  5:45 UTC (permalink / raw)
  To: Jonathan Corbet
  Cc: linux-doc, linux-kernel, Jani Nikula, Markus Heiser,
	Mauro Carvalho Chehab, Oleksandr Natalenko, Keith Busch

On Wed, May 22, 2019 at 02:50:29PM -0600, Jonathan Corbet wrote:
> Commit 13bac55ef7ae ("doc/mm: New documentation for memory performance")
> added numaperf.rst, but did not add it to the TOC tree.  There was also an
> incorrectly marked literal block leading to this warning sequence:
> 
>   numaperf.rst:24: WARNING: Unexpected indentation.
>   numaperf.rst:24: WARNING: Inline substitution_reference start-string without end-string.
>   numaperf.rst:25: WARNING: Block quote ends without a blank line; unexpected unindent.
> 
> Fix the block and add the file to the document tree.
> 
> Fixes: 13bac55ef7ae ("doc/mm: New documentation for memory performance")
> Cc: Keith Busch <keith.busch@intel.com>
> Cc: Mike Rapoport <rppt@linux.ibm.com>
> Signed-off-by: Jonathan Corbet <corbet@lwn.net>

Reviewed-by: Mike Rapoport <rppt@linux.ibm.com>

> ---
>  Documentation/admin-guide/mm/index.rst    | 1 +
>  Documentation/admin-guide/mm/numaperf.rst | 2 +-
>  2 files changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/Documentation/admin-guide/mm/index.rst b/Documentation/admin-guide/mm/index.rst
> index 8edb35f11317..ddf8d8d33377 100644
> --- a/Documentation/admin-guide/mm/index.rst
> +++ b/Documentation/admin-guide/mm/index.rst
> @@ -31,6 +31,7 @@ the Linux memory management.
>     ksm
>     memory-hotplug
>     numa_memory_policy
> +   numaperf
>     pagemap
>     soft-dirty
>     transhuge
> diff --git a/Documentation/admin-guide/mm/numaperf.rst b/Documentation/admin-guide/mm/numaperf.rst
> index b79f70c04397..c067ed145158 100644
> --- a/Documentation/admin-guide/mm/numaperf.rst
> +++ b/Documentation/admin-guide/mm/numaperf.rst
> @@ -15,7 +15,7 @@ characteristics.  Some memory may share the same node as a CPU, and others
>  are provided as memory only nodes. While memory only nodes do not provide
>  CPUs, they may still be local to one or more compute nodes relative to
>  other nodes. The following diagram shows one such example of two compute
> -nodes with local memory and a memory only node for each of compute node:
> +nodes with local memory and a memory only node for each of compute node::
>  
>   +------------------+     +------------------+
>   | Compute Node 0   +-----+ Compute Node 1   |
> -- 
> 2.21.0
> 

-- 
Sincerely yours,
Mike.


^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: [PATCH 0/8] docs: Fixes for recent versions of Sphinx
  2019-05-22 20:50 [PATCH 0/8] docs: Fixes for recent versions of Sphinx Jonathan Corbet
                   ` (7 preceding siblings ...)
  2019-05-22 20:50 ` [PATCH 8/8] scripts/sphinx-pre-install: make it handle Sphinx versions Jonathan Corbet
@ 2019-05-23  9:39 ` Oleksandr Natalenko
  2019-05-23 10:13   ` Jani Nikula
  2019-05-23 10:45   ` Mauro Carvalho Chehab
  8 siblings, 2 replies; 21+ messages in thread
From: Oleksandr Natalenko @ 2019-05-23  9:39 UTC (permalink / raw)
  To: Jonathan Corbet
  Cc: linux-doc, linux-kernel, Jani Nikula, Markus Heiser,
	Mauro Carvalho Chehab

Hi.

On Wed, May 22, 2019 at 02:50:26PM -0600, Jonathan Corbet wrote:
> The Sphinx folks deprecated some interfaces in the 2.0 release; one
> immediate result of that is a bunch of warnings that show up when building
> with 1.8.  These two patches make those warnings go away, but at a cost:
> 
>  - It introduces a couple of Sphinx version checks, which are always
>    ugly, but the alternative would be to stop supporting versions
>    before 1.7.  For now, I think we can carry that cruft.
> 
>  - The second patch causes the build to fail horribly on newer
>    Sphinx installations.  The change to switch_source_input() seems
>    to make the parser much more finicky, increasing warnings and
>    eventually failing the build altogether.  In particular, it will
>    scream about problems in .rst files that are not included in the
>    TOC tree at all.
> 
> This version of the patch set fixes up the worst problems (the i915 error
> in particular, which breaks the build hard).  I've tested it with versions
> 1.4, 1.8, and 2.0.
> 
> Given that these problems are already breaking builds on some systems, I
> think I may try to sell these changes to Linus for 5.2 still.
> 
> Changes since v1:
>   - Fix up a couple of logging changes I somehow missed
>   - Don't save state when using switch_source_input()
>   - Fix a few build errors
>   - Add Mauro's sphinx-pre-install improvements
> 
> Jonathan Corbet (7):
>   doc: Cope with Sphinx logging deprecations
>   doc: Cope with the deprecation of AutoReporter
>   docs: fix numaperf.rst and add it to the doc tree
>   lib/list_sort: fix kerneldoc build error
>   docs: fix multiple doc build warnings in enumeration.rst
>   docs/gpu: fix a documentation build break in i915.rst
>   docs: Fix conf.py for Sphinx 2.0
> 
> Mauro Carvalho Chehab (1):
>   scripts/sphinx-pre-install: make it handle Sphinx versions
> 
>  Documentation/admin-guide/mm/index.rst        |  1 +
>  Documentation/admin-guide/mm/numaperf.rst     |  2 +-
>  Documentation/conf.py                         |  2 +-
>  .../firmware-guide/acpi/enumeration.rst       |  2 +-
>  Documentation/gpu/i915.rst                    |  4 +-
>  Documentation/sphinx/kerneldoc.py             | 44 +++++++---
>  Documentation/sphinx/kernellog.py             | 28 +++++++
>  Documentation/sphinx/kfigure.py               | 40 +++++----
>  lib/list_sort.c                               |  3 +-
>  scripts/sphinx-pre-install                    | 81 +++++++++++++++++--
>  10 files changed, 166 insertions(+), 41 deletions(-)
>  create mode 100644 Documentation/sphinx/kernellog.py
> 
> -- 
> 2.21.0
> 

Thanks for the efforts. I've run this on top of Linus' tree, and the
only sphinx-related deprecation warning I've spotted is this one:

/home/onatalen/work/src/linux/Documentation/sphinx/cdomain.py:51: RemovedInSphinx30Warning: app.override_domain() is deprecated. Use app.add_domain() with override option instead.
  app.override_domain(CDomain)

Otherwise, it builds.

-- 
  Best regards,
    Oleksandr Natalenko (post-factum)
    Senior Software Maintenance Engineer

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: [PATCH 0/8] docs: Fixes for recent versions of Sphinx
  2019-05-23  9:39 ` [PATCH 0/8] docs: Fixes for recent versions of Sphinx Oleksandr Natalenko
@ 2019-05-23 10:13   ` Jani Nikula
  2019-05-23 10:15     ` Oleksandr Natalenko
  2019-05-23 10:45   ` Mauro Carvalho Chehab
  1 sibling, 1 reply; 21+ messages in thread
From: Jani Nikula @ 2019-05-23 10:13 UTC (permalink / raw)
  To: Oleksandr Natalenko, Jonathan Corbet
  Cc: linux-doc, linux-kernel, Markus Heiser, Mauro Carvalho Chehab

On Thu, 23 May 2019, Oleksandr Natalenko <oleksandr@redhat.com> wrote:
> Thanks for the efforts. I've run this on top of Linus' tree, and the
> only sphinx-related deprecation warning I've spotted is this one:
>
> /home/onatalen/work/src/linux/Documentation/sphinx/cdomain.py:51: RemovedInSphinx30Warning: app.override_domain() is deprecated. Use app.add_domain() with override option instead.
>   app.override_domain(CDomain)
>
> Otherwise, it builds.

Please share your Sphinx version (sphinx-build --version).

BR,
Jani.


-- 
Jani Nikula, Intel Open Source Graphics Center

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: [PATCH 0/8] docs: Fixes for recent versions of Sphinx
  2019-05-23 10:13   ` Jani Nikula
@ 2019-05-23 10:15     ` Oleksandr Natalenko
  2019-05-23 10:38       ` Mauro Carvalho Chehab
  0 siblings, 1 reply; 21+ messages in thread
From: Oleksandr Natalenko @ 2019-05-23 10:15 UTC (permalink / raw)
  To: Jani Nikula
  Cc: Jonathan Corbet, linux-doc, linux-kernel, Markus Heiser,
	Mauro Carvalho Chehab

On Thu, May 23, 2019 at 01:13:23PM +0300, Jani Nikula wrote:
> On Thu, 23 May 2019, Oleksandr Natalenko <oleksandr@redhat.com> wrote:
> > Thanks for the efforts. I've run this on top of Linus' tree, and the
> > only sphinx-related deprecation warning I've spotted is this one:
> >
> > /home/onatalen/work/src/linux/Documentation/sphinx/cdomain.py:51: RemovedInSphinx30Warning: app.override_domain() is deprecated. Use app.add_domain() with override option instead.
> >   app.override_domain(CDomain)
> >
> > Otherwise, it builds.
> 
> Please share your Sphinx version (sphinx-build --version).

[~]$ sphinx-build --version
sphinx-build 2.0.1

-- 
  Best regards,
    Oleksandr Natalenko (post-factum)
    Senior Software Maintenance Engineer

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: [PATCH 0/8] docs: Fixes for recent versions of Sphinx
  2019-05-23 10:15     ` Oleksandr Natalenko
@ 2019-05-23 10:38       ` Mauro Carvalho Chehab
  2019-05-23 13:48         ` Jonathan Corbet
  0 siblings, 1 reply; 21+ messages in thread
From: Mauro Carvalho Chehab @ 2019-05-23 10:38 UTC (permalink / raw)
  To: Oleksandr Natalenko
  Cc: Jani Nikula, Jonathan Corbet, linux-doc, linux-kernel, Markus Heiser

Em Thu, 23 May 2019 12:15:34 +0200
Oleksandr Natalenko <oleksandr@redhat.com> escreveu:

> On Thu, May 23, 2019 at 01:13:23PM +0300, Jani Nikula wrote:
> > On Thu, 23 May 2019, Oleksandr Natalenko <oleksandr@redhat.com> wrote:  
> > > Thanks for the efforts. I've run this on top of Linus' tree, and the
> > > only sphinx-related deprecation warning I've spotted is this one:
> > >
> > > /home/onatalen/work/src/linux/Documentation/sphinx/cdomain.py:51: RemovedInSphinx30Warning: app.override_domain() is deprecated. Use app.add_domain() with override option instead.
> > >   app.override_domain(CDomain)
> > >
> > > Otherwise, it builds.  
> > 
> > Please share your Sphinx version (sphinx-build --version).  
> 
> [~]$ sphinx-build --version
> sphinx-build 2.0.1
> 

Same here with vanilla 2.0.0 (installed via pip3):

Running Sphinx v2.0.0
/devel/v4l/docs/Documentation/sphinx/cdomain.py:51: RemovedInSphinx30Warning: app.override_domain() is deprecated. Use app.add_domain() with override option instead.
  app.override_domain(CDomain)

It seems that this message is there since 1.8:

	https://www.sphinx-doc.org/en/1.8/_modules/sphinx/application.html

The fix seems to be trivial: just replace it to:

	app.add_domain(domain, override=True)

Thanks,
Mauro

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: [PATCH 0/8] docs: Fixes for recent versions of Sphinx
  2019-05-23  9:39 ` [PATCH 0/8] docs: Fixes for recent versions of Sphinx Oleksandr Natalenko
  2019-05-23 10:13   ` Jani Nikula
@ 2019-05-23 10:45   ` Mauro Carvalho Chehab
  2019-05-23 11:22     ` Oleksandr Natalenko
  1 sibling, 1 reply; 21+ messages in thread
From: Mauro Carvalho Chehab @ 2019-05-23 10:45 UTC (permalink / raw)
  To: Oleksandr Natalenko
  Cc: Jonathan Corbet, linux-doc, linux-kernel, Jani Nikula, Markus Heiser

Em Thu, 23 May 2019 11:39:44 +0200
Oleksandr Natalenko <oleksandr@redhat.com> escreveu:

> Hi.
> 
> On Wed, May 22, 2019 at 02:50:26PM -0600, Jonathan Corbet wrote:
> > The Sphinx folks deprecated some interfaces in the 2.0 release; one
> > immediate result of that is a bunch of warnings that show up when building
> > with 1.8.  These two patches make those warnings go away, but at a cost:
> > 
> >  - It introduces a couple of Sphinx version checks, which are always
> >    ugly, but the alternative would be to stop supporting versions
> >    before 1.7.  For now, I think we can carry that cruft.
> > 
> >  - The second patch causes the build to fail horribly on newer
> >    Sphinx installations.  The change to switch_source_input() seems
> >    to make the parser much more finicky, increasing warnings and
> >    eventually failing the build altogether.  In particular, it will
> >    scream about problems in .rst files that are not included in the
> >    TOC tree at all.
> > 
> > This version of the patch set fixes up the worst problems (the i915 error
> > in particular, which breaks the build hard).  I've tested it with versions
> > 1.4, 1.8, and 2.0.
> > 
> > Given that these problems are already breaking builds on some systems, I
> > think I may try to sell these changes to Linus for 5.2 still.
> > 
> > Changes since v1:
> >   - Fix up a couple of logging changes I somehow missed
> >   - Don't save state when using switch_source_input()
> >   - Fix a few build errors
> >   - Add Mauro's sphinx-pre-install improvements
> > 
> > Jonathan Corbet (7):
> >   doc: Cope with Sphinx logging deprecations
> >   doc: Cope with the deprecation of AutoReporter
> >   docs: fix numaperf.rst and add it to the doc tree
> >   lib/list_sort: fix kerneldoc build error
> >   docs: fix multiple doc build warnings in enumeration.rst
> >   docs/gpu: fix a documentation build break in i915.rst
> >   docs: Fix conf.py for Sphinx 2.0
> > 
> > Mauro Carvalho Chehab (1):
> >   scripts/sphinx-pre-install: make it handle Sphinx versions
> > 
> >  Documentation/admin-guide/mm/index.rst        |  1 +
> >  Documentation/admin-guide/mm/numaperf.rst     |  2 +-
> >  Documentation/conf.py                         |  2 +-
> >  .../firmware-guide/acpi/enumeration.rst       |  2 +-
> >  Documentation/gpu/i915.rst                    |  4 +-
> >  Documentation/sphinx/kerneldoc.py             | 44 +++++++---
> >  Documentation/sphinx/kernellog.py             | 28 +++++++
> >  Documentation/sphinx/kfigure.py               | 40 +++++----
> >  lib/list_sort.c                               |  3 +-
> >  scripts/sphinx-pre-install                    | 81 +++++++++++++++++--
> >  10 files changed, 166 insertions(+), 41 deletions(-)
> >  create mode 100644 Documentation/sphinx/kernellog.py
> > 
> > -- 
> > 2.21.0
> >   
> 
> Thanks for the efforts. I've run this on top of Linus' tree, and the
> only sphinx-related deprecation warning I've spotted is this one:
> 
> /home/onatalen/work/src/linux/Documentation/sphinx/cdomain.py:51: RemovedInSphinx30Warning: app.override_domain() is deprecated. Use app.add_domain() with override option instead.
>   app.override_domain(CDomain)
> 
> Otherwise, it builds.
> 

Just sent a fix. Could you please test?


https://lore.kernel.org/lkml/b38a9fdfdcda49b2c6118072afac564e96406800.1558608217.git.mchehab+samsung@kernel.org/T/#u

Thanks,
Mauro

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: [PATCH 0/8] docs: Fixes for recent versions of Sphinx
  2019-05-23 10:45   ` Mauro Carvalho Chehab
@ 2019-05-23 11:22     ` Oleksandr Natalenko
  0 siblings, 0 replies; 21+ messages in thread
From: Oleksandr Natalenko @ 2019-05-23 11:22 UTC (permalink / raw)
  To: Mauro Carvalho Chehab
  Cc: Jonathan Corbet, linux-doc, linux-kernel, Jani Nikula, Markus Heiser

On Thu, May 23, 2019 at 07:45:45AM -0300, Mauro Carvalho Chehab wrote:
> Em Thu, 23 May 2019 11:39:44 +0200
> Oleksandr Natalenko <oleksandr@redhat.com> escreveu:
> 
> > Hi.
> > 
> > On Wed, May 22, 2019 at 02:50:26PM -0600, Jonathan Corbet wrote:
> > > The Sphinx folks deprecated some interfaces in the 2.0 release; one
> > > immediate result of that is a bunch of warnings that show up when building
> > > with 1.8.  These two patches make those warnings go away, but at a cost:
> > > 
> > >  - It introduces a couple of Sphinx version checks, which are always
> > >    ugly, but the alternative would be to stop supporting versions
> > >    before 1.7.  For now, I think we can carry that cruft.
> > > 
> > >  - The second patch causes the build to fail horribly on newer
> > >    Sphinx installations.  The change to switch_source_input() seems
> > >    to make the parser much more finicky, increasing warnings and
> > >    eventually failing the build altogether.  In particular, it will
> > >    scream about problems in .rst files that are not included in the
> > >    TOC tree at all.
> > > 
> > > This version of the patch set fixes up the worst problems (the i915 error
> > > in particular, which breaks the build hard).  I've tested it with versions
> > > 1.4, 1.8, and 2.0.
> > > 
> > > Given that these problems are already breaking builds on some systems, I
> > > think I may try to sell these changes to Linus for 5.2 still.
> > > 
> > > Changes since v1:
> > >   - Fix up a couple of logging changes I somehow missed
> > >   - Don't save state when using switch_source_input()
> > >   - Fix a few build errors
> > >   - Add Mauro's sphinx-pre-install improvements
> > > 
> > > Jonathan Corbet (7):
> > >   doc: Cope with Sphinx logging deprecations
> > >   doc: Cope with the deprecation of AutoReporter
> > >   docs: fix numaperf.rst and add it to the doc tree
> > >   lib/list_sort: fix kerneldoc build error
> > >   docs: fix multiple doc build warnings in enumeration.rst
> > >   docs/gpu: fix a documentation build break in i915.rst
> > >   docs: Fix conf.py for Sphinx 2.0
> > > 
> > > Mauro Carvalho Chehab (1):
> > >   scripts/sphinx-pre-install: make it handle Sphinx versions
> > > 
> > >  Documentation/admin-guide/mm/index.rst        |  1 +
> > >  Documentation/admin-guide/mm/numaperf.rst     |  2 +-
> > >  Documentation/conf.py                         |  2 +-
> > >  .../firmware-guide/acpi/enumeration.rst       |  2 +-
> > >  Documentation/gpu/i915.rst                    |  4 +-
> > >  Documentation/sphinx/kerneldoc.py             | 44 +++++++---
> > >  Documentation/sphinx/kernellog.py             | 28 +++++++
> > >  Documentation/sphinx/kfigure.py               | 40 +++++----
> > >  lib/list_sort.c                               |  3 +-
> > >  scripts/sphinx-pre-install                    | 81 +++++++++++++++++--
> > >  10 files changed, 166 insertions(+), 41 deletions(-)
> > >  create mode 100644 Documentation/sphinx/kernellog.py
> > > 
> > > -- 
> > > 2.21.0
> > >   
> > 
> > Thanks for the efforts. I've run this on top of Linus' tree, and the
> > only sphinx-related deprecation warning I've spotted is this one:
> > 
> > /home/onatalen/work/src/linux/Documentation/sphinx/cdomain.py:51: RemovedInSphinx30Warning: app.override_domain() is deprecated. Use app.add_domain() with override option instead.
> >   app.override_domain(CDomain)
> > 
> > Otherwise, it builds.
> > 
> 
> Just sent a fix. Could you please test?
> 
> 
> https://lore.kernel.org/lkml/b38a9fdfdcda49b2c6118072afac564e96406800.1558608217.git.mchehab+samsung@kernel.org/T/#u

Yes, now it's fine. Thanks.

> 
> Thanks,
> Mauro

-- 
  Best regards,
    Oleksandr Natalenko (post-factum)
    Senior Software Maintenance Engineer

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: [PATCH 0/8] docs: Fixes for recent versions of Sphinx
  2019-05-23 10:38       ` Mauro Carvalho Chehab
@ 2019-05-23 13:48         ` Jonathan Corbet
  0 siblings, 0 replies; 21+ messages in thread
From: Jonathan Corbet @ 2019-05-23 13:48 UTC (permalink / raw)
  To: Mauro Carvalho Chehab
  Cc: Oleksandr Natalenko, Jani Nikula, linux-doc, linux-kernel, Markus Heiser

On Thu, 23 May 2019 07:38:30 -0300
Mauro Carvalho Chehab <mchehab@kernel.org> wrote:

> It seems that this message is there since 1.8:
> 
> 	https://www.sphinx-doc.org/en/1.8/_modules/sphinx/application.html

...which is strange, since I didn't see it until I built with 2.0.  It was
annoying to see a new warning, but I figured we had some time still before
needing to rush out a last-minute fix for that one :)

jon

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: [PATCH 6/8] docs/gpu: fix a documentation build break in i915.rst
  2019-05-22 20:50 ` [PATCH 6/8] docs/gpu: fix a documentation build break in i915.rst Jonathan Corbet
@ 2019-05-29  6:54   ` Daniel Vetter
  2019-05-29 13:50     ` Jonathan Corbet
  0 siblings, 1 reply; 21+ messages in thread
From: Daniel Vetter @ 2019-05-29  6:54 UTC (permalink / raw)
  To: Jonathan Corbet
  Cc: Linux Doc Mailing List, Linux Kernel Mailing List, Jani Nikula,
	Markus Heiser, Mauro Carvalho Chehab, Oleksandr Natalenko

On Wed, May 22, 2019 at 10:51 PM Jonathan Corbet <corbet@lwn.net> wrote:
>
> Documentation/gpu/i915.rst is not included in the TOC tree, but newer
> versions of sphinx parse it anyway.  That leads to this hard build failure:

It is included I think: Documentation/gpu/index.rst -> drivers.rst ->
i915.rst. With that corrected A-b: me.

btw this patch didn't go to intel-gfx and all i915 maintainers, I
think per get_maintainers.pl it should have. Just asking since I had a
few patches of my own where get_maintainers.pl didn't seem to do the
right thing somehow.
-Daniel

>
> > Global GTT Fence Handling
> > ~~~~~~~~~~~~~~~~~~~~~~~~~
> >
> > reST markup error:
> > /stuff/k/git/kernel/Documentation/gpu/i915.rst:403: (SEVERE/4) Title level inconsistent:
>
> Make the underlining consistent and restore a working docs build.
>
> Signed-off-by: Jonathan Corbet <corbet@lwn.net>
> ---
>  Documentation/gpu/i915.rst | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/Documentation/gpu/i915.rst b/Documentation/gpu/i915.rst
> index 055df45596c1..cf9ff64753cc 100644
> --- a/Documentation/gpu/i915.rst
> +++ b/Documentation/gpu/i915.rst
> @@ -401,13 +401,13 @@ GTT Fences and Swizzling
>     :internal:
>
>  Global GTT Fence Handling
> -~~~~~~~~~~~~~~~~~~~~~~~~~
> +-------------------------
>
>  .. kernel-doc:: drivers/gpu/drm/i915/i915_gem_fence_reg.c
>     :doc: fence register handling
>
>  Hardware Tiling and Swizzling Details
> -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> +-------------------------------------
>
>  .. kernel-doc:: drivers/gpu/drm/i915/i915_gem_fence_reg.c
>     :doc: tiling swizzling details
> --
> 2.21.0
>


-- 
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: [PATCH 6/8] docs/gpu: fix a documentation build break in i915.rst
  2019-05-29  6:54   ` Daniel Vetter
@ 2019-05-29 13:50     ` Jonathan Corbet
  0 siblings, 0 replies; 21+ messages in thread
From: Jonathan Corbet @ 2019-05-29 13:50 UTC (permalink / raw)
  To: Daniel Vetter
  Cc: Linux Doc Mailing List, Linux Kernel Mailing List, Jani Nikula,
	Markus Heiser, Mauro Carvalho Chehab, Oleksandr Natalenko

On Wed, 29 May 2019 08:54:16 +0200
Daniel Vetter <daniel.vetter@ffwll.ch> wrote:

> > Documentation/gpu/i915.rst is not included in the TOC tree, but newer
> > versions of sphinx parse it anyway.  That leads to this hard build failure:  
> 
> It is included I think: Documentation/gpu/index.rst -> drivers.rst ->
> i915.rst. With that corrected A-b: me.
> 
> btw this patch didn't go to intel-gfx and all i915 maintainers, I
> think per get_maintainers.pl it should have. Just asking since I had a
> few patches of my own where get_maintainers.pl didn't seem to do the
> right thing somehow.

It is included, just a level down and I wasn't paying attention.

In any case, this patch needs to be dropped; the kerneldoc comment
changes I sent (and Jani acked) are the better fix for this problem.

Thanks,

jon

^ permalink raw reply	[flat|nested] 21+ messages in thread

end of thread, other threads:[~2019-05-29 13:50 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-05-22 20:50 [PATCH 0/8] docs: Fixes for recent versions of Sphinx Jonathan Corbet
2019-05-22 20:50 ` [PATCH 1/8] doc: Cope with Sphinx logging deprecations Jonathan Corbet
2019-05-22 20:50 ` [PATCH 2/8] doc: Cope with the deprecation of AutoReporter Jonathan Corbet
2019-05-22 20:50 ` [PATCH 3/8] docs: fix numaperf.rst and add it to the doc tree Jonathan Corbet
2019-05-23  5:45   ` Mike Rapoport
2019-05-22 20:50 ` [PATCH 4/8] lib/list_sort: fix kerneldoc build error Jonathan Corbet
2019-05-22 20:50 ` [PATCH 5/8] docs: fix multiple doc build warnings in enumeration.rst Jonathan Corbet
2019-05-22 20:50 ` [PATCH 6/8] docs/gpu: fix a documentation build break in i915.rst Jonathan Corbet
2019-05-29  6:54   ` Daniel Vetter
2019-05-29 13:50     ` Jonathan Corbet
2019-05-22 20:50 ` [PATCH 7/8] docs: Fix conf.py for Sphinx 2.0 Jonathan Corbet
2019-05-22 20:50 ` [PATCH 8/8] scripts/sphinx-pre-install: make it handle Sphinx versions Jonathan Corbet
2019-05-22 21:22   ` Mauro Carvalho Chehab
2019-05-22 21:44     ` Mauro Carvalho Chehab
2019-05-23  9:39 ` [PATCH 0/8] docs: Fixes for recent versions of Sphinx Oleksandr Natalenko
2019-05-23 10:13   ` Jani Nikula
2019-05-23 10:15     ` Oleksandr Natalenko
2019-05-23 10:38       ` Mauro Carvalho Chehab
2019-05-23 13:48         ` Jonathan Corbet
2019-05-23 10:45   ` Mauro Carvalho Chehab
2019-05-23 11:22     ` Oleksandr Natalenko

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.