1. 26 Apr, 2021 18 commits
    • Linus Torvalds's avatar
      Merge tag 'irq-core-2021-04-26' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 91552ab8
      Linus Torvalds authored
      Pull irq updates from Thomas Gleixner:
       "The usual updates from the irq departement:
      
        Core changes:
      
         - Provide IRQF_NO_AUTOEN as a flag for request*_irq() so drivers can
           be cleaned up which either use a seperate mechanism to prevent
           auto-enable at request time or have a racy mechanism which disables
           the interrupt right after request.
      
         - Get rid of the last usage of irq_create_identity_mapping() and
           remove the interface.
      
         - An overhaul of tasklet_disable().
      
           Most usage sites of tasklet_disable() are in task context and
           usually in cleanup, teardown code pathes. tasklet_disable()
           spinwaits for a tasklet which is currently executed. That's not
           only a problem for PREEMPT_RT where this can lead to a live lock
           when the disabling task preempts the softirq thread. It's also
           problematic in context of virtualization when the vCPU which runs
           the tasklet is scheduled out and the disabling code has to spin
           wait until it's scheduled back in.
      
           There are a few code pathes which invoke tasklet_disable() from
           non-sleepable context. For these a new disable variant which still
           spinwaits is provided which allows to switch tasklet_disable() to a
           sleep wait mechanism. For the atomic use cases this does not solve
           the live lock issue on PREEMPT_RT. That is mitigated by blocking on
           the RT specific softirq lock.
      
         - The PREEMPT_RT specific implementation of softirq processing and
           local_bh_disable/enable().
      
           On RT enabled kernels soft interrupt processing happens always in
           task context and all interrupt handlers, which are not explicitly
           marked to be invoked in hard interrupt context are forced into task
           context as well. This allows to protect against softirq processing
           with a per CPU lock, which in turn allows to make BH disabled
           regions preemptible.
      
           Most of the softirq handling code is still shared. The RT/non-RT
           specific differences are addressed with a set of inline functions
           which provide the context specific functionality. The
           local_bh_disable() / local_bh_enable() mechanism are obviously
           seperate.
      
         - The usual set of small improvements and cleanups
      
        Driver changes:
      
         - New drivers for Nuvoton WPCM450 and DT 79rc3243x interrupt
           controllers
      
         - Extended functionality for MStar, STM32 and SC7280 irq chips
      
         - Enhanced robustness for ARM GICv3/4.1 drivers
      
         - The usual set of cleanups and improvements all over the place"
      
      * tag 'irq-core-2021-04-26' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (53 commits)
        irqchip/xilinx: Expose Kconfig option for Zynq/ZynqMP
        irqchip/gic-v3: Do not enable irqs when handling spurious interrups
        dt-bindings: interrupt-controller: Add IDT 79RC3243x Interrupt Controller
        irqchip: Add support for IDT 79rc3243x interrupt controller
        irqdomain: Drop references to recusive irqdomain setup
        irqdomain: Get rid of irq_create_strict_mappings()
        irqchip/jcore-aic: Kill use of irq_create_strict_mappings()
        ARM: PXA: Kill use of irq_create_strict_mappings()
        irqchip/gic-v4.1: Disable vSGI upon (GIC CPUIF < v4.1) detection
        irqchip/tb10x: Use 'fallthrough' to eliminate a warning
        genirq: Reduce irqdebug cacheline bouncing
        kernel: Initialize cpumask before parsing
        irqchip/wpcm450: Drop COMPILE_TEST
        irqchip/irq-mst: Support polarity configuration
        irqchip: Add driver for WPCM450 interrupt controller
        dt-bindings: interrupt-controller: Add nuvoton, wpcm450-aic
        dt-bindings: qcom,pdc: Add compatible for sc7280
        irqchip/stm32: Add usart instances exti direct event support
        irqchip/gic-v3: Fix OF_BAD_ADDR error handling
        irqchip/sifive-plic: Mark two global variables __ro_after_init
        ...
      91552ab8
    • Linus Torvalds's avatar
      Merge tag 'core-entry-2021-04-26' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 3b671bf4
      Linus Torvalds authored
      Pull core entry updates from Thomas Gleixner:
       "A trivial cleanup of typo fixes"
      
      * tag 'core-entry-2021-04-26' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        entry: Fix typos in comments
      3b671bf4
    • Linus Torvalds's avatar
      Merge tag 'x86_platform_for_v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 64a925c9
      Linus Torvalds authored
      Pull x86 platform updates from Borislav Petkov:
       "A bunch of SGI UV improvements, fixes and cleanups"
      
      * tag 'x86_platform_for_v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/platform/uv: Remove dead !CONFIG_KEXEC_CORE code
        x86/platform/uv: Fix !KEXEC build failure
        x86/platform/uv: Add more to secondary CPU kdump info
        x86/platform/uv: Use x2apic enabled bit as set by BIOS to indicate APIC mode
        x86/platform/uv: Set section block size for hubless architectures
        x86/platform/uv: Fix indentation warning in Documentation/ABI/testing/sysfs-firmware-sgi_uv
      64a925c9
    • Linus Torvalds's avatar
      Merge tag 'x86_build_for_v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · ca53fb2c
      Linus Torvalds authored
      Pull x86 build updates from Borislav Petkov:
       "A bunch of clang build fixes and a Kconfig highmem selection fix for
        486SX"
      
      * tag 'x86_build_for_v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/build: Disable HIGHMEM64G selection for M486SX
        efi/libstub: Add $(CLANG_FLAGS) to x86 flags
        x86/boot: Add $(CLANG_FLAGS) to compressed KBUILD_CFLAGS
        x86/build: Propagate $(CLANG_FLAGS) to $(REALMODE_FLAGS)
      ca53fb2c
    • Linus Torvalds's avatar
      Merge tag 'x86_cleanups_for_v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · ea5bc7b9
      Linus Torvalds authored
      Pull misc x86 cleanups from Borislav Petkov:
       "Trivial cleanups and fixes all over the place"
      
      * tag 'x86_cleanups_for_v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        MAINTAINERS: Remove me from IDE/ATAPI section
        x86/pat: Do not compile stubbed functions when X86_PAT is off
        x86/asm: Ensure asm/proto.h can be included stand-alone
        x86/platform/intel/quark: Fix incorrect kernel-doc comment syntax in files
        x86/msr: Make locally used functions static
        x86/cacheinfo: Remove unneeded dead-store initialization
        x86/process/64: Move cpu_current_top_of_stack out of TSS
        tools/turbostat: Unmark non-kernel-doc comment
        x86/syscalls: Fix -Wmissing-prototypes warnings from COND_SYSCALL()
        x86/fpu/math-emu: Fix function cast warning
        x86/msr: Fix wr/rdmsr_safe_regs_on_cpu() prototypes
        x86: Fix various typos in comments, take #2
        x86: Remove unusual Unicode characters from comments
        x86/kaslr: Return boolean values from a function returning bool
        x86: Fix various typos in comments
        x86/setup: Remove unused RESERVE_BRK_ARRAY()
        stacktrace: Move documentation for arch_stack_walk_reliable() to header
        x86: Remove duplicate TSC DEADLINE MSR definitions
      ea5bc7b9
    • Linus Torvalds's avatar
      Merge tag 'x86_boot_for_v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 90e66ce9
      Linus Torvalds authored
      Pull x86 boot updates from Borislav Petkov:
       "Consolidation and cleanup of the early memory reservations, along with
        a couple of gcc11 warning fixes"
      
      * tag 'x86_boot_for_v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/setup: Move trim_snb_memory() later in setup_arch() to fix boot hangs
        x86/setup: Merge several reservations of start of memory
        x86/setup: Consolidate early memory reservations
        x86/boot/compressed: Avoid gcc-11 -Wstringop-overread warning
        x86/boot/tboot: Avoid Wstringop-overread-warning
      90e66ce9
    • Linus Torvalds's avatar
      Merge tag 'x86_sgx_for_v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 81a48979
      Linus Torvalds authored
      Pull x86 SGX updates from Borislav Petkov:
       "Add the guest side of SGX support in KVM guests. Work by Sean
        Christopherson, Kai Huang and Jarkko Sakkinen.
      
        Along with the usual fixes, cleanups and improvements"
      
      * tag 'x86_sgx_for_v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (21 commits)
        x86/sgx: Mark sgx_vepc_vm_ops static
        x86/sgx: Do not update sgx_nr_free_pages in sgx_setup_epc_section()
        x86/sgx: Move provisioning device creation out of SGX driver
        x86/sgx: Add helpers to expose ECREATE and EINIT to KVM
        x86/sgx: Add helper to update SGX_LEPUBKEYHASHn MSRs
        x86/sgx: Add encls_faulted() helper
        x86/sgx: Add SGX2 ENCLS leaf definitions (EAUG, EMODPR and EMODT)
        x86/sgx: Move ENCLS leaf definitions to sgx.h
        x86/sgx: Expose SGX architectural definitions to the kernel
        x86/sgx: Initialize virtual EPC driver even when SGX driver is disabled
        x86/cpu/intel: Allow SGX virtualization without Launch Control support
        x86/sgx: Introduce virtual EPC for use by KVM guests
        x86/sgx: Add SGX_CHILD_PRESENT hardware error code
        x86/sgx: Wipe out EREMOVE from sgx_free_epc_page()
        x86/cpufeatures: Add SGX1 and SGX2 sub-features
        x86/cpufeatures: Make SGX_LC feature bit depend on SGX bit
        x86/sgx: Remove unnecessary kmap() from sgx_ioc_enclave_init()
        selftests/sgx: Use getauxval() to simplify test code
        selftests/sgx: Improve error detection and messages
        x86/sgx: Add a basic NUMA allocation scheme to sgx_alloc_epc_page()
        ...
      81a48979
    • Linus Torvalds's avatar
      Merge tag 'x86_vmware_for_v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 47e12f14
      Linus Torvalds authored
      Pull x86 vmware guest update from Borislav Petkov:
       "Have vmware guests skip the refined TSC calibration when the TSC
        frequency has been retrieved from the hypervisor"
      
      * tag 'x86_vmware_for_v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/vmware: Avoid TSC recalibration when frequency is known
      47e12f14
    • Linus Torvalds's avatar
      Merge tag 'x86_seves_for_v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 26a4ef7e
      Linus Torvalds authored
      Pull x86 AMD secure virtualization (SEV-ES) updates from Borislav Petkov:
       "Add support for SEV-ES guests booting through the 32-bit boot path,
        along with cleanups, fixes and improvements"
      
      * tag 'x86_seves_for_v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/sev-es: Optimize __sev_es_ist_enter() for better readability
        x86/sev-es: Replace open-coded hlt-loops with sev_es_terminate()
        x86/boot/compressed/64: Check SEV encryption in the 32-bit boot-path
        x86/boot/compressed/64: Add CPUID sanity check to 32-bit boot-path
        x86/boot/compressed/64: Add 32-bit boot #VC handler
        x86/boot/compressed/64: Setup IDT in startup_32 boot path
        x86/boot/compressed/64: Reload CS in startup_32
        x86/sev: Do not require Hypervisor CPUID bit for SEV guests
        x86/boot/compressed/64: Cleanup exception handling before booting kernel
        x86/virtio: Have SEV guests enforce restricted virtio memory access
        x86/sev-es: Remove subtraction of res variable
      26a4ef7e
    • Linus Torvalds's avatar
      Merge tag 'x86_misc_for_v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 98ee795b
      Linus Torvalds authored
      Pull x86 tool update from Borislav Petkov:
       "A new kcpuid tool to dump the raw CPUID leafs of a CPU.
      
        It has the CPUID bit definitions in a separate csv file which allows
        for adding support for new CPUID leafs and bits without having to
        update the tool.
      
        The main use case for the tool is hw enablement on preproduction x86
        hardware"
      
      * tag 'x86_misc_for_v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        tools/x86/kcpuid: Add AMD leaf 0x8000001E
        tools/x86/kcpuid: Check last token too
        selftests/x86: Add a missing .note.GNU-stack section to thunks_32.S
        tools/x86/kcpuid: Add AMD Secure Encryption leaf
        tools/x86: Add a kcpuid tool to show raw CPU features
      98ee795b
    • Linus Torvalds's avatar
      Merge tag 'x86_alternatives_for_v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 2c5ce2db
      Linus Torvalds authored
      Pull x86 alternatives/paravirt updates from Borislav Petkov:
       "First big cleanup to the paravirt infra to use alternatives and thus
        eliminate custom code patching.
      
        For that, the alternatives infrastructure is extended to accomodate
        paravirt's needs and, as a result, a lot of paravirt patching code
        goes away, leading to a sizeable cleanup and simplification.
      
        Work by Juergen Gross"
      
      * tag 'x86_alternatives_for_v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/paravirt: Have only one paravirt patch function
        x86/paravirt: Switch functions with custom code to ALTERNATIVE
        x86/paravirt: Add new PVOP_ALT* macros to support pvops in ALTERNATIVEs
        x86/paravirt: Switch iret pvops to ALTERNATIVE
        x86/paravirt: Simplify paravirt macros
        x86/paravirt: Remove no longer needed 32-bit pvops cruft
        x86/paravirt: Add new features for paravirt patching
        x86/alternative: Use ALTERNATIVE_TERNARY() in _static_cpu_has()
        x86/alternative: Support ALTERNATIVE_TERNARY
        x86/alternative: Support not-feature
        x86/paravirt: Switch time pvops functions to use static_call()
        static_call: Add function to query current function
        static_call: Move struct static_call_key definition to static_call_types.h
        x86/alternative: Merge include files
        x86/alternative: Drop unused feature parameter from ALTINSTR_REPLACEMENT()
      2c5ce2db
    • Linus Torvalds's avatar
      Merge tag 'ras_core_for_v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 2c532791
      Linus Torvalds authored
      Pull x86 RAS update from Borislav Petkov:
       "Provide the ability to specify the IPID (IP block associated with the
        MCE, AMD-specific) when injecting an MCE"
      
      * tag 'ras_core_for_v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/mce/inject: Add IPID for injection too
      2c532791
    • Linus Torvalds's avatar
      Merge tag 'x86_microcode_for_v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 41acc109
      Linus Torvalds authored
      Pull x86 microcode update from Borislav Petkov:
       "A single fix to the late microcode loading machinery which corrects
        the ordering of when new microcode is loaded from the fs, vs checking
        whether all CPUs are online"
      
      * tag 'x86_microcode_for_v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/microcode: Check for offline CPUs before requesting new microcode
      41acc109
    • Linus Torvalds's avatar
      Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 · a4a78bc8
      Linus Torvalds authored
      Pull crypto updates from Herbert Xu:
       "API:
      
         - crypto_destroy_tfm now ignores errors as well as NULL pointers
      
        Algorithms:
      
         - Add explicit curve IDs in ECDH algorithm names
      
         - Add NIST P384 curve parameters
      
         - Add ECDSA
      
        Drivers:
      
         - Add support for Green Sardine in ccp
      
         - Add ecdh/curve25519 to hisilicon/hpre
      
         - Add support for AM64 in sa2ul"
      
      * 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: (184 commits)
        fsverity: relax build time dependency on CRYPTO_SHA256
        fscrypt: relax Kconfig dependencies for crypto API algorithms
        crypto: camellia - drop duplicate "depends on CRYPTO"
        crypto: s5p-sss - consistently use local 'dev' variable in probe()
        crypto: s5p-sss - remove unneeded local variable initialization
        crypto: s5p-sss - simplify getting of_device_id match data
        ccp: ccp - add support for Green Sardine
        crypto: ccp - Make ccp_dev_suspend and ccp_dev_resume void functions
        crypto: octeontx2 - add support for OcteonTX2 98xx CPT block.
        crypto: chelsio/chcr - Remove useless MODULE_VERSION
        crypto: ux500/cryp - Remove duplicate argument
        crypto: chelsio - remove unused function
        crypto: sa2ul - Add support for AM64
        crypto: sa2ul - Support for per channel coherency
        dt-bindings: crypto: ti,sa2ul: Add new compatible for AM64
        crypto: hisilicon - enable new error types for QM
        crypto: hisilicon - add new error type for SEC
        crypto: hisilicon - support new error types for ZIP
        crypto: hisilicon - dynamic configuration 'err_info'
        crypto: doc - fix kernel-doc notation in chacha.c and af_alg.c
        ...
      a4a78bc8
    • Linus Torvalds's avatar
      Merge tag 'tomoyo-pr-20210426' of git://git.osdn.net/gitroot/tomoyo/tomoyo-test1 · ffc766b3
      Linus Torvalds authored
      Pull lockdep capacity limit updates from Tetsuo Handa:
       "syzbot is occasionally reporting that fuzz testing is terminated due
        to hitting upper limits lockdep can track.
      
        Analysis via /proc/lockdep* did not show any obvious culprits, allow
        tuning tracing capacity constants"
      
      * tag 'tomoyo-pr-20210426' of git://git.osdn.net/gitroot/tomoyo/tomoyo-test1:
        lockdep: Allow tuning tracing capacity constants.
      ffc766b3
    • Linus Torvalds's avatar
      Merge tag 'keys-cve-2020-26541-v3' of... · b0e22b47
      Linus Torvalds authored
      Merge tag 'keys-cve-2020-26541-v3' of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs
      
      Pull x509 dbx/mokx UEFI support from David Howells:
       "Here's a set of patches from Eric Snowberg[1] that add support for
        EFI_CERT_X509_GUID entries in the dbx and mokx UEFI tables (such
        entries cause matching certificates to be rejected).
      
        These are currently ignored and only the hash entries are made use of.
      
        Additionally Eric included his patches to allow such certificates to
        be preloaded.
      
        These patches deal with CVE-2020-26541.
      
        To quote Eric:
             'This is the fifth patch series for adding support for
              EFI_CERT_X509_GUID entries [2]. It has been expanded to not only
              include dbx entries but also entries in the mokx. Additionally
              my series to preload these certificate [3] has also been
              included'"
      
      Link: https://lore.kernel.org/r/20210122181054.32635-1-eric.snowberg@oracle.com [1]
      Link: https://patchwork.kernel.org/project/linux-security-module/patch/20200916004927.64276-1-eric.snowberg@oracle.com/ [2]
      Link: https://lore.kernel.org/patchwork/cover/1315485/ [3]
      
      * tag 'keys-cve-2020-26541-v3' of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs:
        integrity: Load mokx variables into the blacklist keyring
        certs: Add ability to preload revocation certs
        certs: Move load_system_certificate_list to a common function
        certs: Add EFI_CERT_X509_GUID support for dbx entries
      b0e22b47
    • Linus Torvalds's avatar
      Merge tag 'queue' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/tpmdd · 87f27e7b
      Linus Torvalds authored
      Pull tpm fixes from James Bottomley:
       "Fix a regression in the TPM trusted keys caused by the generic rework
        to add ARM TEE based trusted keys.
      
        Without this fix, the TPM trusted key subsystem fails to add or load
        any keys"
      
      * tag 'queue' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/tpmdd:
        KEYS: trusted: fix TPM trusted keys for generic framework
      87f27e7b
    • Linus Torvalds's avatar
      Merge tag 'tpmdd-next-v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/jarkko/linux-tpmdd · 7dd1ce1a
      Linus Torvalds authored
      Pull tpm updates from Jarkko Sakkinen:
       "New features:
      
         - ARM TEE backend for kernel trusted keys to complete the existing
           TPM backend
      
         - ASN.1 format for TPM2 trusted keys to make them interact with the
           user space stack, such as OpenConnect VPN
      
        Other than that, a bunch of bug fixes"
      
      * tag 'tpmdd-next-v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/jarkko/linux-tpmdd:
        KEYS: trusted: Fix missing null return from kzalloc call
        char: tpm: fix error return code in tpm_cr50_i2c_tis_recv()
        MAINTAINERS: Add entry for TEE based Trusted Keys
        doc: trusted-encrypted: updates with TEE as a new trust source
        KEYS: trusted: Introduce TEE based Trusted Keys
        KEYS: trusted: Add generic trusted keys framework
        security: keys: trusted: Make sealed key properly interoperable
        security: keys: trusted: use ASN.1 TPM2 key format for the blobs
        security: keys: trusted: fix TPM2 authorizations
        oid_registry: Add TCG defined OIDS for TPM keys
        lib: Add ASN.1 encoder
        tpm: vtpm_proxy: Avoid reading host log when using a virtual device
        tpm: acpi: Check eventlog signature before using it
        tpm: efi: Use local variable for calculating final log size
      7dd1ce1a
  2. 25 Apr, 2021 6 commits
  3. 24 Apr, 2021 5 commits
  4. 23 Apr, 2021 11 commits