From: Akira Yokosawa <akiyks@gmail.com>
To: Jonathan Corbet <corbet@lwn.net>,
Mauro Carvalho Chehab <mchehab@kernel.org>
Cc: linux-doc@vger.kernel.org, Akira Yokosawa <akiyks@gmail.com>,
Donald Hunter <donald.hunter@gmail.com>
Subject: [Performance Regression since v6.15] empty docs build with O= option
Date: Mon, 14 Jul 2025 19:42:49 +0900 [thread overview]
Message-ID: <c174f7c5-ec21-4eae-b1c3-f643cca90d9d@gmail.com> (raw)
Hi all,
Here is a follow-up to my message at:
https://lore.kernel.org/d12fb63e-b346-4094-b9d6-aa6823aea541@gmail.com/
Quoting relevant parts for your convenience:
Akira wrote:
> As a matter of fact, I'm seeing weird performance regression of empty
> documentation builds when the O=<somedir> option is used.
>
> It appeared in v6.15, which has your conversion of get_abi.pl into
> get_abi.py. Will send a report once the time-consuming bisection
> completes.
Answer to Mauro's question at:
https://lore.kernel.org/20250711130446.1b761538@foz.lan/
Mauro wrote:
> Did you try with docs-next instead? I remember Jon caught one
> issue causing the doctree cache to expire. Can't remember if this
> was on 6.15 or at docs-next, but the fixes should be applied there.
Jon's complaint at https://lore.kernel.org/87frfsdfgc.fsf@trenco.lwn.net/
was against Mauro's v2 series.
Jon has applied the v3 series with the issue fixed at:
https://lore.kernel.org/cover.1750571906.git.mchehab+huawei@kernel.org/
, so the issue has never been in docs-next.
I'm not a python person and bisection is all I could do.
TL;DR
2nd run of "make O=$HOME/output htmldocs" takes much longer since kernel
release v6.15.
2nd run is an empty build and should finish in a matter of 10 seconds.
"make htmldocs" without the O= option doesn't show this symptom.
Here is a summary table.
Note:
Numbers shown as (x) [y] mean 2nd "make O=$HOME/output htmldocs" run
takes x seconds, while 2nd "make htmldocs" run takes y seconds
(rounded up).
----------------------------------------
Sphinx 8.2.3 venv 8.1.3 7.2.6
------------------- --------- ----------
Distro f42 noble f42 noble
--------- --------- --------- ----------
Good (13) [13] (16) [16] ( 6) [ 6] ( 9) [ 9] v6.14
Bad --- (72) [ 6] (349) [11] v6.15
Bad --- (72) [ 6] (365) [11] v6.16-rc1 + [1]
Bad --- (72) [ 7] (342) [10] docs-next (2025.07.11) + [1]
Bad (77) [14] (82) [15] (73) [ 8] (347) [11] docs-next (2025.07.11) + [1,2,3]
--------- --------- --------- ----------
[1]: cherry-pick 553ab30a1810 ("Documentation: nouveau: Update GSP message
queue kernel-doc reference"), to suppress noise of error handling within
Sphinx.
[2]: Mauro's ynl series v9 at https://lore.kernel.org/cover.1752076293.git.mchehab+huawei@kernel.org/
(14/13 applied)
[3]: Jon's kdoc series v2 at https://lore.kernel.org/20250710233142.246524-1-corbet@lwn.net/
(12/12 as is)
f42: python 3.13.5, noble: 3.12.3
* Bisection result
Sphinx 8.2.3 (venv) on top of ubuntu:noble (python 3.12.3):
Last good commit:
(16) 6b48bea16848 ("scripts/get_abi.py: add support for symbol search")
First bad commit:
(48) 9d7ec8867960 ("docs: use get_abi.py for ABI generation")
Merged into Jon's docs-mw branch at:
(82) 1ce8294cfefb ("Merge branch 'mauro' into docs-mw")
Pre merge commits of 1ce8294cfefb:
(15) 2b087edf588c ("docs/zh_CN: Add secrets index Chinese translation")
(82) 1c7e66bc5d20 ("scripts/get_abi.pl: drop now obsoleted script")
Again, The numbers enclosed in () indicate the elapsed times (in seconds,
rounded up) of 2nd "make O=$HOME/output htmldocs" runs.
Sphinx 8.2.3 takes longer than 8.1.3 for empty builds, but it is likely
an independent issue on Sphinx side.
Mauro, I'd like you to have a look into this regression.
Thanks, Akira
next reply other threads:[~2025-07-14 10:42 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-07-14 10:42 Akira Yokosawa [this message]
2025-07-17 11:09 ` [Performance Regression since v6.15] empty docs build with O= option Mauro Carvalho Chehab
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=c174f7c5-ec21-4eae-b1c3-f643cca90d9d@gmail.com \
--to=akiyks@gmail.com \
--cc=corbet@lwn.net \
--cc=donald.hunter@gmail.com \
--cc=linux-doc@vger.kernel.org \
--cc=mchehab@kernel.org \
/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).