linux-next.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
To: Jonathan Corbet <corbet@lwn.net>
Cc: Stephen Rothwell <sfr@canb.auug.org.au>,
	Minchan Kim <minchan@kernel.org>,
	Andrew Morton <akpm@linux-foundation.org>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	Linux Next Mailing List <linux-next@vger.kernel.org>
Subject: Re: linux-next: build warning after merge of the akpm-current tree
Date: Wed, 17 Mar 2021 14:22:38 +0100	[thread overview]
Message-ID: <20210317142238.228fb1e8@coco.lan> (raw)
In-Reply-To: <875z1qy9un.fsf@meer.lwn.net>

Em Tue, 16 Mar 2021 17:09:20 -0600
Jonathan Corbet <corbet@lwn.net> escreveu:

> Stephen Rothwell <sfr@canb.auug.org.au> writes:
> 
> [Adding Mauro]
> 
> > On Tue, 16 Mar 2021 11:18:11 -0700 Minchan Kim <minchan@kernel.org> wrote:
> >>
> >> On Mon, Mar 15, 2021 at 04:35:22PM +1100, Stephen Rothwell wrote:
> >> > Hi all,
> >> > 
> >> > After merging the akpm-current tree, today's linux-next build (htmldocs)
> >> > produced this warning:
> >> > 
> >> > Documentation/ABI/testing/sysfs-kernel-mm-cma:2: WARNING: Inline interpreted text or phrase reference start-string without end-string.
> >> > 
> >> > Introduced by commit
> >> > 
> >> >   	 ("mm: cma: support sysfs")
> >> >   
> >> 
> >> Hmm, I don't get it what happened here. Was it false-positive?
> >
> > I get the above from a "make htmldocs" run ... I don't know what causes
> > it, sorry.  [cc'ing Jon]
> 
> OK, this took a while to figure out.  The problem is this text in
> sysfs-kernel-mm-cma:
> 
> > 		Each CMA heap subdirectory (that is, each
> > 		/sys/kernel/mm/cma/<cma-heap-name> directory) contains the
> > 		following items:
> 
> When scripts/get_abi.pl sees the /sys/kernel/mm/... string it wants to
> turn it into a link to the matching ABI entry; at that point, the
> <text in angle brackets> collides with the Sphinx directive and you get
> that totally useless warning.
> 
> I think this is a bug in get_abi.pl. Honestly I wonder if all these
> cross-links are needed at all; if they truly are, then we shouldn't be
> making bogus ones.  Mauro, how hard would it be to make this do the
> right thing?

Actually, we need the "<>" syntax a the output document.

Basically, the script assumes that everything inside the ABI description
is ReST. So, it preserves the text untouched, except when creating
cross-references, which is the case here. The script expects an entry
for every cross-referenced symbol. In other words, something like:

	/sys/kernel/mm/cma/ 

should be converted into:

	:ref:`/sys/kernel/mm/cma/ <abi_sys_kernel_mm_cma>`

The actual output is more complex than that, as there are some special
chars that need to be escaped at the naming part.

You can check the full output of this single file with:

	$ mkdir Documentation/ABI/aa && cp Documentation/ABI/testing/sysfs-kernel-mm-cma
	$ ./scripts/get_abi.pl --dir=Documentation/ABI/aa rest

	Symbols under /sys/kernel
	-------------------------
	
	.. _abi_sys_kernel_mm_cma:
	
	+-------------------------+
	| **/sys/kernel/mm/cma/** |
	+-------------------------+
	
	Defined on file :ref:`sysfs-kernel-mm-cma <abi_file_aa_sysfs_kernel_mm_cma>`
	
	:ref:`\/sys\/kernel\/mm\/cma\/ <abi_sys_kernel_mm_cma>` contains a subdirectory for each CMA
	heap name (also sometimes called CMA areas).
	
	Each CMA heap subdirectory (that is, each
	:ref:`\/sys\/kernel\/mm\/cma\/ <abi_sys_kernel_mm_cma>`<cma-heap-name> directory) contains the
	following items:
	
	        alloc_pages_success
	        alloc_pages_fail
	
	
	.. _abi_sys_kernel_mm_cma_cma_heap_name_alloc_pages_fail:
	
	+-------------------------------------------------------------+
	| **/sys/kernel/mm/cma/<cma\-heap\-name>/alloc\_pages\_fail** |
	+-------------------------------------------------------------+
	
	Defined on file :ref:`sysfs-kernel-mm-cma <abi_file_aa_sysfs_kernel_mm_cma>`
	
	the number of pages CMA API failed to allocate
	
	
	.. _abi_sys_kernel_mm_cma_cma_heap_name_alloc_pages_success:
	
	+----------------------------------------------------------------+
	| **/sys/kernel/mm/cma/<cma\-heap\-name>/alloc\_pages\_success** |
	+----------------------------------------------------------------+
	
	Defined on file :ref:`sysfs-kernel-mm-cma <abi_file_aa_sysfs_kernel_mm_cma>`
	
	the number of pages CMA API succeeded to allocate
	
	
	.. _abi_file_aa_sysfs_kernel_mm_cma:
	
	File aa/sysfs\-kernel\-mm\-cma
	------------------------------
	
	Has the following ABI:
	
	- :ref:`\/sys\/kernel\/mm\/cma\/ <abi_sys_kernel_mm_cma>`
	
	- :ref:`\/sys\/kernel\/mm\/cma\/\<cma\-heap\-name\>\/alloc_pages_success <abi_sys_kernel_mm_cma_cma_heap_name_alloc_pages_success>`
	
	- :ref:`\/sys\/kernel\/mm\/cma\/\<cma\-heap\-name\>\/alloc_pages_fail <abi_sys_kernel_mm_cma_cma_heap_name_alloc_pages_fail>`
	
There are two separated issues here:

1) the cross-reference for "/sys/kernel/mm/cma/<cma-heap-name>"
   doesn't exist. The fix would be to do something like:

	What:           /sys/kernel/mm/cma/
	Date:           Feb 2021
	Contact:        Minchan Kim <minchan@kernel.org>
	Description:
	                /sys/kernel/mm/cma/ contains a subdirectory for each CMA
        	        heap name (also sometimes called CMA areas).

                	Each CMA heap subdirectory contains the following items:

                        	/sys/kernel/mm/cma/<cma-heap-name>/alloc_pages_success
	                        /sys/kernel/mm/cma/<cma-heap-name>/alloc_pages_fail

  This way, the /sys/kernel/mm/cma/<cma-heap-name>/* will produce the
  right cross-references;

2) The get_abi.pl doesn't escape "<" and ">" chars.

  The enclosed patch should do the trick. Please notice that I didn't
  check if this won't cause side effects - I'm in vacations until next
  week... too lazy to do a full test those days ;-) 

Thanks,
Mauro

[PATCH] script: get_abi.pl: escape "<" and ">" characters

Those characters should be escaped on cross-references.

Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>

diff --git a/scripts/get_abi.pl b/scripts/get_abi.pl
index 92d9aa6cc4f5..79d195b48652 100755
--- a/scripts/get_abi.pl
+++ b/scripts/get_abi.pl
@@ -305,7 +305,7 @@ sub output_rest {
 		}
 
 		my $w = $what;
-		$w =~ s/([\(\)\_\-\*\=\^\~\\])/\\$1/g;
+		$w =~ s/([\(\)\_\-\*\=\^\~\\\<\>])/\\$1/g;
 
 		if ($type ne "File") {
 			my $cur_part = $what;



  reply	other threads:[~2021-03-17 13:23 UTC|newest]

Thread overview: 157+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-03-15  5:35 linux-next: build warning after merge of the akpm-current tree Stephen Rothwell
2021-03-16 18:18 ` Minchan Kim
2021-03-16 21:49   ` Stephen Rothwell
2021-03-16 23:09     ` Jonathan Corbet
2021-03-17 13:22       ` Mauro Carvalho Chehab [this message]
  -- strict thread matches above, loose matches on Subject: below --
2022-04-27  6:41 Stephen Rothwell
2022-04-27 14:15 ` Liam Howlett
2022-04-13  5:15 Stephen Rothwell
2022-04-13  6:20 ` Yu Zhao
2022-02-09  5:58 Stephen Rothwell
2022-02-09  8:09 ` Huang, Ying
2022-02-07  4:06 Stephen Rothwell
2022-02-02  3:54 Stephen Rothwell
2022-02-03 23:06 ` Andrew Morton
2022-02-03 23:21   ` Randy Dunlap
2022-01-06 15:45 Stephen Rothwell
2021-12-23 23:12 Stephen Rothwell
2021-11-23  5:26 Stephen Rothwell
2021-11-23  8:38 ` Suren Baghdasaryan
2021-11-23 19:03   ` Suren Baghdasaryan
2021-11-23 22:26     ` Stephen Rothwell
2021-11-23 22:30       ` Suren Baghdasaryan
2021-07-19  7:52 Stephen Rothwell
2021-07-19  8:47 ` Feng Tang
2021-05-21  5:39 Stephen Rothwell
2021-05-21  6:53 ` Miaohe Lin
2021-03-30 20:04 Stephen Rothwell
2020-12-10  9:38 Stephen Rothwell
2020-12-10 16:05 ` Georgi Djakov
2020-11-13  6:01 Stephen Rothwell
2020-11-16 10:03 ` Andy Shevchenko
2020-11-06  6:26 Stephen Rothwell
2020-11-05  6:45 Stephen Rothwell
2020-11-05  7:03 ` Mike Rapoport
2020-11-05  7:42   ` Anand K. Mistry
2020-11-05  7:45     ` Anand K. Mistry
2020-11-05  9:17       ` Mike Rapoport
2020-11-05  8:00     ` Stephen Rothwell
2020-11-05  8:03       ` Stephen Rothwell
2020-09-14  7:00 Stephen Rothwell
2020-09-15  4:03 ` David Gow
2020-09-15  4:16   ` Stephen Rothwell
2020-09-15  9:57   ` Marco Elver
2020-09-14  6:57 Stephen Rothwell
2020-07-17 10:31 Stephen Rothwell
2020-07-17 17:47 ` Roman Gushchin
2020-07-09  9:11 Stephen Rothwell
2020-06-21 14:40 Stephen Rothwell
2020-03-31  8:56 Stephen Rothwell
2020-04-01 22:58 ` Andrew Morton
2020-04-01 23:00   ` Jason Gunthorpe
2020-04-01 23:06     ` Mike Kravetz
2020-03-13 10:42 Stephen Rothwell
2020-03-13 10:55 ` Baoquan He
2020-03-13 12:56 ` Baoquan He
2020-03-14  0:09   ` Stephen Rothwell
2020-03-14  0:35     ` Baoquan He
2020-03-16  4:58 ` Baoquan He
2020-03-16  6:13   ` Stephen Rothwell
2020-03-16  6:51     ` Baoquan He
2020-03-16  6:54     ` Stephen Rothwell
2020-03-12  7:31 Stephen Rothwell
2020-03-12 16:48 ` Mike Kravetz
2020-03-12  7:27 Stephen Rothwell
2020-03-13  0:31 ` Andrew Morton
2020-03-05  5:37 Stephen Rothwell
2020-03-05  5:54 ` Dmitry Vyukov
2020-03-07  5:03   ` Walter Wu
2020-03-05  8:54 ` Walter Wu
2020-03-05  9:33   ` Stephen Rothwell
2020-03-06 18:59     ` Walter Wu
2020-03-06 20:45       ` Walter Wu
2020-02-17  2:00 Stephen Rothwell
2019-11-06  7:05 Stephen Rothwell
2019-11-06  7:52 ` Shaokun Zhang
2019-11-06  6:54 Stephen Rothwell
2019-08-07  8:00 Stephen Rothwell
2019-08-07 11:29 ` Rikard Falkeborn
2019-08-07 23:31   ` Stephen Rothwell
2019-07-31  6:16 Stephen Rothwell
2019-07-31 12:01 ` Jia-Ju Bai
2019-07-31  6:11 Stephen Rothwell
2019-07-31  6:28 ` Miles Chen
2019-08-01  5:51   ` Stephen Rothwell
2019-08-01  6:15     ` Michal Hocko
2019-08-01  6:30       ` Miles Chen
2019-08-01  6:38         ` Michal Hocko
2019-08-01  6:39         ` Stephen Rothwell
2019-08-01  6:42           ` Miles Chen
2019-07-29  3:48 Stephen Rothwell
2019-07-29  3:44 Stephen Rothwell
2019-05-30  4:55 Stephen Rothwell
2019-05-30  9:02 ` Matteo Croce
2019-03-29  2:39 Stephen Rothwell
2019-04-16  6:52 ` Stephen Rothwell
2019-04-16 22:45   ` Andrew Morton
2019-01-31  5:01 Stephen Rothwell
2018-06-08  4:45 Stephen Rothwell
2018-05-04  4:17 Stephen Rothwell
2018-05-04 15:39 ` Randy Dunlap
2018-05-07 14:10   ` Minchan Kim
2018-05-07 16:47     ` Randy Dunlap
2018-05-08 10:48       ` Minchan Kim
2018-04-06  4:53 Stephen Rothwell
2018-01-02  7:04 Stephen Rothwell
2017-12-15  2:48 Stephen Rothwell
2017-11-23  2:01 Stephen Rothwell
2017-11-13  5:54 Stephen Rothwell
2017-11-13  5:42 Stephen Rothwell
2017-11-13  8:09 ` Michal Hocko
2017-11-13  8:23   ` Michal Hocko
2017-11-13 11:43   ` Arnd Bergmann
2017-11-13 11:54     ` Michal Hocko
2017-11-13 12:24       ` Arnd Bergmann
2017-11-13 12:29       ` Michal Hocko
2017-11-16 22:44     ` Stephen Rothwell
2017-11-17  3:53       ` Stephen Rothwell
2017-11-17  9:36         ` Zhangshaokun
2017-11-17  9:56         ` Arnd Bergmann
2017-08-01  5:22 Stephen Rothwell
2017-05-26  2:43 Stephen Rothwell
2017-05-26 10:16 ` Jeff Layton
2017-05-26 11:28   ` Dave Kleikamp
2017-05-19  4:44 Stephen Rothwell
2017-05-15  1:56 Stephen Rothwell
2017-05-15  4:02 ` Xunlei Pang
2017-05-15  5:07   ` Stephen Rothwell
2017-02-02  6:49 Stephen Rothwell
2016-11-09  4:10 Stephen Rothwell
2016-11-09  7:18 ` Huang Shijie
2016-11-09 21:21   ` Andrew Morton
2016-11-10  2:56     ` Stephen Rothwell
2016-06-23  6:53 Stephen Rothwell
2016-06-23 14:00 ` Mel Gorman
2016-05-27  3:07 Stephen Rothwell
2016-05-27 19:53 ` Andrew Morton
2016-04-29  6:45 Stephen Rothwell
2016-04-29  6:55 ` Stephen Rothwell
2016-04-29 13:32 ` Josh Poimboeuf
2016-04-29 14:03   ` Josh Poimboeuf
2016-04-30  5:52     ` Stephen Rothwell
2015-07-16  5:26 Stephen Rothwell
2015-07-16 23:00 ` Andrew Morton
2015-06-04 12:29 Stephen Rothwell
2015-06-04 13:56 ` Andrea Arcangeli
2015-02-04  7:48 Stephen Rothwell
2015-02-04  7:53 ` Jan Kiszka
2015-01-19  7:45 Stephen Rothwell
2015-01-19 15:50 ` Chris Mason
2014-10-30  5:19 Stephen Rothwell
2014-10-30  9:00 ` Aneesh Kumar K.V
2014-09-26 10:42 Stephen Rothwell
2014-09-29 21:30 ` Andrew Morton
2014-09-08  8:57 Stephen Rothwell
2014-06-20  5:27 Stephen Rothwell
2014-06-20  5:29 ` Yinghai Lu
2014-06-16  1:57 Stephen Rothwell

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210317142238.228fb1e8@coco.lan \
    --to=mchehab+huawei@kernel.org \
    --cc=akpm@linux-foundation.org \
    --cc=corbet@lwn.net \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-next@vger.kernel.org \
    --cc=minchan@kernel.org \
    --cc=sfr@canb.auug.org.au \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).