17 Oct, 2020

1 commit

  • Pull s390 updates from Vasily Gorbik:

    - Remove address space overrides using set_fs()

    - Convert to generic vDSO

    - Convert to generic page table dumper

    - Add ARCH_HAS_DEBUG_WX support

    - Add leap seconds handling support

    - Add NVMe firmware-assisted kernel dump support

    - Extend NVMe boot support with memory clearing control and addition of
    kernel parameters

    - AP bus and zcrypt api code rework. Add adapter configure/deconfigure
    interface. Extend debug features. Add failure injection support

    - Add ECC secure private keys support

    - Add KASan support for running protected virtualization host with
    4-level paging

    - Utilize destroy page ultravisor call to speed up secure guests
    shutdown

    - Implement ioremap_wc() and ioremap_prot() with MIO in PCI code

    - Various checksum improvements

    - Other small various fixes and improvements all over the code

    * tag 's390-5.10-1' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux: (85 commits)
    s390/uaccess: fix indentation
    s390/uaccess: add default cases for __put_user_fn()/__get_user_fn()
    s390/zcrypt: fix wrong format specifications
    s390/kprobes: move insn_page to text segment
    s390/sie: fix typo in SIGP code description
    s390/lib: fix kernel doc for memcmp()
    s390/zcrypt: Introduce Failure Injection feature
    s390/zcrypt: move ap_msg param one level up the call chain
    s390/ap/zcrypt: revisit ap and zcrypt error handling
    s390/ap: Support AP card SCLP config and deconfig operations
    s390/sclp: Add support for SCLP AP adapter config/deconfig
    s390/ap: add card/queue deconfig state
    s390/ap: add error response code field for ap queue devices
    s390/ap: split ap queue state machine state from device state
    s390/zcrypt: New config switch CONFIG_ZCRYPT_DEBUG
    s390/zcrypt: introduce msg tracking in zcrypt functions
    s390/startup: correct early pgm check info formatting
    s390: remove orphaned extern variables declarations
    s390/kasan: make sure int handler always run with DAT on
    s390/ipl: add support to control memory clearing for nvme re-IPL
    ...

    Linus Torvalds
     

14 Sep, 2020

1 commit

  • With our current support for the new MIO PCI instructions, write
    combining/write back MMIO memory can be obtained via the pci_iomap_wc()
    and pci_iomap_wc_range() functions.
    This is achieved by using the write back address for a specific bar
    as provided in clp_store_query_pci_fn()

    These functions are however not widely used and instead drivers often
    rely on ioremap_wc() and ioremap_prot(), which on other platforms enable
    write combining using a PTE flag set through the pgrprot value.

    While we do not have a write combining flag in the low order flag bits
    of the PTE like x86_64 does, with MIO support, there is a write back bit
    in the physical address (bit 1 on z15) and thus also the PTE.
    Which bit is used to toggle write back and whether it is available at
    all, is however not fixed in the architecture. Instead we get this
    information from the CLP Store Logical Processor Characteristics for PCI
    command. When the write back bit is not provided we fall back to the
    existing behavior.

    Signed-off-by: Niklas Schnelle
    Reviewed-by: Pierre Morel
    Reviewed-by: Gerald Schaefer
    Signed-off-by: Vasily Gorbik

    Niklas Schnelle
     

02 Sep, 2020

1 commit

  • The test is broken w.r.t page table update rules and results in kernel
    crash as below. Disable the support until we get the tests updated.

    [ 21.083519] kernel BUG at arch/powerpc/mm/pgtable.c:304!
    cpu 0x0: Vector: 700 (Program Check) at [c000000c6d1e76c0]
    pc: c00000000009a5ec: assert_pte_locked+0x14c/0x380
    lr: c0000000005eeeec: pte_update+0x11c/0x190
    sp: c000000c6d1e7950
    msr: 8000000002029033
    current = 0xc000000c6d172c80
    paca = 0xc000000003ba0000 irqmask: 0x03 irq_happened: 0x01
    pid = 1, comm = swapper/0
    kernel BUG at arch/powerpc/mm/pgtable.c:304!
    [link register ] c0000000005eeeec pte_update+0x11c/0x190
    [c000000c6d1e7950] 0000000000000001 (unreliable)
    [c000000c6d1e79b0] c0000000005eee14 pte_update+0x44/0x190
    [c000000c6d1e7a10] c000000001a2ca9c pte_advanced_tests+0x160/0x3d8
    [c000000c6d1e7ab0] c000000001a2d4fc debug_vm_pgtable+0x7e8/0x1338
    [c000000c6d1e7ba0] c0000000000116ec do_one_initcall+0xac/0x5f0
    [c000000c6d1e7c80] c0000000019e4fac kernel_init_freeable+0x4dc/0x5a4
    [c000000c6d1e7db0] c000000000012474 kernel_init+0x24/0x160
    [c000000c6d1e7e20] c00000000000cbd0 ret_from_kernel_thread+0x5c/0x6c

    With DEBUG_VM disabled

    [ 20.530152] BUG: Kernel NULL pointer dereference on read at 0x00000000
    [ 20.530183] Faulting instruction address: 0xc0000000000df330
    cpu 0x33: Vector: 380 (Data SLB Access) at [c000000c6d19f700]
    pc: c0000000000df330: memset+0x68/0x104
    lr: c00000000009f6d8: hash__pmdp_huge_get_and_clear+0xe8/0x1b0
    sp: c000000c6d19f990
    msr: 8000000002009033
    dar: 0
    current = 0xc000000c6d177480
    paca = 0xc00000001ec4f400 irqmask: 0x03 irq_happened: 0x01
    pid = 1, comm = swapper/0
    [link register ] c00000000009f6d8 hash__pmdp_huge_get_and_clear+0xe8/0x1b0
    [c000000c6d19f990] c00000000009f748 hash__pmdp_huge_get_and_clear+0x158/0x1b0 (unreliable)
    [c000000c6d19fa10] c0000000019ebf30 pmd_advanced_tests+0x1f0/0x378
    [c000000c6d19fab0] c0000000019ed088 debug_vm_pgtable+0x79c/0x1244
    [c000000c6d19fba0] c0000000000116ec do_one_initcall+0xac/0x5f0
    [c000000c6d19fc80] c0000000019a4fac kernel_init_freeable+0x4dc/0x5a4
    [c000000c6d19fdb0] c000000000012474 kernel_init+0x24/0x160
    [c000000c6d19fe20] c00000000000cbd0 ret_from_kernel_thread+0x5c/0x6c
    33:mon>

    Signed-off-by: Aneesh Kumar K.V
    Signed-off-by: Michael Ellerman
    Link: https://lore.kernel.org/r/20200902040122.136414-1-aneesh.kumar@linux.ibm.com

    Aneesh Kumar K.V
     

14 Aug, 2020

1 commit

  • Pull documentation fixes from Jonathan Corbet:
    "A handful of obvious fixes that wandered in during the merge window"

    * tag 'docs-5.9-2' of git://git.lwn.net/linux:
    Documentation/locking/locktypes: fix the typo
    doc/zh_CN: resolve undefined label warning in admin-guide index
    doc/zh_CN: fix title heading markup in admin-guide cpu-load
    docs: remove the 2.6 "Upgrading I2C Drivers" guide
    docs: Correct the release date of 5.2 stable
    mailmap: Update comments for with format and more detalis
    docs: cdrom: Fix a typo and rst markup
    Doc: admin-guide: use correct legends in kernel-parameters.txt
    Documentation/features: refresh RISC-V arch support files
    documentation: coccinelle: Improve command example for make C={1,2}
    Core-api: Documentation: Replace deprecated :c:func: Usage
    Dev-tools: Documentation: Replace deprecated :c:func: Usage
    Filesystems: Documentation: Replace deprecated :c:func: Usage
    docs: trace: fix a typo

    Linus Torvalds
     

12 Aug, 2020

1 commit

  • Support for these was added by the following commits:

    f2c9699f6555 ("riscv: Add STACKPROTECTOR supported")
    3c4697982982 ("riscv: Enable LOCKDEP_SUPPORT & fixup TRACE_IRQFLAGS_SUPPORT").
    ed48b297fe21 ("riscv: Enable context tracking")
    cbb3d91d3bcf ("riscv: Add kmemleak support")

    Signed-off-by: Tobias Klauser
    Link: https://lore.kernel.org/r/20200810095000.32092-1-tklauser@distanz.ch
    Signed-off-by: Jonathan Corbet

    Tobias Klauser
     

08 Aug, 2020

2 commits

  • Pull powerpc updates from Michael Ellerman:

    - Add support for (optionally) using queued spinlocks & rwlocks.

    - Support for a new faster system call ABI using the scv instruction on
    Power9 or later.

    - Drop support for the PROT_SAO mmap/mprotect flag as it will be
    unsupported on Power10 and future processors, leaving us with no way
    to implement the functionality it requests. This risks breaking
    userspace, though we believe it is unused in practice.

    - A bug fix for, and then the removal of, our custom stack expansion
    checking. We now allow stack expansion up to the rlimit, like other
    architectures.

    - Remove the remnants of our (previously disabled) topology update
    code, which tried to react to NUMA layout changes on virtualised
    systems, but was prone to crashes and other problems.

    - Add PMU support for Power10 CPUs.

    - A change to our signal trampoline so that we don't unbalance the link
    stack (branch return predictor) in the signal delivery path.

    - Lots of other cleanups, refactorings, smaller features and so on as
    usual.

    Thanks to: Abhishek Goel, Alastair D'Silva, Alexander A. Klimov, Alexey
    Kardashevskiy, Alistair Popple, Andrew Donnellan, Aneesh Kumar K.V, Anju
    T Sudhakar, Anton Blanchard, Arnd Bergmann, Athira Rajeev, Balamuruhan
    S, Bharata B Rao, Bill Wendling, Bin Meng, Cédric Le Goater, Chris
    Packham, Christophe Leroy, Christoph Hellwig, Daniel Axtens, Dan
    Williams, David Lamparter, Desnes A. Nunes do Rosario, Erhard F., Finn
    Thain, Frederic Barrat, Ganesh Goudar, Gautham R. Shenoy, Geoff Levand,
    Greg Kurz, Gustavo A. R. Silva, Hari Bathini, Harish, Imre Kaloz, Joel
    Stanley, Joe Perches, John Crispin, Jordan Niethe, Kajol Jain, Kamalesh
    Babulal, Kees Cook, Laurent Dufour, Leonardo Bras, Li RongQing, Madhavan
    Srinivasan, Mahesh Salgaonkar, Mark Cave-Ayland, Michal Suchanek, Milton
    Miller, Mimi Zohar, Murilo Opsfelder Araujo, Nathan Chancellor, Nathan
    Lynch, Naveen N. Rao, Nayna Jain, Nicholas Piggin, Oliver O'Halloran,
    Palmer Dabbelt, Pedro Miraglia Franco de Carvalho, Philippe Bergheaud,
    Pingfan Liu, Pratik Rajesh Sampat, Qian Cai, Qinglang Miao, Randy
    Dunlap, Ravi Bangoria, Sachin Sant, Sam Bobroff, Sandipan Das, Santosh
    Sivaraj, Satheesh Rajendran, Shirisha Ganta, Sourabh Jain, Srikar
    Dronamraju, Stan Johnson, Stephen Rothwell, Thadeu Lima de Souza
    Cascardo, Thiago Jung Bauermann, Tom Lane, Vaibhav Jain, Vladis Dronov,
    Wei Yongjun, Wen Xiong, YueHaibing.

    * tag 'powerpc-5.9-1' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux: (337 commits)
    selftests/powerpc: Fix pkey syscall redefinitions
    powerpc: Fix circular dependency between percpu.h and mmu.h
    powerpc/powernv/sriov: Fix use of uninitialised variable
    selftests/powerpc: Skip vmx/vsx/tar/etc tests on older CPUs
    powerpc/40x: Fix assembler warning about r0
    powerpc/papr_scm: Add support for fetching nvdimm 'fuel-gauge' metric
    powerpc/papr_scm: Fetch nvdimm performance stats from PHYP
    cpuidle: pseries: Fixup exit latency for CEDE(0)
    cpuidle: pseries: Add function to parse extended CEDE records
    cpuidle: pseries: Set the latency-hint before entering CEDE
    selftests/powerpc: Fix online CPU selection
    powerpc/perf: Consolidate perf_callchain_user_[64|32]()
    powerpc/pseries/hotplug-cpu: Remove double free in error path
    powerpc/pseries/mobility: Add pr_debug() for device tree changes
    powerpc/pseries/mobility: Set pr_fmt()
    powerpc/cacheinfo: Warn if cache object chain becomes unordered
    powerpc/cacheinfo: Improve diagnostics about malformed cache lists
    powerpc/cacheinfo: Use name@unit instead of full DT path in debug messages
    powerpc/cacheinfo: Set pr_fmt()
    powerpc: fix function annotations to avoid section mismatch warnings with gcc-10
    ...

    Linus Torvalds
     
  • Pull RISC-V updates from Palmer Dabbelt:
    "We have a lot of new kernel features for this merge window:

    - ARCH_SUPPORTS_ATOMIC_RMW, to allow OSQ locks to be enabled

    - The ability to enable NO_HZ_FULL

    - Support for enabling kcov, kmemleak, stack protector, and VM
    debugging

    - JUMP_LABEL support

    There are also a handful of cleanups"

    * tag 'riscv-for-linus-5.9-mw0' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux: (24 commits)
    riscv: disable stack-protector for vDSO
    RISC-V: Fix build warning for smpboot.c
    riscv: fix build warning of mm/pageattr
    riscv: Fix build warning for mm/init
    RISC-V: Setup exception vector early
    riscv: Select ARCH_HAS_DEBUG_VM_PGTABLE
    riscv: Use generic pgprot_* macros from
    mm: pgtable: Make generic pgprot_* macros available for no-MMU
    riscv: Cleanup unnecessary define in asm-offset.c
    riscv: Add jump-label implementation
    riscv: Support R_RISCV_ADD64 and R_RISCV_SUB64 relocs
    Replace HTTP links with HTTPS ones: RISC-V
    riscv: Add STACKPROTECTOR supported
    riscv: Fix typo in asm/hwcap.h uapi header
    riscv: Add kmemleak support
    riscv: Allow building with kcov coverage
    riscv: Enable context tracking
    riscv: Support irq_work via self IPIs
    riscv: Enable LOCKDEP_SUPPORT & fixup TRACE_IRQFLAGS_SUPPORT
    riscv: Fixup lockdep_assert_held with wrong param cpu_running
    ...

    Linus Torvalds
     

07 Aug, 2020

1 commit

  • Pull Xtensa updates from Max Filippov:

    - add syscall audit support

    - add seccomp filter support

    - clean up make rules under arch/xtensa/boot

    - fix state management for exclusive access opcodes

    - fix build with PMU enabled

    * tag 'xtensa-20200805' of git://github.com/jcmvbkbc/linux-xtensa:
    xtensa: add missing exclusive access state management
    xtensa: fix xtensa_pmu_setup prototype
    xtensa: add boot subdirectories build artifacts to 'targets'
    xtensa: add uImage and xipImage to targets
    xtensa: move vmlinux.bin[.gz] to boot subdirectory
    xtensa: initialize_mmu.h: fix a duplicated word
    selftests/seccomp: add xtensa support
    xtensa: add seccomp support
    xtensa: expose syscall through user_pt_regs
    xtensa: add audit support

    Linus Torvalds
     

05 Aug, 2020

1 commit

  • Pull documentation updates from Jonathan Corbet:
    "It's been a busy cycle for documentation - hopefully the busiest for a
    while to come. Changes include:

    - Some new Chinese translations

    - Progress on the battle against double words words and non-HTTPS
    URLs

    - Some block-mq documentation

    - More RST conversions from Mauro. At this point, that task is
    essentially complete, so we shouldn't see this kind of churn again
    for a while. Unless we decide to switch to asciidoc or
    something...:)

    - Lots of typo fixes, warning fixes, and more"

    * tag 'docs-5.9' of git://git.lwn.net/linux: (195 commits)
    scripts/kernel-doc: optionally treat warnings as errors
    docs: ia64: correct typo
    mailmap: add entry for
    doc/zh_CN: add cpu-load Chinese version
    Documentation/admin-guide: tainted-kernels: fix spelling mistake
    MAINTAINERS: adjust kprobes.rst entry to new location
    devices.txt: document rfkill allocation
    PCI: correct flag name
    docs: filesystems: vfs: correct flag name
    docs: filesystems: vfs: correct sync_mode flag names
    docs: path-lookup: markup fixes for emphasis
    docs: path-lookup: more markup fixes
    docs: path-lookup: fix HTML entity mojibake
    CREDITS: Replace HTTP links with HTTPS ones
    docs: process: Add an example for creating a fixes tag
    doc/zh_CN: add Chinese translation prefer section
    doc/zh_CN: add clearing-warn-once Chinese version
    doc/zh_CN: add admin-guide index
    doc:it_IT: process: coding-style.rst: Correct __maybe_unused compiler label
    futex: MAINTAINERS: Re-add selftests directory
    ...

    Linus Torvalds
     

31 Jul, 2020

2 commits


28 Jul, 2020

1 commit


23 Jul, 2020

1 commit


13 Jul, 2020

1 commit

  • Commit 3839a7460721 ("Documentation/features: Add kcov") and
    commit 4641961cff2f ("Documentation/features: Add kmemleak") were added
    shortly after the unicore32 port was removed in commit fb37409a01b0
    ("arch: remove unicore32 port"). Remove the unicore32 feature lines from
    kcov and kmemleak as well.

    Signed-off-by: Tobias Klauser
    Link: https://lore.kernel.org/r/20200707090922.4746-1-tklauser@distanz.ch
    Signed-off-by: Jonathan Corbet

    Tobias Klauser
     

06 Jul, 2020

2 commits

  • Add an arch support status file for kcov (ARCH_HAS_KCOV).

    Signed-off-by: Tobias Klauser
    Link: https://lore.kernel.org/r/20200627092300.29438-1-tklauser@distanz.ch
    Signed-off-by: Jonathan Corbet

    Tobias Klauser
     
  • Replace the manually curated list for supported archs in
    Documentation/dev-tools/kmemleak.rst by a Documentation/features entry.

    Signed-off-by: Tobias Klauser
    Link: https://lore.kernel.org/r/20200627091510.28210-1-tklauser@distanz.ch
    Signed-off-by: Jonathan Corbet

    Tobias Klauser
     

01 Jul, 2020

1 commit

  • The unicore32 port do not seem maintained for a long time now, there is no
    upstream toolchain that can create unicore32 binaries and all the links to
    prebuilt toolchains for unicore32 are dead. Even compilers that were
    available are not supported by the kernel anymore.

    Guenter Roeck says:

    I have stopped building unicore32 images since v4.19 since there is no
    available compiler that is still supported by the kernel. I am surprised
    that support for it has not been removed from the kernel.

    Remove unicore32 port.

    Signed-off-by: Mike Rapoport
    Acked-by: Arnd Bergmann
    Acked-by: Guenter Roeck

    Mike Rapoport
     

27 Jun, 2020

1 commit


05 Jun, 2020

1 commit

  • This adds tests which will validate architecture page table helpers and
    other accessors in their compliance with expected generic MM semantics.
    This will help various architectures in validating changes to existing
    page table helpers or addition of new ones.

    This test covers basic page table entry transformations including but not
    limited to old, young, dirty, clean, write, write protect etc at various
    level along with populating intermediate entries with next page table page
    and validating them.

    Test page table pages are allocated from system memory with required size
    and alignments. The mapped pfns at page table levels are derived from a
    real pfn representing a valid kernel text symbol. This test gets called
    via late_initcall().

    This test gets built and run when CONFIG_DEBUG_VM_PGTABLE is selected.
    Any architecture, which is willing to subscribe this test will need to
    select ARCH_HAS_DEBUG_VM_PGTABLE. For now this is limited to arc, arm64,
    x86, s390 and powerpc platforms where the test is known to build and run
    successfully Going forward, other architectures too can subscribe the test
    after fixing any build or runtime problems with their page table helpers.

    Folks interested in making sure that a given platform's page table helpers
    conform to expected generic MM semantics should enable the above config
    which will just trigger this test during boot. Any non conformity here
    will be reported as an warning which would need to be fixed. This test
    will help catch any changes to the agreed upon semantics expected from
    generic MM and enable platforms to accommodate it thereafter.

    [anshuman.khandual@arm.com: v17]
    Link: http://lkml.kernel.org/r/1587436495-22033-3-git-send-email-anshuman.khandual@arm.com
    [anshuman.khandual@arm.com: v18]
    Link: http://lkml.kernel.org/r/1588564865-31160-3-git-send-email-anshuman.khandual@arm.com
    Suggested-by: Catalin Marinas
    Signed-off-by: Anshuman Khandual
    Signed-off-by: Christophe Leroy
    Signed-off-by: Qian Cai
    Signed-off-by: Andrew Morton
    Tested-by: Gerald Schaefer [s390]
    Tested-by: Christophe Leroy [ppc32]
    Reviewed-by: Ingo Molnar
    Cc: Mike Rapoport
    Cc: Vineet Gupta
    Cc: Catalin Marinas
    Cc: Will Deacon
    Cc: Benjamin Herrenschmidt
    Cc: Paul Mackerras
    Cc: Michael Ellerman
    Cc: Heiko Carstens
    Cc: Vasily Gorbik
    Cc: Christian Borntraeger
    Cc: Thomas Gleixner
    Cc: Ingo Molnar
    Cc: Borislav Petkov
    Cc: "H. Peter Anvin"
    Cc: Kirill A. Shutemov
    Cc: Paul Walmsley
    Cc: Palmer Dabbelt
    Link: http://lkml.kernel.org/r/1583919272-24178-1-git-send-email-anshuman.khandual@arm.com
    Signed-off-by: Linus Torvalds

    Anshuman Khandual
     

04 Jun, 2020

1 commit

  • CONFIG_HAVE_MEMBLOCK_NODE_MAP is used to differentiate initialization of
    nodes and zones structures between the systems that have region to node
    mapping in memblock and those that don't.

    Currently all the NUMA architectures enable this option and for the
    non-NUMA systems we can presume that all the memory belongs to node 0 and
    therefore the compile time configuration option is not required.

    The remaining few architectures that use DISCONTIGMEM without NUMA are
    easily updated to use memblock_add_node() instead of memblock_add() and
    thus have proper correspondence of memblock regions to NUMA nodes.

    Still, free_area_init_node() must have a backward compatible version
    because its semantics with and without CONFIG_HAVE_MEMBLOCK_NODE_MAP is
    different. Once all the architectures will use the new semantics, the
    entire compatibility layer can be dropped.

    To avoid addition of extra run time memory to store node id for
    architectures that keep memblock but have only a single node, the node id
    field of the memblock_region is guarded by CONFIG_NEED_MULTIPLE_NODES and
    the corresponding accessors presume that in those cases it is always 0.

    Signed-off-by: Mike Rapoport
    Signed-off-by: Andrew Morton
    Tested-by: Hoan Tran [arm64]
    Acked-by: Catalin Marinas [arm64]
    Cc: Baoquan He
    Cc: Brian Cain
    Cc: "David S. Miller"
    Cc: Geert Uytterhoeven
    Cc: Greentime Hu
    Cc: Greg Ungerer
    Cc: Guan Xuetao
    Cc: Guo Ren
    Cc: Heiko Carstens
    Cc: Helge Deller
    Cc: "James E.J. Bottomley"
    Cc: Jonathan Corbet
    Cc: Ley Foon Tan
    Cc: Mark Salter
    Cc: Matt Turner
    Cc: Max Filippov
    Cc: Michael Ellerman
    Cc: Michal Hocko
    Cc: Michal Simek
    Cc: Nick Hu
    Cc: Paul Walmsley
    Cc: Richard Weinberger
    Cc: Rich Felker
    Cc: Russell King
    Cc: Stafford Horne
    Cc: Thomas Bogendoerfer
    Cc: Tony Luck
    Cc: Vineet Gupta
    Cc: Yoshinori Sato
    Link: http://lkml.kernel.org/r/20200412194859.12663-4-rppt@kernel.org
    Signed-off-by: Linus Torvalds

    Mike Rapoport
     

26 May, 2020

2 commits

  • The Documentation/features/debug/kprobes/arch-support.txt incorrectly
    states that RISC-V has kprobes support. This is not the case.

    Note that entries that have been incorrectly marked with 'ok' will not
    be changed back to 'TODO' by the features-refresh.sh script.

    Fixes: 7156fc292850 ("Documentation/features: Refresh the arch support status files in place")
    Signed-off-by: Björn Töpel
    Link: https://lore.kernel.org/r/20200523210005.59140-1-bjorn.topel@gmail.com
    Signed-off-by: Jonathan Corbet

    Björn Töpel
     
  • I was manually editing the arch-support.txt for eBPF-JIT, when I
    realized the refresh script [1] has not been run for a while. Let's
    fix that, so that the entries are more up-to-date.

    [1] Documentation/features/scripts/features-refresh.sh

    Signed-off-by: Björn Töpel
    Link: https://lore.kernel.org/r/20200523191135.21889-1-bjorn.topel@gmail.com
    Signed-off-by: Jonathan Corbet

    Björn Töpel
     

19 Feb, 2020

1 commit


06 Feb, 2020

1 commit

  • Pull more s390 updates from Vasily Gorbik:
    "The second round of s390 fixes and features for 5.6:

    - Add KPROBES_ON_FTRACE support

    - Add EP11 AES secure keys support

    - PAES rework and prerequisites for paes-s390 ciphers selftests

    - Fix page table upgrade for hugetlbfs"

    * tag 's390-5.6-2' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux:
    s390/pkey/zcrypt: Support EP11 AES secure keys
    s390/zcrypt: extend EP11 card and queue sysfs attributes
    s390/zcrypt: add new low level ep11 functions support file
    s390/zcrypt: ep11 structs rework, export zcrypt_send_ep11_cprb
    s390/zcrypt: enable card/domain autoselect on ep11 cprbs
    s390/crypto: enable clear key values for paes ciphers
    s390/pkey: Add support for key blob with clear key value
    s390/crypto: Rework on paes implementation
    s390: support KPROBES_ON_FTRACE
    s390/mm: fix dynamic pagetable upgrade for hugetlbfs

    Linus Torvalds
     

30 Jan, 2020

1 commit


14 Jan, 2020

1 commit


03 Jan, 2020

1 commit

  • This patch enables GCOV code coverage measurement on RISC-V.
    Lightly tested on QEMU and Hifive Unleashed board, seems to work as
    expected.

    Signed-off-by: Zong Li
    Reviewed-by: Anup Patel
    Acked-by: Jonathan Corbet
    Signed-off-by: Paul Walmsley

    Zong Li
     

21 Oct, 2019

1 commit


18 Sep, 2019

1 commit

  • Pull documentation updates from Jonathan Corbet:
    "It's a somewhat calmer cycle for docs this time, as the churn of the
    mass RST conversion is happily mostly behind us.

    - A new document on reproducible builds.

    - We finally got around to zapping the documentation for hardware
    support that was removed in 2004; one doesn't want to rush these
    things.

    - The usual assortment of fixes, typo corrections, etc"

    * tag 'docs-5.4' of git://git.lwn.net/linux: (67 commits)
    Documentation: kbuild: Add document about reproducible builds
    docs: printk-formats: Stop encouraging use of unnecessary %h[xudi] and %hh[xudi]
    Documentation: Add "earlycon=sbi" to the admin guide
    doc:lock: remove reference to clever use of read-write lock
    devices.txt: improve entry for comedi (char major 98)
    docs: mtd: Update spi nor reference driver
    doc: arm64: fix grammar dtb placed in no attributes region
    Documentation: sysrq: don't recommend 'S' 'U' before 'B'
    mailmap: Update email address for Quentin Perret
    docs: ftrace: clarify when tracing is disabled by the trace file
    docs: process: fix broken link
    Documentation/arm/samsung-s3c24xx: Remove stray U+FEFF character to fix title
    Documentation/arm/sa1100/assabet: Fix 'make assabet_defconfig' command
    Documentation/arm/sa1100: Remove some obsolete documentation
    docs/zh_CN: update Chinese howto.rst for latexdocs making
    Documentation: virt: Fix broken reference to virt tree's index
    docs: Fix typo on pull requests guide
    kernel-doc: Allow anonymous enum
    Documentation: sphinx: Don't parse socket() as identifier reference
    Documentation: sphinx: Add missing comma to list of strings
    ...

    Linus Torvalds
     

03 Aug, 2019

2 commits


31 Jul, 2019

1 commit

  • The locking feature lists don't match reality as of v5.3-rc1:

    * arm64 moved to queued spinlocks in commit:
    c11090474d70590170cf5fa6afe85864ab494b37
    ("arm64: locking: Replace ticket lock implementation with qspinlock")

    * xtensa moved to queued spinlocks and rwlocks in commit:
    579afe866f52adcd921272a224ab36733051059c
    ("xtensa: use generic spinlock/rwlock implementation")

    * architecture-specific rwsem support was removed in commit:
    46ad0840b1584b92b5ff2cc3ed0b011dd6b8e0f1
    ("locking/rwsem: Remove arch specific rwsem files")

    So update the feature lists accordingly, and remove the now redundant
    rwsem-optimized list.

    Signed-off-by: Mark Rutland
    Signed-off-by: Jonathan Corbet

    Mark Rutland
     

15 Jun, 2019

1 commit


08 May, 2019

1 commit

  • Pull parisc updates from Helge Deller:
    "Many great new features, fixes and optimizations, including:

    - Convert page table updates to use per-pagetable spinlocks which
    overall improves performance on SMP machines a lot, by Mikulas
    Patocka

    - Kernel debugger (KGDB) support, by Sven Schnelle

    - KPROBES support, by Sven Schnelle

    - Lots of TLB lock/flush improvements, by Dave Anglin

    - Drop DISCONTIGMEM and switch to SPARSEMEM

    - Added JUMP_LABEL, branch runtime-patching support

    - Lots of other small speedups and cleanups, e.g. for QEMU, stack
    randomization, avoidance of name clashes, documentation updates,
    etc ..."

    * 'parisc-5.2-1' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux: (28 commits)
    parisc: Add static branch and JUMP_LABEL feature
    parisc: Use PA_ASM_LEVEL in boot code
    parisc: Rename LEVEL to PA_ASM_LEVEL to avoid name clash with DRBD code
    parisc: Update huge TLB page support to use per-pagetable spinlock
    parisc: Use per-pagetable spinlock
    parisc: Allow live-patching of __meminit functions
    parisc: Add memory barrier to asm pdc and sync instructions
    parisc: Add memory clobber to TLB purges
    parisc: Use ldcw instruction for SMP spinlock release barrier
    parisc: Remove lock code to serialize TLB operations in pacache.S
    parisc: Switch from DISCONTIGMEM to SPARSEMEM
    parisc: enable wide mode early
    parisc: update feature lists
    parisc: Show n/a if product number not available
    parisc: remove unused flags parameter in __patch_text()
    doc: update kprobes supported architecture list
    parisc: Implement kretprobes
    parisc: remove kprobes.h from generic-y
    parisc: Implement kprobes
    parisc: add functions required by KPROBE_EVENTS
    ...

    Linus Torvalds
     

06 May, 2019

1 commit


04 May, 2019

2 commits


07 Jan, 2019

1 commit

  • core/ cBPF-JIT : TODO |
    core/ eBPF-JIT : TODO |
    core/ generic-idle-thread : ok |
    core/ jump-labels : TODO |
    core/ tracehook : ok |
    debug/ KASAN : TODO |
    debug/ gcov-profile-all : TODO |
    debug/ kgdb : TODO |
    debug/ kprobes-on-ftrace : TODO |
    debug/ kprobes : TODO |
    debug/ kretprobes : TODO |
    debug/ optprobes : TODO |
    debug/ stackprotector : TODO |
    debug/ uprobes : TODO |
    debug/ user-ret-profiler : TODO |
    io/ dma-contiguous : ok |
    locking/ cmpxchg-local : TODO |
    locking/ lockdep : TODO |
    locking/ queued-rwlocks : ok |
    locking/ queued-spinlocks : TODO |
    locking/ rwsem-optimized : TODO |
    perf/ kprobes-event : TODO |
    perf/ perf-regs : TODO |
    perf/ perf-stackdump : TODO |
    sched/ membarrier-sync-core : TODO |
    sched/ numa-balancing : .. |
    seccomp/ seccomp-filter : TODO |
    time/ arch-tick-broadcast : TODO |
    time/ clockevents : ok |
    time/ context-tracking : TODO |
    time/ irq-time-acct : TODO |
    time/ modern-timekeeping : ok |
    time/ virt-cpuacct : TODO |
    vm/ ELF-ASLR : TODO |
    vm/ PG_uncached : TODO |
    vm/ THP : .. |
    vm/ batch-unmap-tlb-flush: TODO |
    vm/ huge-vmap : TODO |
    vm/ ioremap_prot : TODO |
    vm/ numa-memblock : .. |
    vm/ pte_special : TODO |

    Signed-off-by: Guo Ren
    Cc: Arnd Bergmann

    Guo Ren
     

30 Dec, 2018

1 commit

  • Pull Xtensa updates from Max Filippov:

    - switch to generated syscall table

    - switch ptrace to regsets, use regsets for core dumps

    - complete tracehook implementation

    - add syscall tracepoints support

    - add jumplabels support

    - add memtest support

    - drop unused/duplicated code from entry.S, ptrace.c, coprocessor.S,
    elf.h and syscall.h

    - clean up warnings caused by WSR/RSR macros

    - clean up DTC warnings about SPI controller node names in xtfpga.dtsi

    - simplify coprocessor.S

    - get rid of explicit 'l32r' instruction usage in assembly

    * tag 'xtensa-20181228' of git://github.com/jcmvbkbc/linux-xtensa: (25 commits)
    xtensa: implement jump_label support
    xtensa: implement syscall tracepoints
    xtensa: implement tracehook functions and enable HAVE_ARCH_TRACEHOOK
    xtensa: enable CORE_DUMP_USE_REGSET
    xtensa: implement TIE regset
    xtensa: implement task_user_regset_view
    xtensa: call do_syscall_trace_{enter,leave} selectively
    xtensa: use NO_SYSCALL instead of -1
    xtensa: define syscall_get_arch()
    Move EM_XTENSA to uapi/linux/elf-em.h
    xtensa: support memtest
    xtensa: don't use l32r opcode directly
    xtensa: xtfpga.dtsi: fix dtc warnings about SPI
    xtensa: don't clear cpenable unconditionally on release
    xtensa: simplify coprocessor.S
    xtensa: clean up WSR*/RSR*/get_sr/set_sr
    xtensa: drop unused declarations from elf.h
    xtensa: clean up syscall.h
    xtensa: drop unused coprocessor helper functions
    xtensa: drop custom PTRACE_{PEEK,POKE}{TEXT,DATA}
    ...

    Linus Torvalds
     

29 Dec, 2018

1 commit

  • Pull DMA mapping updates from Christoph Hellwig:
    "A huge update this time, but a lot of that is just consolidating or
    removing code:

    - provide a common DMA_MAPPING_ERROR definition and avoid indirect
    calls for dma_map_* error checking

    - use direct calls for the DMA direct mapping case, avoiding huge
    retpoline overhead for high performance workloads

    - merge the swiotlb dma_map_ops into dma-direct

    - provide a generic remapping DMA consistent allocator for
    architectures that have devices that perform DMA that is not cache
    coherent. Based on the existing arm64 implementation and also used
    for csky now.

    - improve the dma-debug infrastructure, including dynamic allocation
    of entries (Robin Murphy)

    - default to providing chaining scatterlist everywhere, with opt-outs
    for the few architectures (alpha, parisc, most arm32 variants) that
    can't cope with it

    - misc sparc32 dma-related cleanups

    - remove the dma_mark_clean arch hook used by swiotlb on ia64 and
    replace it with the generic noncoherent infrastructure

    - fix the return type of dma_set_max_seg_size (Niklas Söderlund)

    - move the dummy dma ops for not DMA capable devices from arm64 to
    common code (Robin Murphy)

    - ensure dma_alloc_coherent returns zeroed memory to avoid kernel
    data leaks through userspace. We already did this for most common
    architectures, but this ensures we do it everywhere.
    dma_zalloc_coherent has been deprecated and can hopefully be
    removed after -rc1 with a coccinelle script"

    * tag 'dma-mapping-4.21' of git://git.infradead.org/users/hch/dma-mapping: (73 commits)
    dma-mapping: fix inverted logic in dma_supported
    dma-mapping: deprecate dma_zalloc_coherent
    dma-mapping: zero memory returned from dma_alloc_*
    sparc/iommu: fix ->map_sg return value
    sparc/io-unit: fix ->map_sg return value
    arm64: default to the direct mapping in get_arch_dma_ops
    PCI: Remove unused attr variable in pci_dma_configure
    ia64: only select ARCH_HAS_DMA_COHERENT_TO_PFN if swiotlb is enabled
    dma-mapping: bypass indirect calls for dma-direct
    vmd: use the proper dma_* APIs instead of direct methods calls
    dma-direct: merge swiotlb_dma_ops into the dma_direct code
    dma-direct: use dma_direct_map_page to implement dma_direct_map_sg
    dma-direct: improve addressability error reporting
    swiotlb: remove dma_mark_clean
    swiotlb: remove SWIOTLB_MAP_ERROR
    ACPI / scan: Refactor _CCA enforcement
    dma-mapping: factor out dummy DMA ops
    dma-mapping: always build the direct mapping code
    dma-mapping: move dma_cache_sync out of line
    dma-mapping: move various slow path functions out of line
    ...

    Linus Torvalds