Commit 4ac6d908 authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge tag 'docs-5.15' of git://git.lwn.net/linux

Pull documentation updates from Jonathan Corbet:
 "Yet another set of documentation changes:

   - A reworking of PDF generation to yield better results for documents
     using CJK fonts in particular.

   - A new set of translations into traditional Chinese, a dialect for
     which I am assured there is a community of interested readers.

   - A lot more regular Chinese translation work as well.

  ... plus the usual assortment of updates, fixes, typo tweaks, etc"

* tag 'docs-5.15' of git://git.lwn.net/linux: (55 commits)
  docs: sphinx-requirements: Move sphinx_rtd_theme to top
  docs: pdfdocs: Enable language-specific font choice of zh_TW translations
  docs: pdfdocs: Teach xeCJK about character classes of quotation marks
  docs: pdfdocs: Permit AutoFakeSlant for CJK fonts
  docs: pdfdocs: One-half spacing for CJK translations
  docs: pdfdocs: Add conf.py local to translations for ascii-art alignment
  docs: pdfdocs: Preserve inter-phrase space in Korean translations
  docs: pdfdocs: Choose Serif font as CJK mainfont if possible
  docs: pdfdocs: Add CJK-language-specific font settings
  docs: pdfdocs: Refactor config for CJK document
  scripts/kernel-doc: Override -Werror from KCFLAGS with KDOC_WERROR
  docs/zh_CN: Add zh_CN/accounting/psi.rst
  doc: align Italian translation
  Documentation/features/vm: riscv supports THP now
  docs/zh_CN: add infiniband user_verbs translation
  docs/zh_CN: add infiniband user_mad translation
  docs/zh_CN: add infiniband tag_matching translation
  docs/zh_CN: add infiniband sysfs translation
  docs/zh_CN: add infiniband opa_vnic translation
  docs/zh_CN: add infiniband ipoib translation
  ...
parents df43d903 37397b09
Loading
Loading
Loading
Loading
+5 −5
Original line number Diff line number Diff line
@@ -58,9 +58,9 @@ source for the output is in brackets ("[]").
		[NR_CPUS-1]

    offline:	CPUs that are not online because they have been
		HOTPLUGGED off (see cpu-hotplug.txt) or exceed the limit
		of CPUs allowed by the kernel configuration (kernel_max
		above). [~cpu_online_mask + cpus >= NR_CPUS]
		HOTPLUGGED off or exceed the limit of CPUs allowed by the
		kernel configuration (kernel_max above).
		[~cpu_online_mask + cpus >= NR_CPUS]

    online:	CPUs that are online and being scheduled [cpu_online_mask]

@@ -96,5 +96,5 @@ online.)::
       possible: 0-127
        present: 0-3

See cpu-hotplug.txt for the possible_cpus=NUM kernel start parameter
as well as more information on the various cpumasks.
See Documentation/core-api/cpu_hotplug.rst for the possible_cpus=NUM
kernel start parameter as well as more information on the various cpumasks.
+6 −4
Original line number Diff line number Diff line
@@ -181,10 +181,12 @@ Open cross-HT issues that core scheduling does not solve
--------------------------------------------------------
1. For MDS
~~~~~~~~~~
Core scheduling cannot protect against MDS attacks between an HT running in
user mode and another running in kernel mode. Even though both HTs run tasks
which trust each other, kernel memory is still considered untrusted. Such
attacks are possible for any combination of sibling CPU modes (host or guest mode).
Core scheduling cannot protect against MDS attacks between the siblings
running in user mode and the others running in kernel mode. Even though all
siblings run tasks which trust each other, when the kernel is executing
code on behalf of a task, it cannot trust the code running in the
sibling. Such attacks are possible for any combination of sibling CPU modes
(host or guest mode).

2. For L1TF
~~~~~~~~~~~
+7 −5
Original line number Diff line number Diff line
@@ -72,7 +72,7 @@ On PowerPC

On other
	If you know of the key combos for other architectures, please
        let me know so I can add them to this section.
	submit a patch to be included in this section.

On all
	Write a character to /proc/sysrq-trigger.  e.g.::
@@ -205,10 +205,12 @@ frozen (probably root) filesystem via the FIFREEZE ioctl.
Sometimes SysRq seems to get 'stuck' after using it, what can I do?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

That happens to me, also. I've found that tapping shift, alt, and control
on both sides of the keyboard, and hitting an invalid sysrq sequence again
will fix the problem. (i.e., something like :kbd:`alt-sysrq-z`). Switching to
another virtual console (:kbd:`ALT+Fn`) and then back again should also help.
When this happens, try tapping shift, alt and control on both sides of the
keyboard, and hitting an invalid sysrq sequence again. (i.e., something like
:kbd:`alt-sysrq-z`).

Switching to another virtual console (:kbd:`ALT+Fn`) and then back again
should also help.

I hit SysRq, but nothing seems to happen, what's wrong?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+18 −0
Original line number Diff line number Diff line
@@ -58,11 +58,19 @@ Kirkwood family
                - Product Brief  : https://web.archive.org/web/20120616201621/http://www.marvell.com/embedded-processors/kirkwood/assets/88F6180-003_ver1.pdf
                - Hardware Spec  : https://web.archive.org/web/20130730091654/http://www.marvell.com/embedded-processors/kirkwood/assets/HW_88F6180_OpenSource.pdf
                - Functional Spec: https://web.archive.org/web/20130730091033/http://www.marvell.com/embedded-processors/kirkwood/assets/FS_88F6180_9x_6281_OpenSource.pdf
        - 88F6280

                - Product Brief  : https://web.archive.org/web/20130730091058/http://www.marvell.com/embedded-processors/kirkwood/assets/88F6280_SoC_PB-001.pdf
        - 88F6281

                - Product Brief  : https://web.archive.org/web/20120131133709/http://www.marvell.com/embedded-processors/kirkwood/assets/88F6281-004_ver1.pdf
                - Hardware Spec  : https://web.archive.org/web/20120620073511/http://www.marvell.com/embedded-processors/kirkwood/assets/HW_88F6281_OpenSource.pdf
                - Functional Spec: https://web.archive.org/web/20130730091033/http://www.marvell.com/embedded-processors/kirkwood/assets/FS_88F6180_9x_6281_OpenSource.pdf
        - 88F6321
        - 88F6322
        - 88F6323

                - Product Brief  : https://web.archive.org/web/20120616201639/http://www.marvell.com/embedded-processors/kirkwood/assets/88f632x_pb.pdf
  Homepage:
	https://web.archive.org/web/20160513194943/http://www.marvell.com/embedded-processors/kirkwood/
  Core:
@@ -89,6 +97,10 @@ Discovery family

        - MV76100

                - Product Brief  : https://web.archive.org/web/20140722064429/http://www.marvell.com/embedded-processors/discovery-innovation/assets/MV76100-002_WEB.pdf
                - Hardware Spec  : https://web.archive.org/web/20140722064425/http://www.marvell.com/embedded-processors/discovery-innovation/assets/HW_MV76100_OpenSource.pdf
                - Functional Spec: https://web.archive.org/web/20111110081125/http://www.marvell.com/embedded-processors/discovery-innovation/assets/FS_MV76100_78100_78200_OpenSource.pdf

                Not supported by the Linux kernel.

  Core:
@@ -124,17 +136,23 @@ EBU Armada family

  Armada 38x Flavors:
	- 88F6810	Armada 380
	- 88F6811 Armada 381
	- 88F6821 Armada 382
	- 88F6W21 Armada 383
	- 88F6820 Armada 385
	- 88F6828 Armada 388

    - Product infos:   https://web.archive.org/web/20181006144616/http://www.marvell.com/embedded-processors/armada-38x/
    - Functional Spec: https://web.archive.org/web/20200420191927/https://www.marvell.com/content/dam/marvell/en/public-collateral/embedded-processors/marvell-embedded-processors-armada-38x-functional-specifications-2015-11.pdf
    - Hardware Spec:   https://web.archive.org/web/20180713105318/https://www.marvell.com/docs/embedded-processors/assets/marvell-embedded-processors-armada-38x-hardware-specifications-2017-03.pdf
    - Design guide:    https://web.archive.org/web/20180712231737/https://www.marvell.com/docs/embedded-processors/assets/marvell-embedded-processors-armada-38x-hardware-design-guide-2017-08.pdf

  Core:
	ARM Cortex-A9

  Armada 39x Flavors:
	- 88F6920 Armada 390
	- 88F6925 Armada 395
	- 88F6928 Armada 398

    - Product infos: https://web.archive.org/web/20181020222559/http://www.marvell.com/embedded-processors/armada-39x/
+105 −16
Original line number Diff line number Diff line
@@ -16,8 +16,6 @@ import sys
import os
import sphinx

from subprocess import check_output

# Get Sphinx version
major, minor, patch = sphinx.version_info[:3]

@@ -343,6 +341,9 @@ latex_elements = {
        verbatimhintsturnover=false,
    ''',

    # For CJK One-half spacing, need to be in front of hyperref
    'extrapackages': r'\usepackage{setspace}',

    # Additional stuff for the LaTeX preamble.
    'preamble': '''
	% Prevent column squeezing of tabulary.
@@ -355,28 +356,116 @@ latex_elements = {
     ''',
}

# At least one book (translations) may have Asian characters
# with are only displayed if xeCJK is used
# Translations have Asian (CJK) characters which are only displayed if
# xeCJK is used

cjk_cmd = check_output(['fc-list', '--format="%{family[0]}\n"']).decode('utf-8', 'ignore')
if cjk_cmd.find("Noto Sans CJK SC") >= 0:
latex_elements['preamble']  += '''
    \\IfFontExistsTF{Noto Sans CJK SC}{
	% This is needed for translations
	\\usepackage{xeCJK}
        \\setCJKmainfont{Noto Sans CJK SC}
	\\IfFontExistsTF{Noto Serif CJK SC}{
	    \\setCJKmainfont{Noto Serif CJK SC}[AutoFakeSlant]
	}{
	    \\setCJKmainfont{Noto Sans CJK SC}[AutoFakeSlant]
	}
	\\setCJKsansfont{Noto Sans CJK SC}[AutoFakeSlant]
	\\setCJKmonofont{Noto Sans Mono CJK SC}[AutoFakeSlant]
	% CJK Language-specific font choices
	\\IfFontExistsTF{Noto Serif CJK SC}{
	    \\newCJKfontfamily[SCmain]\\scmain{Noto Serif CJK SC}[AutoFakeSlant]
	    \\newCJKfontfamily[SCserif]\\scserif{Noto Serif CJK SC}[AutoFakeSlant]
	}{
	    \\newCJKfontfamily[SCmain]\\scmain{Noto Sans CJK SC}[AutoFakeSlant]
	    \\newCJKfontfamily[SCserif]\\scserif{Noto Sans CJK SC}[AutoFakeSlant]
	}
	\\newCJKfontfamily[SCsans]\\scsans{Noto Sans CJK SC}[AutoFakeSlant]
	\\newCJKfontfamily[SCmono]\\scmono{Noto Sans Mono CJK SC}[AutoFakeSlant]
	\\IfFontExistsTF{Noto Serif CJK TC}{
	    \\newCJKfontfamily[TCmain]\\tcmain{Noto Serif CJK TC}[AutoFakeSlant]
	    \\newCJKfontfamily[TCserif]\\tcserif{Noto Serif CJK TC}[AutoFakeSlant]
	}{
	    \\newCJKfontfamily[TCmain]\\tcmain{Noto Sans CJK TC}[AutoFakeSlant]
	    \\newCJKfontfamily[TCserif]\\tcserif{Noto Sans CJK TC}[AutoFakeSlant]
	}
	\\newCJKfontfamily[TCsans]\\tcsans{Noto Sans CJK TC}[AutoFakeSlant]
	\\newCJKfontfamily[TCmono]\\tcmono{Noto Sans Mono CJK TC}[AutoFakeSlant]
	\\IfFontExistsTF{Noto Serif CJK KR}{
	    \\newCJKfontfamily[KRmain]\\krmain{Noto Serif CJK KR}[AutoFakeSlant]
	    \\newCJKfontfamily[KRserif]\\krserif{Noto Serif CJK KR}[AutoFakeSlant]
	}{
	    \\newCJKfontfamily[KRmain]\\krmain{Noto Sans CJK KR}[AutoFakeSlant]
	    \\newCJKfontfamily[KRserif]\\krserif{Noto Sans CJK KR}[AutoFakeSlant]
	}
	\\newCJKfontfamily[KRsans]\\krsans{Noto Sans CJK KR}[AutoFakeSlant]
	\\newCJKfontfamily[KRmono]\\krmono{Noto Sans Mono CJK KR}[AutoFakeSlant]
	\\IfFontExistsTF{Noto Serif CJK JP}{
	    \\newCJKfontfamily[JPmain]\\jpmain{Noto Serif CJK JP}[AutoFakeSlant]
	    \\newCJKfontfamily[JPserif]\\jpserif{Noto Serif CJK JP}[AutoFakeSlant]
	}{
	    \\newCJKfontfamily[JPmain]\\jpmain{Noto Sans CJK JP}[AutoFakeSlant]
	    \\newCJKfontfamily[JPserif]\\jpserif{Noto Sans CJK JP}[AutoFakeSlant]
	}
	\\newCJKfontfamily[JPsans]\\jpsans{Noto Sans CJK JP}[AutoFakeSlant]
	\\newCJKfontfamily[JPmono]\\jpmono{Noto Sans Mono CJK JP}[AutoFakeSlant]
	% Dummy commands for Sphinx < 2.3 (no 'extrapackages' support)
	\\providecommand{\\onehalfspacing}{}
	\\providecommand{\\singlespacing}{}
	% Define custom macros to on/off CJK
	\\newcommand{\\kerneldocCJKon}{\\makexeCJKactive}
	\\newcommand{\\kerneldocCJKoff}{\\makexeCJKinactive}
	% To customize \sphinxtableofcontents
	\\newcommand{\\kerneldocCJKon}{\\makexeCJKactive\\onehalfspacing}
	\\newcommand{\\kerneldocCJKoff}{\\makexeCJKinactive\\singlespacing}
	\\newcommand{\\kerneldocBeginSC}{%
	    \\begingroup%
	    \\scmain%
	}
	\\newcommand{\\kerneldocEndSC}{\\endgroup}
	\\newcommand{\\kerneldocBeginTC}{%
	    \\begingroup%
	    \\tcmain%
	    \\renewcommand{\\CJKrmdefault}{TCserif}%
	    \\renewcommand{\\CJKsfdefault}{TCsans}%
	    \\renewcommand{\\CJKttdefault}{TCmono}%
	}
	\\newcommand{\\kerneldocEndTC}{\\endgroup}
	\\newcommand{\\kerneldocBeginKR}{%
	    \\begingroup%
	    \\xeCJKDeclareCharClass{HalfLeft}{`“,`‘}%
	    \\xeCJKDeclareCharClass{HalfRight}{`”,`’}%
	    \\krmain%
	    \\renewcommand{\\CJKrmdefault}{KRserif}%
	    \\renewcommand{\\CJKsfdefault}{KRsans}%
	    \\renewcommand{\\CJKttdefault}{KRmono}%
	    \\xeCJKsetup{CJKspace = true} % For inter-phrase space
	}
	\\newcommand{\\kerneldocEndKR}{\\endgroup}
	\\newcommand{\\kerneldocBeginJP}{%
	    \\begingroup%
	    \\xeCJKDeclareCharClass{HalfLeft}{`“,`‘}%
	    \\xeCJKDeclareCharClass{HalfRight}{`”,`’}%
	    \\jpmain%
	    \\renewcommand{\\CJKrmdefault}{JPserif}%
	    \\renewcommand{\\CJKsfdefault}{JPsans}%
	    \\renewcommand{\\CJKttdefault}{JPmono}%
	}
	\\newcommand{\\kerneldocEndJP}{\\endgroup}
	% Single spacing in literal blocks
	\\fvset{baselinestretch=1}
	% To customize \\sphinxtableofcontents
	\\usepackage{etoolbox}
	% Inactivate CJK after tableofcontents
	\\apptocmd{\\sphinxtableofcontents}{\\kerneldocCJKoff}{}{}
     '''
else:
    latex_elements['preamble']  += '''
    }{ % No CJK font found
	% Custom macros to on/off CJK (Dummy)
	\\newcommand{\\kerneldocCJKon}{}
	\\newcommand{\\kerneldocCJKoff}{}
	\\newcommand{\\kerneldocBeginSC}{}
	\\newcommand{\\kerneldocEndSC}{}
	\\newcommand{\\kerneldocBeginTC}{}
	\\newcommand{\\kerneldocEndTC}{}
	\\newcommand{\\kerneldocBeginKR}{}
	\\newcommand{\\kerneldocEndKR}{}
	\\newcommand{\\kerneldocBeginSC}{}
	\\newcommand{\\kerneldocEndKR}{}
    }
'''

# Fix reference escape troubles with Sphinx 1.4.x
Loading