Age | Commit message (Collapse) | Author | Files | Lines |
|
Using \co{} in list environments such as enumerate* can confuse
LeTeX engines in width estimation due to possible line breaks
therein.
It causes an overlap of "," over the closing ")" of "read_seqretry()"
in the answer to QQz 9.14.
Use \tco{} to avoid such undesired results.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Silence warning from "make punctcheck":
vvv Hint: sentence ending with an uppercase needs "\@." vvv
./locking/locking.tex:2039:traditionally used in scheduling disk I/O.
It is needed because commit 678e6cc3c0f1 ("locking: Cite Dice et al.
for hierarchical lock") have added a sentence in the paragraph.
Fixes: 678e6cc3c0f1 ("locking: Cite Dice et al. for hierarchical lock")
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Reported-by: Neeraj Upadhyay <Neeraj.Upadhyay@amd.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Default behavior of super-user mode tar is to keep uid/gid and
permissions in extracting files/directories from archives.
It conflicts with security settings of rootless mode podman while
building container images from recent releases of ubuntu and fedora,
resulting in errors as follows:
tar: latexpand-v1.3/tests/df-conflict/b: Cannot change mode to rwxrwxr-x: Operation not permitted
tar: latexpand-v1.3/tests/df-conflict: Cannot change mode to rwxrwxr-x: Operation not permitted
tar: latexpand-v1.3/tests/expected/err: Cannot change mode to rwxrwxr-x: Operation not permitted
tar: latexpand-v1.3/tests/expected: Cannot change mode to rwxrwxr-x: Operation not permitted
tar: latexpand-v1.3/tests: Cannot change mode to rwxrwxr-x: Operation not permitted
tar: latexpand-v1.3: Cannot change mode to rwxrwxr-x: Operation not permitted
tar: Exiting with failure status due to previous errors
Add --no-same-owner and --no-same-permission options to tar and make
it behave the same way as in its normal-user mode.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
RCU-test-ratio.eps has been updated regularly in response to new
releases of mainline Linux kernel.
If such updates were to happen rarely, having the plot as EPS in the
Git repo would make sense. As for this plot, it makes more sense to
have only the data in the repo and to do the plot on-the-fly.
There is other things to consider.
Using "set term postscript" would require groff as well as gnuplot
for plotting. By using "set term svg", groff can be omitted from
the requirement list.
Another is the bar style. As the number of bars is getting larger,
bars with surrounding border can result in moire pattern when viewed
on display. Bars of "noborder" style should reduce such distracting
effects.
Summary of changes in this commit:
* Under CodeSamples/formal/data/
- Remove RCU-test-ratio.eps
- plot.sh
- Use "set term svg"
- Use bar style of "noborder", increase color saturation
- Other tweaks
- .gitignore
- Add *.svg
* Makefile
- Add specific recipes for RCU-test-ratio.svg
* FAQ-BUILD.txt
- Add gnuplot in the lists of requirements
* utilities/gitlab-ci.yml
- Add gnuplot in the list of packages for generate_pdfs
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Cc: Leonardo Bras <leobras.c@gmail.com> # for gitlab-ci.yml change
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Recently, newtxtext's behavior of sans-serif font setting has become
unstable and the option helvratio stopped working as of newtxtext
v1.738.
As a workaround, load tgheros.sty provided by the tex-gyre package
before loading newtxtext with the same scaling facter which works
with previous versions of newtxtext.
Do similar changes in pstricks figures under SMPdesign/ which use
sans-serif font only.
Note:
newtxtext's main feature is to provide improved Times Roman clone based
on TeX Gyre Termes. The author of newtxtext doesn't pay much attention
on sans-serif font behavior, it seems, and has made v1.738 and later
respect default sans-serif font at the time of loading newtxtext.sty.
Changelog in newtx's README [1] reads:
Changes in version 1.738
1. Documentation updated for newtx.sty usage.
2. Modified newtx.sty and newtxtext.sty to ensure that default effects
of \mathsf and \mathtt are the same in both cases, and to ensure that
in both, the prior loading of a sf or tt text font would result in
those being used for \mathsf, \mathtt without any further interventions.
Link: [1] https://mirrors.ctan.org/fonts/newtx/README
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
These SGVs have bi-directional arrows which cause Ubuntu 20.04's
inkscape 0.92.5 to crash.
As workarounds, replace them with the ones which are safe in the
old version of inkscape.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
I started the translation of perfbook since October 2015. The
translation was done by June 2017, and I continued wordsmithing, merging
the upstream changes, and further translating. Following the upstream's
fast speed of the change and keeping the translation consistent was
quite challenging.
In Mar 2021, I therefore decided to stop updating existing translation
and start the translation of the 2nd edition from the scratch. Applying
upstream changes were minimized to only simple fixes, usually what I
fixed on my local repo first and sent patches upstream.
After about three years, I just completed the Korean translation of the
2nd edition. Hence updating the Korean translation progress on FAQ.
It was a very fun and informative journey. Huge appreciate to Paul and
the community for making the great book and letting me get the fun.
I have no plan for the future. I don't know if I will continue merging
upstream changes and further translating it, or if I will restart the
translation after the third edition is released. I sometimes feel
translation is already an area that AI can do better than me. But I
sure I would repeatedly read this book again and again, and some day, I
might try to translate it again. But at the moment, I'd like to take a
time to congrats myself :)
Signed-off-by: SeongJae Park <sj38.park@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Some sentences in whymemorybarriers.tex is missing unbreakable spaces
between 'and' and CPU numbers. Add those.
Signed-off-by: SeongJae Park <sj38.park@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
A sentence in whymemorybarriers.tex is missing '()' for functions,
namely foo() and bar(). Add it for the consistency.
Signed-off-by: SeongJae Park <sj38.park@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Some sentences in whymemorybarriers.tex is not using \co{} for code.
Use it.
Signed-off-by: SeongJae Park <sj38.park@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Some sentences in whymemorybarriers.tex are using native quotes for
quoted code. Use \qco{} instead.
Signed-off-by: SeongJae Park <sj38.park@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
bin_width of 40 obscured the spike at time period [38, 40].
Use bin_width of 2 instead.
For consistency, use solid boxes in fre.eps and rfe.eps as well.
Also "set xtic out" to make those tics be easily seen.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
While in the area, fix a punctuation issue.
Suggested-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Add gnuplot scripts for generating EPS plots.
Use "smooth frequency" feature of gnuplot for plotting distribution
histograms.
Distribution data in coe.dat, fre.dat, and rfe.dat are converted
on-the-fly into single-column data by using expand.pl as a filter.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Fix trivial typo in xlabel.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
The use \columnwidth results in too large figures in -1c and -eb
builds. Instead, use \twocolumwidth (\columnwidth of 2c build) and
make them more or less similarly scaled.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
[ paulmck: For github, replace oversized coe.out with coe.out.tar.xz. ]
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
TL;DR: x86 CPUs have store buffers and they are not afraid to use them!
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
For fre and rfe, there are nthreads samples per run, but only one sample
per run for coe. Therefore, make perftemporal.sh compensate by running
coe.sh nthreads times more often. All in pursuit of pretty graphs!
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
And this need for tweaking is one reason that it will be replaced!
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
This commit causes fre.sh to measure from the beginning of the last
load returning the old value to the end of store of the new value.
Negative numbers mean that the load started after the store completed
in global time.
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
This data was generated from buggy code, so will be replaced. However,
in the meantime, it is memorialized here.
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Commit cee469f9a7aa ("api: Switch x86 atomics to gcc C11-like
atomics") changed the definition of atomic_set() as follows:
#define atomic_set(v, i) \
__atomic_store_n(&(v)->counter, (i), __ATOMIC_RELAXED)
Previously, it was defined for x86 as follows:
#define atomic_set(v, i) (((v)->counter) = (i))
QQ 5.46 assumed the old definition and it can confuse those who have
followed the definition under CodeSamples/.
Reword QQ 5.46 to prevent such confusions.
Add a related QQ asking the need of atomic operation for atomic_set().
Reported-by: Hao Lee <haolee.swjtu@gmail.com>
Link: https://lore.kernel.org/perfbook/20230517120110.GA23586@haolee.io/
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Let's get consistent with coding style of Linux kernel.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
The new coe.sh script is similar to fre.sh and rfe.sh, designed to
run tests showing that the coe relation (C++ modification order)
can be counter-temporal.
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Some sentences on toyrcu.tex is missing parentheses for
rcu_quiescent_state(). Add those.
Signed-off-by: SeongJae Park <sj38.park@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
formalregress.tex is using \co{} for spin tool, especially when
mentionging it together with Promela. A sentence in toyrcu.tex is not
using \co{} for same representation. Use \co{} for consistency.
Signed-off-by: SeongJae Park <sj38.park@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
A sentence on toyrcu.tex is missing enclosing code with parentheses,
unlike other parts on the sentence. Add the parentheses to be
consistent.
Signed-off-by: SeongJae Park <sj38.park@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
On Arch Linux, rsvg-convert is provided in the librsvg package.
Install it instead of inkscape.
Using rsvg-convert can shorten runtime of CI job for building PDFs
a bit.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Tested-by: Leonardo Bras <leobras.c@gmail.com>
Acked-by: Leonardo Bras <leobras.c@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Make rsvg-convert available in these container images.
Also go forward to Fedora 39 as the regression of font info corruption
observed in Fedora 38 has been resolved.
Keep inkscape as well so that the resulting container images can work
on top of Git repos before January 2024.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Instead of inkscape, name package for rsvg-convert. Unfortunately,
the package name varies wildly among distros.
Adjust surrounding text accordingly.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
r-2014-Memory-barrier.svg was drawn by Inkscape 0.48.3.1.
Recent versions of rsvg-convert have trouble with outlined text
in the cartoon.
Retouch the figure by importing a properly rendered PDF into modern
Inkscape and saving it as r-2023-Memory-barrier.svg.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Even if rsvg-convert is too young and its SVG --> PDF conversion
sometimes results in poor-looking figures, using it is much better
than giving up the conversion at all.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
rsvg-convert 2.52.5 (on Ubuntu 22.04 LTS) output PDF 1.5 by default
and is good enough for perfbook.
Add rules for using it in SVG --> PDF conversion.
rsvg-convert versions >= 2.54 and < 2.57 default to PDF 1.7 and don't
have option of --format pdf1.5. Avoid using those interim versions
by default.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
rsvg-convert versions prior to 2.57 doesn't recognize options for
specifying output PDF version. Default PDF output version depends
on the version of rsvg-convert. Version 2.57's default is PDF 1.7.
For the moment, don't use younger versions of rsvg-convert. Use
inkscape as a fallback.
For rsvg-convert >= 2.57, specify --format=pdf1.5, which matches
inkscape's default behavior.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Recently, Inkscape has had a number of stability issues in both of
its GUI- and CLI- modes. We have experienced crashes of CLI-mode
Inkscape caused by a change in glib, which can been resolved
by an update in the GTK3 library now released in GTK 3.24.39.
Commit f307e19f2be0 ("Prevent inkscape from interacting with desktop
manager") was an ugly hack for mitigating such crashes.
There is an alternative converter called rsvg-convert.
It is a light-weight CLI-only converter.
Up until Ubuntu 20.04 LTS, rsvg-convert's coverage of SVG features
was not good enough for some of the figures in perfbook drawn by
using Inkscape.
rsvg-convert has improved since, and version 2.52.5, which is the
version on Ubuntu 22.04 LTS, and later versions do fairly good jobs
in this respect.
So let's use rsvg-convert when it is available.
For Ubuntu and Debian, rsvg-convert belongs to the librsvg2-bin
package. For Fedora, it is provided in the librsvg2-tools package.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
According to [1][2], manpages should be man pages or man-pages.
[1] https://en.wikipedia.org/wiki/Man_page
[2] https://www.kernel.org/doc/man-pages/
Signed-off-by: Zhouyi Zhou <zhouzhouyi@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Rewrite Quick Quiz 3.6 for clarity and explicitness, so that the
firsttime reader know that another choice is CPU 0 sharing a core
with CPU 1.
This change was identified by Chinese version editor Yunjing Li in
the course of translating the book to Chinese.
Reported-by: Chinese version editor YunJing Li
Signed-off-by: Zhouyi Zhou<zhouzhouyi@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Make "git archive" in answer to Quick Quiz 1.3 more explicit by
adding a footnote, so that a first-time reader, who have never
read Section 1.5, can easily know how to clone the Git repo and
build PDFs.
Suggested-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Zhouyi Zhou<zhouzhouyi@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Some code snippets in after.tex are not enclosed with \co{}. Enclose
those.
Signed-off-by: SeongJae Park <sj38.park@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
after.tex is using ``...'' for quoting some variables of a code snippet.
Use \qco{} instead.
Signed-off-by: SeongJae Park <sj38.park@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Result in nanoseconds.
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
The point is to illustrate that rfe is temporal, while fre can be
anti-temporal. The underlying temporal.c file can also produce data
for coe, but scripts to reduce that data are still TBD.
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
formalregress.tex is using mixed use of SEL4 and seL4. SEL4 is used 8
times, while seL4 is used twice over the entire repository. That said,
seL4 seems the intended name since their website[1] uses the name. Use
seL4 consistently.
[1] https://sel4.systems/
Signed-off-by: SeongJae Park <sj38.park@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
formalregress.tex is using \co{} for spin in most cases. Use it always
for better consistency.
Signed-off-by: SeongJae Park <sj38.park@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
A sentence in htm.tex is using $$ for a code snippet. Use \co{}
instead.
Signed-off-by: SeongJae Park <sj38.park@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
A sentence in future/htm.tex is having 'and' unnecessarily. Probably
just a typo. Remove it.
Signed-off-by: SeongJae Park <sj38.park@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
The text is using 'reader-writer lock' consistently, but a sentence in
tm.tex is missing the dash. Add it.
Signed-off-by: SeongJae Park <sj38.park@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
'Locking' section provides TM-available options without any introduction
of it, unlike other sections. Add it.
Signed-off-by: SeongJae Park <sj38.park@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
A couple of sentences in future/tm.tex are having two spaces between two
words unnecessarily. Remove one.
Signed-off-by: SeongJae Park <sj38.park@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Reported-by: ma jun <yztaoj@outlook.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Reported-by: ma jun <yztaoj@outlook.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Reported-by: ma jun <yztaoj@outlook.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Reviewed-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
newtxtext v1.73 loads xcolor for its new option called "supscolor"
without any options.
This conflicts with the later loading of xcolor with the option
list of [table,svgnames].
Resolve it by loading xcolor with our option list just before
loading newtxtext.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Crashes of command-line Inkscape happens when it exits too soon
before it can be properly removed from window manager's list of
applications it is aware of.
Glib 2.75.3 has removed GSlice allocator [1], which was permissive
about UAF issues.
Question is, "why is the command-line Inkscape registered in
such a list in the first place?"
There is mention of an option named "--without-gui" in Inkscape's
wiki page on "Using the Command Line" [2]:
The --without-gui option has been removed. Most parameters
trigger Inkscape to run without GUI by default now. Instead
enable GUI mode specifically using --with-gui if needed.
However, current Inkscape does *initialize* itself as a GUI
application regardless of the need of GUI.
Alternatively, Inkscape can be forced to run isolated from window/
desktop managers with bogus strings set to a couple of env variables.
After some tries and errors, these two env variables turned out
to be essential here:
- XDG_RUNTIME_DIR
- DBUS_SESSION_BUS_ADDRESS
Update Makefile and set bogus strings to them, which sounds a little
rough but should be better than ignoring error codes, after reverting
commits:
- c2f9a99366b3 ("Ignore error of unstable Inkscape")
- a01629a5f734 ("Make sure all PDF conversions are complete")
This change resolves crashes of Inkscape observed under Fedora 38,
Fedora 39 beta, Ubuntu 23.04, and openSUSE tumbleweed.
[1]: https://gitlab.gnome.org/GNOME/glib/-/issues/1079
[2]: https://wiki.inkscape.org/wiki/index.php/Using_the_Command_Line
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Reported-by: Saravanan D <saravanand@fb.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Since Linux v4.15, smp_mb(), smp_wmb(), and smp_rmb() don't suffice
for ordering them.
Update the text accordingly and add a footnote.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
smp_mb() uses lock;add for x86 in the linux kernel. Add information
about the same.
Signed-off-by: Joel Fernandes (Google) <joel@joelfernandes.org>
Co-developed-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Add entry of Linux kernel git commit 450cbdd0125c ("locking/x86:
Use LOCK ADD for smp_mb() instead of MFENCE").
Signed-off-by: Joel Fernandes (Google) <joel@joelfernandes.org>
Co-developed-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Crashes of Inkscape can disturb parallel runs of SVG --> PDF conversions.
Add a sub-make run of "make -j1 figs" in the early stage of latex
run to make sure any missing PDF figures can be prepared in time.
Note:
If GNUmake's dependency check is perfect, when there were any
missing PDF files remaining, the recipe of autodate.tex shouldn't
run. Unfortunately, it looks like that is not the case.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
When Inkscape is terminated by an error, it saves the SVG file
it was processing into an emergency-save SVG file.
In perfbook, this results in extra SVG files such as:
- advsync/rt-regimes.svgi.2023_MM_DD_hh_mm_ss.0.svg
- datastruct/hashzu-a.svgi.2023_MM_DD_hh_mm_ss.0.svg
Ignore those files in successive runs of make and remove them
in "make clean", "make cleanfigs", and "make cleanfigs-svg".
Update .gitignore as well.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Recently, conversions of SVG --> PDF are hit by unstability of
command-line runs of Inkscape under the GNOME session/window manager.
There is an issue ticket at the upstream Inkscape repository [1].
It was closed after a bugfix in glib2, but Fedora 38 has not
received the fix. Furthermore, pre-release Fedora 39, as well as
openSUSE tumbleweed, still has the very similar symptoms.
As a matter of fact, the conversion is properly finished most
of the time when the Inkscape error happened.
So let's add a make variable IGNORE_INKSCAPE_ERROR and ignore error
code from Inkscape when it is enabled. It is enabled by default.
[1] Issue #4177 "glib2 2.76.0 breaks Command Line export" at
https://gitlab.com/inkscape/inkscape/-/issues/
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Zhouyi Zhou <zhouzhouyi@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
This move is in preparation for adding a new data-structure chapter.
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
It looks like most fields were not updated when copy pasted from
JonathanCorbet2016C11atomics in memorymodel.bib.
Replace them with those of named LWN article.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
A sentence in memorder.tex is saying READ_ONCE() and WRITE_ONCE() will
be heavily used in a section. But, it's widely used in the chapter.
Modify the sentence to make it more clear.
Signed-off-by: SeongJae Park <sj38.park@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
A sentence in memorder.tex explains the strength of smp_mb() and its
cost. Then, a quick quiz having very same answer follows. Remove the
sentence to reduce the redundancy.
Signed-off-by: SeongJae Park <sj38.park@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
All sentences but one in memorder.tex use \co{} for herd. Use it
consistently.
Signed-off-by: SeongJae Park <sj38.park@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Some sentences in memorder.tex are using {\tt } for some code, while
others use \co{}. Consistently use \co{}.
Signed-off-by: SeongJae Park <sj38.park@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Code snippets in memorder.tex usually don't use braces for signle-line
if blocks, like Linux kernel coding style. However, some code snippets
use braces. Don't use the braces to be consistent.
Signed-off-by: SeongJae Park <sj38.park@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
memorder.tex is unnecessarily having one empty fcvref block. Remove it.
Signed-off-by: SeongJae Park <sj38.park@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
A sentence in memorder.tex is missing unbreakable spaces. Add those.
Signed-off-by: SeongJae Park <sj38.park@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
A sentence in memorder.tex is missing a space between the column name
and 'column'. Add it.
Signed-off-by: SeongJae Park <sj38.park@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Two sentences in memorder.tex are having commas instead of ending
periods. Fix those.
Signed-off-by: SeongJae Park <sj38.park@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Reported-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Current definition results in random original terms appearing
in the flat index. Fix this by using "#3 #2" (second-level term) +
(first-level term) for flat index.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Add a few more index markers.
Note that the macro \IXpl{} and its friends don't work for the
plural form of "dependencies".
\IXalth{}{}{} is used instead.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Add index markers of bold face for "address dependency", "control
dependency", and "data dependency" at their corresponding sections
in memorder.
(hierarchical form)
- Dependency
address
control
data
with additional "see xxxx" entries as follows:
- Address dependency, see Dependency, address
- Control dependency, see Dependency, control
- Data dependency, see Dependency, data
(flat form)
- Address dependency
- Control dependency
- Data dependency
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
There remain obsolete word choices of "data dependencies" in section
Alpha.
It is load-to-load address dependencies that other archs respect.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Figures 15.1 and 15.2 look unnecessarily large in 2c builds.
Reduce their widths a bit by using \onecolumntextwidth.
This change doesn't affect -1c and -eb builds.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
ifthen.pdf is tall and using \columnwidth makes it exceed paper
height in -1c and -eb builds.
.5\onecolumntextwidth (defined in preamble) gives reasonable size
figures in all layouts.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
This commit moves the "Memory-Model Intuitions" section from the end
to the beginning. After all, for many people, it will be all that they
need from this chapter.
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
The "Reader precedes removal" needs to be "Reader precedes free".
This commit makes it so.
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Figure 9.11-9.13 show use of data-racy unmarked C-language accesses
to shared variables, which is not something that should be encouraged.
This commit therefore properly marks them.
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
In perfbook.pdf, patches shown in Section 12.1.6.8 exceed the boxes
surrounding them. Bisection points at commit 1063ddafb476 ("Get rid of
'twocolumn' option in \documentclass").
It turns out that there are a couple of indent and margin settings
the geometry package does not take care of.
Here is a list of such length parameters:
- \parindent
- \leftmargini
- \leftmarginv
- \leftmarginvi
Those length are set shorter for the twocolumn option in book.cls
and bk10.clo.
Restore the previous behavior by explicitly setting them for twocolumn
builds.
Fixes: 1063ddafb476 ("Get rid of 'twocolumn' option in \documentclass")
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
\flushbottom, which is the default of book class, is suited for
typesetting double-sided printed documents.
For ebook-size builds, which is one-sided, \flushbottom doesn't
make much sense. \raggedbottom should be a better option as it
prevents excessively tall vertical stretches between paragraphs and
elsewhere.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
In ebook-size builds, tcolorbox occasionally complains:
Package tcolorbox Warning: Using nobreak failed. Try to enlarge
`lines before break' or set page breaks manually on input line
xxxx.
This warning is accompanied by an unfortunate page/column break just
below a section heading in Appendix E.
Make such ugly breaks less likely by enclosing the \section command
with a pair of pagebreak/nopagebreak hints.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
--
You need to be very lucky to observe this issue. At the moment,
you can observe it in perfbook-ebsf.pdf built on Ubuntu 22.04.
Section E.18's heading goes to the bottom of page 1277.
This change makes it go to the top of page 1278.
--
qqz.sty | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Looks like there is no way to see the article of 2005.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
The landing page at the old URL has disappeared.
Use the direct link to AWS instead.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Museum Victoria Australia's web site was reorganized in 2020.
It has a nice "CSIRAC Collection" page now.
The page at University of Melboune was also expanded in 2017.
Update their bibliographic info.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Reported-by: Yariv Aridor <yariv.aridor@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Some recent CI errors come from the incompatibility between packages
pre-installed in the docker image and the ones installed via pacman.
To avoid this, make a full system upgrade when installing the needed
packages.
Signed-off-by: Leonardo Bras <leobras.c@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Reported-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Also add URL at web.archive.org as of April 2012 in a made-up field of
"ArchiveURL".
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Archive site at http://marc.theaimsgroup.com/ does not work any more.
Looks like it is moved to https://marc.info/ and the same argument
string works as it did at marc.theaimsgroup.com.
Therefore, it is possible to search lore.kernel.org for the message-id
based URL of the mail.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
C++ version 1.1
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Version 1.1
As link to the 2009 version is now broken, add an entry for the
2012 version (Version 1.1).
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Links to http://lkml.iu.edu/hypermail/, https://lkml.org/lkml,
and https://marc.info have their own ways of indexing mail messages
(not based on message-ids).
It should be better to use message-id based URLs for forward
compatibility.
As lore.kernel.org is expected to be stable and reliable going
forward, remove "lastchecked" and "[Viewed MMMM DD, YYYY]" fields
along the way.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Reported-by: Johannes Weiner <hannes@cmpxchg.org>
Reported-by: Nhat Pham <hoangnhatp@meta.com>
Reported-by: Mykola Lysenko <mykolal@meta.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Add some examples and make the section header more compelling
Reported-by: Johannes Weiner <hannes@cmpxchg.org>
Reported-by: Nhat Pham <hoangnhatp@meta.com>
Reported-by: Mykola Lysenko <mykolal@meta.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
The newtxtext package provides Helvetica-clone for sans-serif
font family.
As most other figures have sans-serif fonts with the help of fixfonts
scripts, use it in pstricks figures for consistency.
Compensate the slightly smaller look of the labels by using \large.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
fixfonts scripts don't have any effect on EPS files generated
from pstricks + dvips.
Font in the figures should be specified in the source .tex files.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Now that we have forget about Ubuntu bionic, reword the message on
too old cleveref.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Testing $exitcode and "!pdfTeX error:" or "Emergency stop" early
may ignore an earlier warning that tells the reason of such an
error.
Reorder the checks and make the relevant part of the log file be
printed.
$exitcode should be tested as late as possible.
This improves output when a necessary .sty file is missing:
before:
or enter new name. (Default extension: sty)
Enter file name:
! Emergency stop.
<read *>
l.332 \renewcommand
{\sfdefault}{qhv}
End of file on the terminal!
Here is how much of TeX's memory you used:
[...]
after:
LaTeX Info: Redefining \Bbbk on input line 2810.
LaTeX Info: Redefining \not on input line 2959.
)
! LaTeX Error: File `biolinum.sty' not found.
Type X to quit or <RETURN> to proceed,
or enter new name. (Default extension: sty)
Enter file name:
! Emergency stop.
[...]
Subsequent runs of latex can also abort due to, e.g., a typo in .bib.
Keep tests of "Emergency stop." and $exitcode in runlatex.sh to
catch such errors.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
There are a couple of warnings in sf (sans serif) builds:
LaTeX Font Warning: Font shape `T1/qhv/m/sl' in size <7.3> not available
(Font) Font shape `T1/qhv/m/it' tried instead on input line 367.
This is because the qhv (Helvetica clone) font family doesn't
provide slanted shape to be used in the header area of the page
(chapter and section title) and LaTeX uses its italic shape as a
fallback.
This is OK as italic and slanted shapes would look mostly the same
for sans-serif font families.
Suppress the warning by using the silence package.
Giving "save" option to silence makes it save filtered-out warnings
in $basename.sil. This is better than discarding silenced warnings.
Add $basename.sil to .gitignore and Makefile's "clean" target.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
In Ebook-size builds, tens of warnings from varwidth are emitted:
Package varwidth Warning: Failed to reprocess entire contents
on input line xxx.
It turns out that this is due to the wrong use of varwidth package.
Instead, the bare minipage environment suffices in \ebresizeverb.
Stop using varwidth and get rid of those warnings.
As a bonus, we no longer need ad-hoc \vspace*{} command at the
bottom of its definition.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
In Ebook-size builds, pdfTeX complains:
pdfTeX warning (ext4): destination with the same identifier
(name{page.i}) has been already used, duplicate ignored
As a workaround, disable pageanchor of hyperef for titlepage in
Ebook-size builds.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
There is a lingering warning from the multicol package (indirectly
required by the idxlayout package) which reads:
Package multicol Warning: May not work with the twocolumn
option on input line 143.
This is due to the twocolumn option in \documentclass at the top
of preamble.
It turns out that it can be removed with minor tweaks.
One is the setting of \twocolumnwidth using \columnwidth for
2c builds. Column width set by geometry becomes accessible after
\begin{document}. Previously, the twocolumn option at
\documentclass permitted its use in the middle of preamble.
Instead, always set it using the value of 3.125in.
Another is the use of \sloppy. It is implied in the book class
when the twocolumn option is specified. Its effect is to prefer
wide inter-word white spaces to horizontal overfulls.
For perfbook, \sloppy is used explicitly for eb builds.
Do the same for 2c builds.
For 1c builds, as they have wider margins, occasional overfulls
should look better than wide inter-word spaces.
Get rid of the warning by removing the twocolumn option and applying
those minor tweaks.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
As they are no longer used thanks to \Cref, remove the first parameter
from OriginallyPublished, RangeOriginallyPublished, ContributedBy,
and QContributedBy.
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
As is mentioned in FAQ-BUILD.txt, TeX Live 2017/Debian under
Ubuntu bionic needs manual upgrades of cleveref, epigraph, and
glossaries-extra.
Furthermore, glossaries-extra needs manual rollback to v1.48.
LaTeX packages at CTAN tend to provide good backward compatibility
with older TeX Live releases, but that is not a given.
Furthermore, the manual rollback of glossaries-extra done in
Dockerfile.bionic might fail once a future release changes its
internal structure.
As Ubuntu bionic went into its expanded security maintenance phase,
let's advance the minimal requirement of TeX Live to 2019/Debian
(Ubuntu focal).
Remove Dockerfile.bionic and related notes in FAQ-BUILD.txt.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Reported-by: Yariv Aridor <yariv.aridor@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
While building the CodeSamples/datastruct/Issaquah/ directory, I can see
a couple instances of this warning:
In function ‘free_treenode_cache’,
inlined from ‘tree_remove_all’ at tree.c:102:2,
inlined from ‘tree_free’ at tree.c:128:2:
tree.c:251:9: warning: ‘free’ called on pointer ‘trp’ with nonzero offset 96 [-Wfree-nonheap-object]
251 | free(tnp);
| ^~~~~~~~~
I took a look and tried to understand what was happening:
- tree_remove_all() calls free_treenode_cache() on it's input, which ends
up free()'ing it (!BAD_MALLOC)
- It makes sense in most treenodes, since they are allocated with
alloc_treenode_cache() and the malloc() output is the same as the free()
input.
- tree_free() calls tree_remove_all() on &trp->max, which ends up trying
to free() this same address.
- trp is a struct treeroot, which is composed of 2 treenodes: min & max
- The output of malloc() for trp ends up being different from the address
used for free(), since &trp->max is used instead, and there is an offset
since max is the second element of struct treeroot.
To solve this while keeping the tree_remove_all() generic, add a boolean
free_node parameter to tree_remove_all() so the caller can decide if the
node should be freed. The new boolean is true for normal treenodes, and
false if the pointed treenode is contained in the struct treeroot.
Signed-off-by: Leonardo Bras <leobras.c@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Commit 3566689d0c01 ("questions: Add section-level epigraphs")
added an epigraph just above a figure environment.
This makes cleverefcheck.pl complain:
./appendix/questions/time.tex:11:\begin{figure}
^^^ environment next to epigraph ^^^
Move the figure environment bottom of the first paragraph in the
section and prevent the epigraph from (potentially) ending up in
the bottom of a column/page.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
It might not be much of a section, but let's give it an epigraph anyway.
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
The graph starts at v2.6.12, and for good reason, but RCU was
added to the Linux kernel in v2.5.43, which is some years
prior to the start of the graph.
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Most container images at dockerhub and other repositories have
uid:gid = 0:0 by default.
This makes it possible to run commands to update or install packages
after invoking such images.
Furthermore, rootless-mode docker has become easier to install [1]
and podman is rootless by default.
Change the default uid:gid pair to 0:0 in our Dockerfiles.
(Dockerfile.bionic will soon be removed and is not updated here)
Update FAQ-BUILD.txt accordingly. Container images uploaded to
akiyks/perfbook-build will be for rootless mode by default from now
on.
akiyks/perfbook-build-focal and akiyks/perfbook-build-fedora
should be regarded as deprecated but will be kept for a while.
Link: [1] https://docs.docker.com/engine/security/rootless/
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Font markup info in PDF properties can be printed by the pdffonts
command provided by the poppler-utils package.
Add it for catching possible regression in Ubuntu's Inkscape.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
ubuntu:jammy (22.04) based image works just fine for building
perfbook. The tag of "latest" should work fine.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Inkscape of Fedora 38 has a regression in font markup corruption
in SVG --> PDF conversion.
Stay with Fedora 37 by Using an ARG variable "rel" with its value
of 37.
Add poppler-utils package for the pdffonts command to see font markup
in PDF properties.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
The list for Fedora in the answer to #5 doesn't cover DejaVu and
Liberation font families.
Update A-2 of #9 to suggest packages for Fedora.
Update docker/Dockerfile.fedora accordingly.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Under RHEL and Fedora, it is possible to install "DejaVu Sans Mono"
alone. Add check of "DejaVu Sans" font in Makefile and print info
on a nice-to-have font in case it is missing.
Update FAQ-BUILD.txt accordingly.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Depending on fontconfig setting of a build system, it chooses
one of available sans-serif font families for generic font in
SVG files while SVG --> PDF conversion by Inkscape.
utilities/fixsvgfonts{-urwps}.sh scripts explicitly converted it
into "Nimbus Sans", which is a clone of Helvetica.
"DejaVu Sans", which originated from "Bitstream Vera", is slightly
wider than Helvetica and it is the fallback of Paul's setting.
Update fixsvgfonts{-urwps}.sh so that the explicit conversion meets
Paul's expectation.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
While the caption says "Intel Core 2 Architecture Simplified",
it doesn't look simpler than Figure 15.1.
To make it look simpler, raise blue shapes one level up and reduce
their color saturation, with 75% opacity so that blocks underneath
can be related to Figure 15.1.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
In 2c layout, Table E.3 goes to the next page of Listing E.3.
This is partly due to the table* environment, but as both of them
are floating, there is no sure way for them to be on the same page.
Embed the listing at the bottom of the table so that they end up
in the same page and adjust the wording in the text.
For 2c layout, using the table* environment causes the snippet to
look unnecessarily wide. Instead, shrink the table by using the
\tcresizewidth macro and use the normal table environment.
Suggested-by: Paul E. McKenney <paulmck@kernel.org>
Link: https://www.spinics.net/lists/perfbook/msg04070.html
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
A sentence in rt.tex is mentioning a file under Linux source tree's
Documentation/ directory without the explanation of the tree. Add it so
that readers can easily find the mentioned file.
Signed-off-by: SeongJae Park <sj38.park@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Linux commit 4f4cfa6c560c ("docs: admin-guide: add a series of orphaned
documents") has moved Documentation/kernel-per-CPU-kthreads.txt to
Documentation/admin-guide/kernel-per-CPU-kthreads.rst. Update the old
path in advsync/rt.tex.
Signed-off-by: SeongJae Park <sj38.park@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Table E.3 is not intuitive enough to be understood on its own.
Make it self explanatory by adding references to Listing E.3 and
line counts.
Reorder header rows and use \cmidrule for better representation
of table structure as well.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
This reverts commit 94f01e467566ebfaee77868cc02b747e8950ad0b.
Reported-by: Alan Huang <mmpgouride@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|
|
Signed-off-by: Alan Huang <mmpgouride@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
|