28 Oct, 2019

1 commit

  • Add the documenation for TSX Async Abort. Include the description of
    the issue, how to check the mitigation state, control the mitigation,
    guidance for system administrators.

    [ bp: Add proper SPDX tags, touch ups by Josh and me. ]

    Co-developed-by: Antonio Gomez Iglesias

    Signed-off-by: Pawan Gupta
    Signed-off-by: Antonio Gomez Iglesias
    Signed-off-by: Borislav Petkov
    Signed-off-by: Thomas Gleixner
    Reviewed-by: Mark Gross
    Reviewed-by: Tony Luck
    Reviewed-by: Josh Poimboeuf

    Pawan Gupta
     

03 Sep, 2019

1 commit

  • After commit cf65a0f6f6ff ("dma-mapping: move all DMA mapping code to
    kernel/dma") some of the files are referring to outdated information,
    i.e. old file names of DMA mapping sources. Fix it here.

    Note, the lines with "Glue code for..." have been removed completely.

    Signed-off-by: Andy Shevchenko
    Signed-off-by: Christoph Hellwig

    Andy Shevchenko
     

17 Jul, 2019

1 commit


15 Jul, 2019

3 commits


10 Jul, 2019

1 commit

  • Pull Documentation updates from Jonathan Corbet:
    "It's been a relatively busy cycle for docs:

    - A fair pile of RST conversions, many from Mauro. These create more
    than the usual number of simple but annoying merge conflicts with
    other trees, unfortunately. He has a lot more of these waiting on
    the wings that, I think, will go to you directly later on.

    - A new document on how to use merges and rebases in kernel repos,
    and one on Spectre vulnerabilities.

    - Various improvements to the build system, including automatic
    markup of function() references because some people, for reasons I
    will never understand, were of the opinion that
    :c:func:``function()`` is unattractive and not fun to type.

    - We now recommend using sphinx 1.7, but still support back to 1.4.

    - Lots of smaller improvements, warning fixes, typo fixes, etc"

    * tag 'docs-5.3' of git://git.lwn.net/linux: (129 commits)
    docs: automarkup.py: ignore exceptions when seeking for xrefs
    docs: Move binderfs to admin-guide
    Disable Sphinx SmartyPants in HTML output
    doc: RCU callback locks need only _bh, not necessarily _irq
    docs: format kernel-parameters -- as code
    Doc : doc-guide : Fix a typo
    platform: x86: get rid of a non-existent document
    Add the RCU docs to the core-api manual
    Documentation: RCU: Add TOC tree hooks
    Documentation: RCU: Rename txt files to rst
    Documentation: RCU: Convert RCU UP systems to reST
    Documentation: RCU: Convert RCU linked list to reST
    Documentation: RCU: Convert RCU basic concepts to reST
    docs: filesystems: Remove uneeded .rst extension on toctables
    scripts/sphinx-pre-install: fix out-of-tree build
    docs: zh_CN: submitting-drivers.rst: Remove a duplicated Documentation/
    Documentation: PGP: update for newer HW devices
    Documentation: Add section about CPU vulnerabilities for Spectre
    Documentation: platform: Delete x86-laptop-drivers.txt
    docs: Note that :c:func: should no longer be used
    ...

    Linus Torvalds
     

09 Jul, 2019

2 commits

  • Pull cgroup updates from Tejun Heo:
    "Documentation updates and the addition of cgroup_parse_float() which
    will be used by new controllers including blk-iocost"

    * 'for-5.3' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup:
    docs: cgroup-v1: convert docs to ReST and rename to *.rst
    cgroup: Move cgroup_parse_float() implementation out of CONFIG_SYSFS
    cgroup: add cgroup_parse_float()

    Linus Torvalds
     
  • Pull x86 topology updates from Ingo Molnar:
    "Implement multi-die topology support on Intel CPUs and expose the die
    topology to user-space tooling, by Len Brown, Kan Liang and Zhang Rui.

    These changes should have no effect on the kernel's existing
    understanding of topologies, i.e. there should be no behavioral impact
    on cache, NUMA, scheduler, perf and other topologies and overall
    system performance"

    * 'x86-topology-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    perf/x86/intel/rapl: Cosmetic rename internal variables in response to multi-die/pkg support
    perf/x86/intel/uncore: Cosmetic renames in response to multi-die/pkg support
    hwmon/coretemp: Cosmetic: Rename internal variables to zones from packages
    thermal/x86_pkg_temp_thermal: Cosmetic: Rename internal variables to zones from packages
    perf/x86/intel/cstate: Support multi-die/package
    perf/x86/intel/rapl: Support multi-die/package
    perf/x86/intel/uncore: Support multi-die/package
    topology: Create core_cpus and die_cpus sysfs attributes
    topology: Create package_cpus sysfs attribute
    hwmon/coretemp: Support multi-die/package
    powercap/intel_rapl: Update RAPL domain name and debug messages
    thermal/x86_pkg_temp_thermal: Support multi-die/package
    powercap/intel_rapl: Support multi-die/package
    powercap/intel_rapl: Simplify rapl_find_package()
    x86/topology: Define topology_logical_die_id()
    x86/topology: Define topology_die_id()
    cpu/topology: Export die_id
    x86/topology: Create topology_max_die_per_package()
    x86/topology: Add CPUID.1F multi-die/package support

    Linus Torvalds
     

21 Jun, 2019

4 commits


15 Jun, 2019

1 commit

  • Convert the cgroup-v1 files to ReST format, in order to
    allow a later addition to the admin-guide.

    The conversion is actually:
    - add blank lines and identation in order to identify paragraphs;
    - fix tables markups;
    - add some lists markups;
    - mark literal blocks;
    - adjust title markups.

    At its new index.rst, let's add a :orphan: while this is not linked to
    the main index.rst file, in order to avoid build warnings.

    Signed-off-by: Mauro Carvalho Chehab
    Acked-by: Tejun Heo
    Signed-off-by: Tejun Heo

    Mauro Carvalho Chehab
     

09 Jun, 2019

2 commits

  • Mostly due to x86 and acpi conversion, several documentation
    links are still pointing to the old file. Fix them.

    Signed-off-by: Mauro Carvalho Chehab
    Reviewed-by: Wolfram Sang
    Reviewed-by: Sven Van Asbroeck
    Reviewed-by: Bhupesh Sharma
    Acked-by: Mark Brown
    Signed-off-by: Jonathan Corbet

    Mauro Carvalho Chehab
     
  • This document is used by multiple architectures:

    $ echo $(git grep -l pkey_mprotect arch|cut -d'/' -f 2|sort|uniq)
    alpha arm arm64 ia64 m68k microblaze mips parisc powerpc s390 sh sparc x86 xtensa

    So, let's move it to the core book and adjust the links to it
    accordingly.

    Signed-off-by: Mauro Carvalho Chehab
    Signed-off-by: Jonathan Corbet

    Mauro Carvalho Chehab
     

24 May, 2019

1 commit

  • Signed-off-by: Ira Weiny
    Cc: Jonathan Corbet
    Cc: Linus Torvalds
    Cc: Peter Zijlstra
    Cc: Thomas Gleixner
    Cc: linux-doc@vger.kernel.org
    Link: http://lkml.kernel.org/r/20190520205253.23762-1-ira.weiny@intel.com
    [ Adjusted the patch to the RST conversion. ]
    Signed-off-by: Ingo Molnar

    Ira Weiny
     

23 May, 2019

1 commit

  • Some new systems have multiple software-visible die within each package.

    Update Linux parsing of the Intel CPUID "Extended Topology Leaf" to handle
    either CPUID.B, or the new CPUID.1F.

    Add cpuinfo_x86.die_id and cpuinfo_x86.max_dies to store the result.

    die_id will be non-zero only for multi-die/package systems.

    Signed-off-by: Len Brown
    Signed-off-by: Thomas Gleixner
    Reviewed-by: Ingo Molnar
    Acked-by: Peter Zijlstra (Intel)
    Cc: linux-doc@vger.kernel.org
    Link: https://lkml.kernel.org/r/7b23d2d26d717b8e14ba137c94b70943f1ae4b5c.1557769318.git.len.brown@intel.com

    Len Brown
     

16 May, 2019

2 commits

  • On x86_64, all returns to usermode go through
    prepare_exit_to_usermode(), with the sole exception of do_nmi().
    This even includes machine checks -- this was added several years
    ago to support MCE recovery. Update the documentation.

    Signed-off-by: Andy Lutomirski
    Cc: Borislav Petkov
    Cc: Frederic Weisbecker
    Cc: Greg Kroah-Hartman
    Cc: Jon Masters
    Cc: Linus Torvalds
    Cc: Peter Zijlstra
    Cc: Thomas Gleixner
    Cc: stable@vger.kernel.org
    Fixes: 04dcbdb80578 ("x86/speculation/mds: Clear CPU buffers on exit to user")
    Link: http://lkml.kernel.org/r/999fa9e126ba6a48e9d214d2f18dbde5c62ac55c.1557865329.git.luto@kernel.org
    Signed-off-by: Ingo Molnar

    Andy Lutomirski
     
  • The double fault ESPFIX path doesn't return to user mode at all --
    it returns back to the kernel by simulating a #GP fault.
    prepare_exit_to_usermode() will run on the way out of
    general_protection before running user code.

    Signed-off-by: Andy Lutomirski
    Cc: Borislav Petkov
    Cc: Frederic Weisbecker
    Cc: Greg Kroah-Hartman
    Cc: Jon Masters
    Cc: Linus Torvalds
    Cc: Peter Zijlstra
    Cc: Thomas Gleixner
    Cc: stable@vger.kernel.org
    Fixes: 04dcbdb80578 ("x86/speculation/mds: Clear CPU buffers on exit to user")
    Link: http://lkml.kernel.org/r/ac97612445c0a44ee10374f6ea79c222fe22a5c4.1557865329.git.luto@kernel.org
    Signed-off-by: Ingo Molnar

    Andy Lutomirski
     

14 May, 2019

1 commit

  • Pull x86 MDS mitigations from Thomas Gleixner:
    "Microarchitectural Data Sampling (MDS) is a hardware vulnerability
    which allows unprivileged speculative access to data which is
    available in various CPU internal buffers. This new set of misfeatures
    has the following CVEs assigned:

    CVE-2018-12126 MSBDS Microarchitectural Store Buffer Data Sampling
    CVE-2018-12130 MFBDS Microarchitectural Fill Buffer Data Sampling
    CVE-2018-12127 MLPDS Microarchitectural Load Port Data Sampling
    CVE-2019-11091 MDSUM Microarchitectural Data Sampling Uncacheable Memory

    MDS attacks target microarchitectural buffers which speculatively
    forward data under certain conditions. Disclosure gadgets can expose
    this data via cache side channels.

    Contrary to other speculation based vulnerabilities the MDS
    vulnerability does not allow the attacker to control the memory target
    address. As a consequence the attacks are purely sampling based, but
    as demonstrated with the TLBleed attack samples can be postprocessed
    successfully.

    The mitigation is to flush the microarchitectural buffers on return to
    user space and before entering a VM. It's bolted on the VERW
    instruction and requires a microcode update. As some of the attacks
    exploit data structures shared between hyperthreads, full protection
    requires to disable hyperthreading. The kernel does not do that by
    default to avoid breaking unattended updates.

    The mitigation set comes with documentation for administrators and a
    deeper technical view"

    * 'x86-mds-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (23 commits)
    x86/speculation/mds: Fix documentation typo
    Documentation: Correct the possible MDS sysfs values
    x86/mds: Add MDSUM variant to the MDS documentation
    x86/speculation/mds: Add 'mitigations=' support for MDS
    x86/speculation/mds: Print SMT vulnerable on MSBDS with mitigations off
    x86/speculation/mds: Fix comment
    x86/speculation/mds: Add SMT warning message
    x86/speculation: Move arch_smt_update() call to after mitigation decisions
    x86/speculation/mds: Add mds=full,nosmt cmdline option
    Documentation: Add MDS vulnerability documentation
    Documentation: Move L1TF to separate directory
    x86/speculation/mds: Add mitigation mode VMWERV
    x86/speculation/mds: Add sysfs reporting for MDS
    x86/speculation/mds: Add mitigation control for MDS
    x86/speculation/mds: Conditionally clear CPU buffers on idle entry
    x86/kvm/vmx: Add MDS protection when L1D Flush is not active
    x86/speculation/mds: Clear CPU buffers on exit to user
    x86/speculation/mds: Add mds_clear_cpu_buffers()
    x86/kvm: Expose X86_FEATURE_MD_CLEAR to guests
    x86/speculation/mds: Add BUG_MSBDS_ONLY
    ...

    Linus Torvalds
     

11 May, 2019

1 commit

  • Pull more documentation updates from Jonathan Corbet:
    "Some late arriving documentation changes. In particular, this contains
    the conversion of the x86 docs to RST, which has been in the works for
    some time but needed a couple of final tweaks"

    * tag 'docs-5.2a' of git://git.lwn.net/linux: (29 commits)
    Documentation: x86: convert x86_64/machinecheck to reST
    Documentation: x86: convert x86_64/cpu-hotplug-spec to reST
    Documentation: x86: convert x86_64/fake-numa-for-cpusets to reST
    Documentation: x86: convert x86_64/5level-paging.txt to reST
    Documentation: x86: convert x86_64/mm.txt to reST
    Documentation: x86: convert x86_64/uefi.txt to reST
    Documentation: x86: convert x86_64/boot-options.txt to reST
    Documentation: x86: convert i386/IO-APIC.txt to reST
    Documentation: x86: convert usb-legacy-support.txt to reST
    Documentation: x86: convert orc-unwinder.txt to reST
    Documentation: x86: convert resctrl_ui.txt to reST
    Documentation: x86: convert microcode.txt to reST
    Documentation: x86: convert pti.txt to reST
    Documentation: x86: convert amd-memory-encryption.txt to reST
    Documentation: x86: convert intel_mpx.txt to reST
    Documentation: x86: convert protection-keys.txt to reST
    Documentation: x86: convert pat.txt to reST
    Documentation: x86: convert mtrr.txt to reST
    Documentation: x86: convert tlb.txt to reST
    Documentation: x86: convert zero-page.txt to reST
    ...

    Linus Torvalds
     

09 May, 2019

18 commits