* [PATCH -perfbook 1/3] adjustindexformat.pl: Cope with recent hyperref change
@ 2026-03-31 7:52 Akira Yokosawa
2026-03-31 7:57 ` [PATCH -perfbook 2/3] cpu/overview: Tweak index markings Akira Yokosawa
` (2 more replies)
0 siblings, 3 replies; 4+ messages in thread
From: Akira Yokosawa @ 2026-03-31 7:52 UTC (permalink / raw)
To: Paul E. McKenney; +Cc: perfbook, Akira Yokosawa
hyperref 7.01n (released in July 2025) made a change in the name of
its macro for formatting page counts in index [1]. It ended up in
a regression in our Index pages, namely, missing most page counts
with bold shape or underlined.
This issue is observed in recent CI-builds at
https://gitlab.com/linux-kernel/perfbook/.
Add regex'es to cover the patterns of "hyperxindexformat{...}".
(in addition to those for existing "hyperindexformat{...}")
Link: https://ctan.org/ctan-ann/id/aFgfN-aRU1t7L2XT@prptp [1]
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
---
utilities/adjustindexformat.pl | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/utilities/adjustindexformat.pl b/utilities/adjustindexformat.pl
index 584b3232..52cfaae6 100755
--- a/utilities/adjustindexformat.pl
+++ b/utilities/adjustindexformat.pl
@@ -38,5 +38,11 @@ while($line = <$fh>) {
$line =~ s/\{([^\|]+)(\|hyperindexformat)\{\\gl(@\\makefirstuc )\{.+\}\}\}/\{$1$3\{$1\}$2\{\\GL\}\}/ ;
$line =~ s/\{([^\|]+)(\|hyperindexformat)\{\\gl(@\\makefirstuc )\{.+\}!([^\}]+)\}\}/\{$1$3\{$1}!$4$2\{\\GL\}\}/ ;
$line =~ s/(\\makefirstuc )\{([^\)]+)\} \<([^\]]+)\>\|hyperpage\}/$1\{$2\} \($3\)|hyperindexformat\{\\GL\}\}/ ;
+ $line =~ s/\{([^\|]+)(\|hyperxindexformat)\{\\bf(@\\makefirstuc )\{.+\}\}\}/\{$1$3\{$1\}$2\{\\BF\}\}/ ;
+ $line =~ s/\{([^\|]+)(\|hyperxindexformat)\{\\bf(@\\makefirstuc )\{.+\}!([^\}]+)\}\}/\{$1$3\{$1}!$4$2\{\\BF\}\}/ ;
+ $line =~ s/(\\makefirstuc )\{([^\)]+)\} \[([^\]]+)\]\|hyperpage\}/$1\{$2\} \($3\)|hyperxindexformat\{\\BF\}\}/ ;
+ $line =~ s/\{([^\|]+)(\|hyperxindexformat)\{\\gl(@\\makefirstuc )\{.+\}\}\}/\{$1$3\{$1\}$2\{\\GL\}\}/ ;
+ $line =~ s/\{([^\|]+)(\|hyperxindexformat)\{\\gl(@\\makefirstuc )\{.+\}!([^\}]+)\}\}/\{$1$3\{$1}!$4$2\{\\GL\}\}/ ;
+ $line =~ s/(\\makefirstuc )\{([^\)]+)\} \<([^\]]+)\>\|hyperpage\}/$1\{$2\} \($3\)|hyperxindexformat\{\\GL\}\}/ ;
print $line ;
}
base-commit: bfce6d84f45d7aa5ffb4ea2202ca6a248adf5dff
--
2.43.0
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [PATCH -perfbook 2/3] cpu/overview: Tweak index markings
2026-03-31 7:52 [PATCH -perfbook 1/3] adjustindexformat.pl: Cope with recent hyperref change Akira Yokosawa
@ 2026-03-31 7:57 ` Akira Yokosawa
2026-03-31 7:59 ` [PATCH -perfbook 3/3] runlatex.sh: Detect errors in makeindex log files Akira Yokosawa
2026-03-31 12:13 ` [PATCH -perfbook 1/3] adjustindexformat.pl: Cope with recent hyperref change Paul E. McKenney
2 siblings, 0 replies; 4+ messages in thread
From: Akira Yokosawa @ 2026-03-31 7:57 UTC (permalink / raw)
To: Paul E. McKenney; +Cc: perfbook, Akira Yokosawa
Let's make them more consistent with other index markings.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
---
cpu/overview.tex | 4 ++--
glossary.tex | 14 ++++++--------
indexsee.tex | 1 +
3 files changed, 9 insertions(+), 10 deletions(-)
diff --git a/cpu/overview.tex b/cpu/overview.tex
index 56c843ef..4a3ac25a 100644
--- a/cpu/overview.tex
+++ b/cpu/overview.tex
@@ -456,14 +456,14 @@ But here in 2026, such computers are the exception rather than the rule.
In fact, most computers exist only to respond to requests transmitted
to them from all over the world.
These requests are received by devices within the computers system,
-and then these devices \emph{\IX{interrupt}} a CPU to inform it that
+and then these devices \emph{\IXB{interrupt}} a CPU to inform it that
a new request has arrived.
A CPU must also transmit responses via these same devices, which in turn
might interrupt the CPU when a given transmission has completed.
CPUs can also interrupt each other using \IXacrfpl{ipi}.
Either way, the CPU disables further interrupts, commences executing an
-\emph{\IXG{interrupt handler}}, and once this handler has completed,
+\emph{\IXB{interrupt handler}}, and once this handler has completed,
the CPU re-enables interrupts and resumes executing whatever sequence
of instructions was interrupted.
These interrupts take time away from whatever task the CPU was executing,
diff --git a/glossary.tex b/glossary.tex
index f65f4dff..628e5724 100644
--- a/glossary.tex
+++ b/glossary.tex
@@ -368,9 +368,11 @@
CPUs are available).
\item[\IXG{Immutable}:]
In this book, a synonym for read-mostly.
-\item[\IXG{Inter-Processor Interrupt}:]\glsuseriii{ipi}
+\item[Inter-Processor Interrupt (IPI):]\glsuseriii{ipi}
An interrupt sent by a CPU instead of by an I/O device.
- See IPI.
+ IPIs are used heavily in the Linux kernel, for example, within
+ the scheduler to alert CPUs that a high-priority process is now
+ runnable.
\item[\IXG{Interrupt}:]
A signal to a CPU that causes it to stop whatever it is doing,
disable interrupts, and execute an interrupt handler.
@@ -387,12 +389,8 @@
If necessary, the item is removed from the other CPUs' caches
via ``invalidation'' messages from the writing CPUs to any
CPUs having a copy in their caches.
-\item[IPI:]\glsuseriii{ipi}
- Inter-processor interrupt, which is an
- interrupt sent from one CPU to another.
- IPIs are used heavily in the Linux kernel, for example, within
- the scheduler to alert CPUs that a high-priority process is now
- runnable.
+\item[IPI:]
+ See ``Inter-Processor Interrupt (IPI)''.
\item[IRQ:]\glsuseriii{irq}
Interrupt request, often used as an abbreviation for ``interrupt''
within the Linux kernel community, as in ``irq handler''.
diff --git a/indexsee.tex b/indexsee.tex
index fe57094b..cad3532f 100644
--- a/indexsee.tex
+++ b/indexsee.tex
@@ -1,6 +1,7 @@
% effective in both single- and two- level index
\index{Coherence|see{Cache coherence}}
\index{Full(y) multi-copy atomic|see{Multi-copy atomic}}
+\index{IPI|see{Inter-processor interrupt}}
\index{Memory consistency model|see{Memory model}}
\index{Single-copy atomic|see{Cache coherence}}
\index{Single-variable SC|see{Cache coherence}}
--
2.43.0
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [PATCH -perfbook 3/3] runlatex.sh: Detect errors in makeindex log files
2026-03-31 7:52 [PATCH -perfbook 1/3] adjustindexformat.pl: Cope with recent hyperref change Akira Yokosawa
2026-03-31 7:57 ` [PATCH -perfbook 2/3] cpu/overview: Tweak index markings Akira Yokosawa
@ 2026-03-31 7:59 ` Akira Yokosawa
2026-03-31 12:13 ` [PATCH -perfbook 1/3] adjustindexformat.pl: Cope with recent hyperref change Paul E. McKenney
2 siblings, 0 replies; 4+ messages in thread
From: Akira Yokosawa @ 2026-03-31 7:59 UTC (permalink / raw)
To: Paul E. McKenney; +Cc: perfbook, Akira Yokosawa
Messages of "!! Input index error" would have helped in catching
the regression caused by the hyperref change.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
---
utilities/runlatex.sh | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/utilities/runlatex.sh b/utilities/runlatex.sh
index 17d833ad..5346bb3b 100644
--- a/utilities/runlatex.sh
+++ b/utilities/runlatex.sh
@@ -76,6 +76,11 @@ iterate_latex () {
echo "----- Warning in makeindex, see .ilg log files. -----"
exit 1
fi
+ if grep -q '!! Input index error' $basename.ilg $basename-ppl.ilg $basename-api.ilg
+ then
+ echo "----- Error in makeindex, see .ilg log files. -----"
+ exit 1
+ fi
makeglossaries $basename > /dev/null 2>&1
$LATEX $LATEX_OPT $basename > /dev/null 2>&1 < /dev/null
exitcode=$?
--
2.43.0
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH -perfbook 1/3] adjustindexformat.pl: Cope with recent hyperref change
2026-03-31 7:52 [PATCH -perfbook 1/3] adjustindexformat.pl: Cope with recent hyperref change Akira Yokosawa
2026-03-31 7:57 ` [PATCH -perfbook 2/3] cpu/overview: Tweak index markings Akira Yokosawa
2026-03-31 7:59 ` [PATCH -perfbook 3/3] runlatex.sh: Detect errors in makeindex log files Akira Yokosawa
@ 2026-03-31 12:13 ` Paul E. McKenney
2 siblings, 0 replies; 4+ messages in thread
From: Paul E. McKenney @ 2026-03-31 12:13 UTC (permalink / raw)
To: Akira Yokosawa; +Cc: perfbook
On Tue, Mar 31, 2026 at 04:52:39PM +0900, Akira Yokosawa wrote:
> hyperref 7.01n (released in July 2025) made a change in the name of
> its macro for formatting page counts in index [1]. It ended up in
> a regression in our Index pages, namely, missing most page counts
> with bold shape or underlined.
> This issue is observed in recent CI-builds at
> https://gitlab.com/linux-kernel/perfbook/.
>
> Add regex'es to cover the patterns of "hyperxindexformat{...}".
> (in addition to those for existing "hyperindexformat{...}")
>
> Link: https://ctan.org/ctan-ann/id/aFgfN-aRU1t7L2XT@prptp [1]
> Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Queued and pushed, thank you very much!
Note to self: When doing anything that affects the index, build
perfbook.pdf in addition to the usual perfbook-df.pdf.
Thanx, Paul
> ---
> utilities/adjustindexformat.pl | 6 ++++++
> 1 file changed, 6 insertions(+)
>
> diff --git a/utilities/adjustindexformat.pl b/utilities/adjustindexformat.pl
> index 584b3232..52cfaae6 100755
> --- a/utilities/adjustindexformat.pl
> +++ b/utilities/adjustindexformat.pl
> @@ -38,5 +38,11 @@ while($line = <$fh>) {
> $line =~ s/\{([^\|]+)(\|hyperindexformat)\{\\gl(@\\makefirstuc )\{.+\}\}\}/\{$1$3\{$1\}$2\{\\GL\}\}/ ;
> $line =~ s/\{([^\|]+)(\|hyperindexformat)\{\\gl(@\\makefirstuc )\{.+\}!([^\}]+)\}\}/\{$1$3\{$1}!$4$2\{\\GL\}\}/ ;
> $line =~ s/(\\makefirstuc )\{([^\)]+)\} \<([^\]]+)\>\|hyperpage\}/$1\{$2\} \($3\)|hyperindexformat\{\\GL\}\}/ ;
> + $line =~ s/\{([^\|]+)(\|hyperxindexformat)\{\\bf(@\\makefirstuc )\{.+\}\}\}/\{$1$3\{$1\}$2\{\\BF\}\}/ ;
> + $line =~ s/\{([^\|]+)(\|hyperxindexformat)\{\\bf(@\\makefirstuc )\{.+\}!([^\}]+)\}\}/\{$1$3\{$1}!$4$2\{\\BF\}\}/ ;
> + $line =~ s/(\\makefirstuc )\{([^\)]+)\} \[([^\]]+)\]\|hyperpage\}/$1\{$2\} \($3\)|hyperxindexformat\{\\BF\}\}/ ;
> + $line =~ s/\{([^\|]+)(\|hyperxindexformat)\{\\gl(@\\makefirstuc )\{.+\}\}\}/\{$1$3\{$1\}$2\{\\GL\}\}/ ;
> + $line =~ s/\{([^\|]+)(\|hyperxindexformat)\{\\gl(@\\makefirstuc )\{.+\}!([^\}]+)\}\}/\{$1$3\{$1}!$4$2\{\\GL\}\}/ ;
> + $line =~ s/(\\makefirstuc )\{([^\)]+)\} \<([^\]]+)\>\|hyperpage\}/$1\{$2\} \($3\)|hyperxindexformat\{\\GL\}\}/ ;
> print $line ;
> }
>
> base-commit: bfce6d84f45d7aa5ffb4ea2202ca6a248adf5dff
> --
> 2.43.0
>
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2026-03-31 12:13 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-03-31 7:52 [PATCH -perfbook 1/3] adjustindexformat.pl: Cope with recent hyperref change Akira Yokosawa
2026-03-31 7:57 ` [PATCH -perfbook 2/3] cpu/overview: Tweak index markings Akira Yokosawa
2026-03-31 7:59 ` [PATCH -perfbook 3/3] runlatex.sh: Detect errors in makeindex log files Akira Yokosawa
2026-03-31 12:13 ` [PATCH -perfbook 1/3] adjustindexformat.pl: Cope with recent hyperref change Paul E. McKenney
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox