1. 14 Dec, 2020 15 commits
    • Linus Torvalds's avatar
      Merge tag 'x86_sgx_for_v5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 5583ff67
      Linus Torvalds authored
      Pull x86 SGC support from Borislav Petkov:
       "Intel Software Guard eXtensions enablement. This has been long in the
        making, we were one revision number short of 42. :)
      
        Intel SGX is new hardware functionality that can be used by
        applications to populate protected regions of user code and data
        called enclaves. Once activated, the new hardware protects enclave
        code and data from outside access and modification.
      
        Enclaves provide a place to store secrets and process data with those
        secrets. SGX has been used, for example, to decrypt video without
        exposing the decryption keys to nosy debuggers that might be used to
        subvert DRM. Software has generally been rewritten specifically to run
        in enclaves, but there are also projects that try to run limited
        unmodified software in enclaves.
      
        Most of the functionality is concentrated into arch/x86/kernel/cpu/sgx/
        except the addition of a new mprotect() hook to control enclave page
        permissions and support for vDSO exceptions fixup which will is used
        by SGX enclaves.
      
        All this work by Sean Christopherson, Jarkko Sakkinen and many others"
      
      * tag 'x86_sgx_for_v5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (30 commits)
        x86/sgx: Return -EINVAL on a zero length buffer in sgx_ioc_enclave_add_pages()
        x86/sgx: Fix a typo in kernel-doc markup
        x86/sgx: Fix sgx_ioc_enclave_provision() kernel-doc comment
        x86/sgx: Return -ERESTARTSYS in sgx_ioc_enclave_add_pages()
        selftests/sgx: Use a statically generated 3072-bit RSA key
        x86/sgx: Clarify 'laundry_list' locking
        x86/sgx: Update MAINTAINERS
        Documentation/x86: Document SGX kernel architecture
        x86/sgx: Add ptrace() support for the SGX driver
        x86/sgx: Add a page reclaimer
        selftests/x86: Add a selftest for SGX
        x86/vdso: Implement a vDSO for Intel SGX enclave call
        x86/traps: Attempt to fixup exceptions in vDSO before signaling
        x86/fault: Add a helper function to sanitize error code
        x86/vdso: Add support for exception fixup in vDSO functions
        x86/sgx: Add SGX_IOC_ENCLAVE_PROVISION
        x86/sgx: Add SGX_IOC_ENCLAVE_INIT
        x86/sgx: Add SGX_IOC_ENCLAVE_ADD_PAGES
        x86/sgx: Add SGX_IOC_ENCLAVE_CREATE
        x86/sgx: Add an SGX misc driver interface
        ...
      5583ff67
    • Linus Torvalds's avatar
      Merge tag 'x86_microcode_update_for_v5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 85fe40ca
      Linus Torvalds authored
      Pull x86 microcode loader update from Borislav Petkov:
       "This one wins the award for most boring pull request ever. But that's
        a good thing - this is how I like 'em and the microcode loader
        *should* be boring. :-)
      
        A single cleanup removing "break" after a return statement (Tom Rix)"
      
      * tag 'x86_microcode_update_for_v5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/microcode/amd: Remove unneeded break
      85fe40ca
    • Linus Torvalds's avatar
      Merge tag 'ras_updates_for_v5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 2b34233c
      Linus Torvalds authored
      Pull x86 RAS updates from Borislav Petkov:
      
       - Enable additional logging mode on older Xeons (Tony Luck)
      
       - Pass error records logged by firmware through the MCE decoding chain
         to provide human-readable error descriptions instead of raw values
         (Smita Koralahalli)
      
       - Some #MC handler fixes (Gabriele Paoloni)
      
       - The usual small fixes and cleanups all over.
      
      * tag 'ras_updates_for_v5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/mce: Rename kill_it to kill_current_task
        x86/mce: Remove redundant call to irq_work_queue()
        x86/mce: Panic for LMCE only if mca_cfg.tolerant < 3
        x86/mce: Move the mce_panic() call and 'kill_it' assignments to the right places
        x86/mce, cper: Pass x86 CPER through the MCA handling chain
        x86/mce: Use "safe" MSR functions when enabling additional error logging
        x86/mce: Correct the detection of invalid notifier priorities
        x86/mce: Assign boolean values to a bool variable
        x86/mce: Enable additional error logging on certain Intel CPUs
        x86/mce: Remove unneeded break
      2b34233c
    • Linus Torvalds's avatar
      Merge tag 'edac_updates_for_v5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/ras/ras · 9e7f2588
      Linus Torvalds authored
      Pull EDAC updates from Borislav Petkov:
       "Somewhat busier than usual this cycle:
      
         - Add support for AST2400 and AST2600 hw to aspeed_edac (Troy Lee)
      
         - Remove an orphaned mv64x60_edac driver. Good riddance (Michael
           Ellerman)
      
         - Add a new igen6 driver for Intel client SoCs with an integrated
           memory controller and using in-band ECC (Qiuxu Zhuo and Tony Luck)
      
         - The usual smattering of fixes and cleanups all over"
      
      * tag 'edac_updates_for_v5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/ras/ras:
        EDAC/mv64x60: Remove orphan mv64x60 driver
        EDAC/aspeed: Add support for AST2400 and AST2600
        ARM: dts: aspeed: Add AST2600 EDAC into common devicetree
        dt-bindings: edac: aspeed-sdram-edac: Add ast2400/ast2600 support
        EDAC/amd64: Fix PCI component registration
        EDAC/igen6: ecclog_llist can be static
        EDAC/i10nm: Add Intel Sapphire Rapids server support
        EDAC: Add DDR5 new memory type
        EDAC/i10nm: Use readl() to access MMIO registers
        MAINTAINERS: Add entry for Intel IGEN6 EDAC driver
        EDAC/igen6: Add debugfs interface for Intel client SoC EDAC driver
        EDAC/igen6: Add EDAC driver for Intel client SoCs using IBECC
        EDAC/synopsys: Return the correct value in mc_probe()
        MAINTAINERS: Clean up the F: entries for some EDAC drivers
        EDAC: Add three new memory types
        EDAC: Fix some kernel-doc markups
        EDAC: Do not issue useless debug statements in the polling routine
        EDAC/amd64: Remove unneeded breaks
      9e7f2588
    • Linus Torvalds's avatar
      Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 · 9e4b0d55
      Linus Torvalds authored
      Pull crypto updates from Herbert Xu:
       "API:
         - Add speed testing on 1420-byte blocks for networking
      
        Algorithms:
         - Improve performance of chacha on ARM for network packets
         - Improve performance of aegis128 on ARM for network packets
      
        Drivers:
         - Add support for Keem Bay OCS AES/SM4
         - Add support for QAT 4xxx devices
         - Enable crypto-engine retry mechanism in caam
         - Enable support for crypto engine on sdm845 in qce
         - Add HiSilicon PRNG driver support"
      
      * 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: (161 commits)
        crypto: qat - add capability detection logic in qat_4xxx
        crypto: qat - add AES-XTS support for QAT GEN4 devices
        crypto: qat - add AES-CTR support for QAT GEN4 devices
        crypto: atmel-i2c - select CONFIG_BITREVERSE
        crypto: hisilicon/trng - replace atomic_add_return()
        crypto: keembay - Add support for Keem Bay OCS AES/SM4
        dt-bindings: Add Keem Bay OCS AES bindings
        crypto: aegis128 - avoid spurious references crypto_aegis128_update_simd
        crypto: seed - remove trailing semicolon in macro definition
        crypto: x86/poly1305 - Use TEST %reg,%reg instead of CMP $0,%reg
        crypto: x86/sha512 - Use TEST %reg,%reg instead of CMP $0,%reg
        crypto: aesni - Use TEST %reg,%reg instead of CMP $0,%reg
        crypto: cpt - Fix sparse warnings in cptpf
        hwrng: ks-sa - Add dependency on IOMEM and OF
        crypto: lib/blake2s - Move selftest prototype into header file
        crypto: arm/aes-ce - work around Cortex-A57/A72 silion errata
        crypto: ecdh - avoid unaligned accesses in ecdh_set_secret()
        crypto: ccree - rework cache parameters handling
        crypto: cavium - Use dma_set_mask_and_coherent to simplify code
        crypto: marvell/octeontx - Use dma_set_mask_and_coherent to simplify code
        ...
      9e4b0d55
    • Linus Torvalds's avatar
      Merge tag 'fsverity-for-linus' of git://git.kernel.org/pub/scm/fs/fscrypt/fscrypt · 51895d58
      Linus Torvalds authored
      Pull fsverity updates from Eric Biggers:
       "Some cleanups for fs-verity:
      
         - Rename some names that have been causing confusion
      
         - Move structs needed for file signing to the UAPI header"
      
      * tag 'fsverity-for-linus' of git://git.kernel.org/pub/scm/fs/fscrypt/fscrypt:
        fs-verity: move structs needed for file signing to UAPI header
        fs-verity: rename "file measurement" to "file digest"
        fs-verity: rename fsverity_signed_digest to fsverity_formatted_digest
        fs-verity: remove filenames from file comments
      51895d58
    • Linus Torvalds's avatar
      Merge tag 'fscrypt-for-linus' of git://git.kernel.org/pub/scm/fs/fscrypt/fscrypt · 7c7fdaf6
      Linus Torvalds authored
      Pull fscrypt updates from Eric Biggers:
       "This release there are some fixes for longstanding problems, as well
        as some cleanups:
      
         - Fix a race condition where a duplicate filename could be created in
           an encrypted directory if a syscall that creates a new filename
           raced with the directory's encryption key being added.
      
         - Allow deleting files that use an unsupported encryption policy.
      
         - Simplify the locking for 'struct fscrypt_master_key'.
      
         - Remove kernel-internal constants from the UAPI header.
      
        As usual, all these patches have been in linux-next with no reported
        issues, and I've tested them with xfstests"
      
      * tag 'fscrypt-for-linus' of git://git.kernel.org/pub/scm/fs/fscrypt/fscrypt:
        fscrypt: allow deleting files with unsupported encryption policy
        fscrypt: unexport fscrypt_get_encryption_info()
        fscrypt: move fscrypt_require_key() to fscrypt_private.h
        fscrypt: move body of fscrypt_prepare_setattr() out-of-line
        fscrypt: introduce fscrypt_prepare_readdir()
        ext4: don't call fscrypt_get_encryption_info() from dx_show_leaf()
        ubifs: remove ubifs_dir_open()
        f2fs: remove f2fs_dir_open()
        ext4: remove ext4_dir_open()
        fscrypt: simplify master key locking
        fscrypt: remove unnecessary calls to fscrypt_require_key()
        ubifs: prevent creating duplicate encrypted filenames
        f2fs: prevent creating duplicate encrypted filenames
        ext4: prevent creating duplicate encrypted filenames
        fscrypt: add fscrypt_is_nokey_name()
        fscrypt: remove kernel-internal constants from UAPI header
      7c7fdaf6
    • Linus Torvalds's avatar
      Merge tag 'tomoyo-pr-20201214' of git://git.osdn.net/gitroot/tomoyo/tomoyo-test1 · da062855
      Linus Torvalds authored
      Pull tomoyo updates from Tetsuo Handa:
       "Limit recursion depth, fix clang warning, fix comment typo, and
        silence memory allocation failure warning"
      
      * tag 'tomoyo-pr-20201214' of git://git.osdn.net/gitroot/tomoyo/tomoyo-test1:
        tomoyo: Fix typo in comments.
        tomoyo: Fix null pointer check
        tomoyo: Limit wildcard recursion depth.
        tomoyo: fix clang pointer arithmetic warning
        tomoyo: Loosen pathname/domainname validation.
      da062855
    • Linus Torvalds's avatar
      Merge tag 'media/v5.11-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media · fab0fca1
      Linus Torvalds authored
      Pull media updates from Mauro Carvalho Chehab:
      
       - some rework at the uAPI pixel format docs
      
       - the smiapp driver has started to gain support for MIPI CSS camera
         sensors and was renamed
      
       - two new sensor drivers: ov02a10 and ov9734
      
       - Meson gained a driver for the 2D acceleration unit
      
       - Rockchip rkisp1 driver was promoted from staging
      
       - Cedrus driver gained support for VP8
      
       - two new remote controller keymaps were added
      
       - the usual set of fixes cleanups and driver improvements
      
      * tag 'media/v5.11-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (447 commits)
        media: ccs: Add support for obtaining C-PHY configuration from firmware
        media: ccs-pll: Print pixel rates
        media: ccs: Print written register values
        media: ccs: Add support for DDR OP SYS and OP PIX clocks
        media: ccs-pll: Add support for DDR OP system and pixel clocks
        media: ccs: Dual PLL support
        media: ccs-pll: Add trivial dual PLL support
        media: ccs-pll: Separate VT divisor limit calculation from the rest
        media: ccs-pll: Fix VT post-PLL divisor calculation
        media: ccs-pll: Make VT divisors 16-bit
        media: ccs-pll: Rework bounds checks
        media: ccs-pll: Print relevant information on PLL tree
        media: ccs-pll: Better separate OP and VT sub-tree calculation
        media: ccs-pll: Check for derating and overrating, support non-derating sensors
        media: ccs-pll: Split off VT subtree calculation
        media: ccs-pll: Add C-PHY support
        media: ccs-pll: Add sanity checks
        media: ccs-pll: Add support flexible OP PLL pixel clock divider
        media: ccs-pll: Support two cycles per pixel on OP domain
        media: ccs-pll: Add support for extended input PLL clock divider
        ...
      fab0fca1
    • Linus Torvalds's avatar
      Merge tag 'for-5.11/revert-problem-v5.10-raid-changes' of... · ae1985b5
      Linus Torvalds authored
      Merge tag 'for-5.11/revert-problem-v5.10-raid-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm
      
      Pull MD regression reverts from Mike Snitzer:
       "A cascade of MD reverts occurred late in the v5.10-rcX cycle due to MD
        raid10 discard optimizations having introduced potential for
        corruption.
      
        Those reverts exposed a dm-raid.c compiler warning that wasn't ever
        knowingly introduced. That min_not_zero() type mismatch warning was
        thought to be safely fixed simply by changing 'struct mddev' to use
        'unsigned int' rather than int for chunk_sectors members in that
        struct.
      
        I proposed either using a cast local to dm-raid.c but thought changing
        the type to 'unsigned int' more correct. While that may be, not enough
        testing was paired with code review associated with making that
        change. As such we were left exposed and the result was a report that
        with v5.10 btrfs on MD RAID6 failed to mount:
      
          https://lkml.org/lkml/2020/12/14/7
      
        Given that report, it is justified to simply revert these offending
        commits. stable@ has already taken steps to revert these for 5.10.1 -
        this just makes sure mainline does so too"
      
      * tag 'for-5.11/revert-problem-v5.10-raid-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm:
        Revert "dm raid: fix discard limits for raid1 and raid10"
        Revert "md: change mddev 'chunk_sectors' from int to unsigned"
      ae1985b5
    • Linus Torvalds's avatar
      Merge tag 'auxdisplay-for-linus-v5.11' of git://github.com/ojeda/linux · bcc68bd8
      Linus Torvalds authored
      Pull auxdisplay updates from Miguel Ojeda:
       "A bigger set of changes than usual for auxdisplay. There have been
        quite a few changes in auxdisplay thanks to a refactor by Lars
        Poeschel to share code in order to introduce a new driver.
      
        Summary:
      
         - Significant refactor work to make charlcd independent of device,
           i.e. hd44780 (Lars Poeschel)
      
         - New driver: lcd2s (Lars Poeschel)
      
         - Fixes on top of the rework while being tested in -next (Lars
           Poeschel, Dan Carpenter and kernel test robot)"
      
      * tag 'auxdisplay-for-linus-v5.11' of git://github.com/ojeda/linux: (30 commits)
        auxdisplay: panel: Remove redundant charlcd_ops structures
        auxdisplay: panel: Fix missing print function pointer
        auxdisplay: fix platform_no_drv_owner.cocci warnings
        auxdisplay: fix use after free in lcd2s_i2c_remove()
        auxdisplay: hd44780_common: Fix build error
        auxdisplay: add a driver for lcd2s character display
        auxdisplay: lcd2s DT binding doc
        auxdisplay: charlcd: Do not print chars at end of line
        auxdisplay: Change gotoxy calling interface
        auxdisplay: charlcd: replace last device specific stuff
        auxdisplay: hd44780: Remove clear_fast
        auxdisplay: hd44780_common: Reduce clear_display timeout
        auxdisplay: Call charlcd_backlight in place
        auxdisplay: Move char redefine code to hd44780_common
        auxdisplay: cleanup unnecessary hd44780 code in charlcd
        auxdisplay: implement various hd44780_common_ functions
        auxdisplay: Move init_display to hd44780_common
        auxdisplay: Make use of enum for backlight on / off
        auxdisplay: make charlcd_backlight visible to hd44780_common
        auxdisplay: Move clear_display to hd44780_common
        ...
      bcc68bd8
    • Linus Torvalds's avatar
      Merge tag 'drm-next-2020-12-11' of git://anongit.freedesktop.org/drm/drm · 1d36dffa
      Linus Torvalds authored
      Pull drm updates from Dave Airlie:
       "Not a huge amount of big things here, AMD has support for a few new HW
        variants (vangogh, green sardine, dimgrey cavefish), Intel has some
        more DG1 enablement. We have a few big reworks of the TTM layers and
        interfaces, GEM and atomic internal API reworks cross tree. fbdev is
        marked orphaned in here as well to reflect the current reality.
      
        core:
         - documentation updates
         - deprecate DRM_FORMAT_MOD_NONE
         - atomic crtc enable/disable rework
         - GEM convert drivers to gem object functions
         - remove SCATTER_LIST_MAX_SEGMENT
      
        sched:
         - avoid infinite waits
      
        ttm:
         - remove AGP support
         - don't modify caching for swapout
         - ttm pinning rework
         - major TTM reworks
         - new backend allocator
         - multihop support
      
        vram-helper:
         - top down BO placement fix
         - TTM changes
         - GEM object support
      
        displayport:
         - DP 2.0 DPCD prep work
         - DP MST extended DPCD caps
      
        fbdev:
         - mark as orphaned
      
        amdgpu:
         - Initial Vangogh support
         - Green Sardine support
         - Dimgrey Cavefish support
         - SG display support for renoir
         - SMU7 improvements
         - gfx9+ modiifier support
         - CI BACO fixes
      
        radeon:
         - expose voltage via hwmon on SUMO
      
        amdkfd:
         - fix unique id handling
      
        i915:
         - more DG1 enablement
         - bigjoiner support
         - integer scaling filter support
         - async flip support
         - ICL+ DSI command mode
         - Improve display shutdown
         - Display refactoring
         - eLLC machine fbdev loading fix
         - dma scatterlist fixes
         - TGL hang fixes
         - eLLC display buffer caching on SKL+
         - MOCS PTE seeting for gen9+
      
        msm:
         - Shutdown hook
         - GPU cooling device support
         - DSI 7nm and 10nm phy/pll updates
         - sm8150/sm2850 DPU support
         - GEM locking re-work
         - LLCC system cache support
      
        aspeed:
         - sysfs output config support
      
        ast:
         - LUT fix
         - new display mode
      
        gma500:
         - remove 2d framebuffer accel
      
        panfrost:
         - move gpu reset to a worker
      
        exynos:
         - new HDMI mode support
      
        mediatek:
         - MT8167 support
         - yaml bindings
         - MIPI DSI phy code moved
      
        etnaviv:
         - new perf counter
         - more lockdep annotation
      
        hibmc:
         - i2c DDC support
      
        ingenic:
         - pixel clock reset fix
         - reserved memory support
         - allow both DMA channels at once
         - different pixel format support
         - 30/24/8-bit palette modes
      
        tilcdc:
         - don't keep vblank irq enabled
      
        vc4:
         - new maintainer added
         - DSI registration fix
      
        virtio:
         - blob resource support
         - host visible and cross-device support
         - uuid api support"
      
      * tag 'drm-next-2020-12-11' of git://anongit.freedesktop.org/drm/drm: (1754 commits)
        drm/amdgpu: Initialise drm_gem_object_funcs for imported BOs
        drm/amdgpu: fix size calculation with stolen vga memory
        drm/amdgpu: remove amdgpu_ttm_late_init  and amdgpu_bo_late_init
        drm/amdgpu: free the pre-OS console framebuffer after the first modeset
        drm/amdgpu: enable runtime pm using BACO on CI dGPUs
        drm/amdgpu/cik: enable BACO reset on Bonaire
        drm/amd/pm: update smu10.h WORKLOAD_PPLIB setting for raven
        drm/amd/pm: remove one unsupported smu function for vangogh
        drm/amd/display: setup system context for APUs
        drm/amd/display: add S/G support for Vangogh
        drm/amdkfd: Fix leak in dmabuf import
        drm/amdgpu: use AMDGPU_NUM_VMID when possible
        drm/amdgpu: fix sdma instance fw version and feature version init
        drm/amd/pm: update driver if version for dimgrey_cavefish
        drm/amd/display: 3.2.115
        drm/amd/display: [FW Promotion] Release 0.0.45
        drm/amd/display: Revert DCN2.1 dram_clock_change_latency update
        drm/amd/display: Enable gpu_vm_support for dcn3.01
        drm/amd/display: Fixed the audio noise during mode switching with HDCP mode on
        drm/amd/display: Add wm table for Renoir
        ...
      1d36dffa
    • Mike Snitzer's avatar
      Revert "dm raid: fix discard limits for raid1 and raid10" · 0941e3b0
      Mike Snitzer authored
      This reverts commit e0910c8e.
      
      Reverting 6ffeb1c3 ("md: change mddev 'chunk_sectors' from int to
      unsigned") exposes dm-raid.c compiler warnings detailed that commit's
      header. Clearly this more conservative fix, of simply reverting
      e0910c8e, would've been more prudent given how late we were in the
      v5.10 release. Lessons have been learned.
      Signed-off-by: default avatarMike Snitzer <snitzer@redhat.com>
      0941e3b0
    • Mike Snitzer's avatar
      Revert "md: change mddev 'chunk_sectors' from int to unsigned" · 77a68698
      Mike Snitzer authored
      This reverts commit 6ffeb1c3.
      
      This change caused unexpected v5.10 raid6 mount failures, see:
      https://lkml.org/lkml/2020/12/14/7Signed-off-by: default avatarMike Snitzer <snitzer@redhat.com>
      77a68698
    • Borislav Petkov's avatar
  2. 13 Dec, 2020 3 commits
    • Linus Torvalds's avatar
      Linux 5.10 · 2c85ebc5
      Linus Torvalds authored
      2c85ebc5
    • Linus Torvalds's avatar
      Merge tag 'x86-urgent-2020-12-13' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · ec6f5e0e
      Linus Torvalds authored
      Pull x86 fixes from Thomas Gleixner:
       "A set of x86 and membarrier fixes:
      
         - Correct a few problems in the x86 and the generic membarrier
           implementation. Small corrections for assumptions about visibility
           which have turned out not to be true.
      
         - Make the PAT bits for memory encryption correct vs 4K and 2M/1G
           page table entries as they are at a different location.
      
         - Fix a concurrency issue in the the local bandwidth readout of
           resource control leading to incorrect values
      
         - Fix the ordering of allocating a vector for an interrupt. The order
           missed to respect the provided cpumask when the first attempt of
           allocating node local in the mask fails. It then tries the node
           instead of trying the full provided mask first. This leads to
           erroneous error messages and breaking the (user) supplied affinity
           request. Reorder it.
      
         - Make the INT3 padding detection in optprobe work correctly"
      
      * tag 'x86-urgent-2020-12-13' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/kprobes: Fix optprobe to detect INT3 padding correctly
        x86/apic/vector: Fix ordering in vector assignment
        x86/resctrl: Fix incorrect local bandwidth when mba_sc is enabled
        x86/mm/mem_encrypt: Fix definition of PMD_FLAGS_DEC_WP
        membarrier: Execute SYNC_CORE on the calling thread
        membarrier: Explicitly sync remote cores when SYNC_CORE is requested
        membarrier: Add an actual barrier before rseq_preempt()
        x86/membarrier: Get rid of a dubious optimization
      ec6f5e0e
    • Linus Torvalds's avatar
      Merge tag 'block-5.10-2020-12-12' of git://git.kernel.dk/linux-block · d2360a39
      Linus Torvalds authored
      Pull block fixes from Jens Axboe:
       "This should be it for 5.10.
      
        Mike and Song looked into the warning case, and thankfully it appears
        the fix was pretty trivial - we can just change the md device chunk
        type to unsigned int to get rid of it. They cannot currently be < 0,
        and nobody is checking for that either.
      
        We're reverting the discard changes as the corruption reports came in
        very late, and there's just no time to attempt to deal with it at this
        point. Reverting the changes in question is the right call for 5.10"
      
      * tag 'block-5.10-2020-12-12' of git://git.kernel.dk/linux-block:
        md: change mddev 'chunk_sectors' from int to unsigned
        Revert "md: add md_submit_discard_bio() for submitting discard bio"
        Revert "md/raid10: extend r10bio devs to raid disks"
        Revert "md/raid10: pull codes that wait for blocked dev into one function"
        Revert "md/raid10: improve raid10 discard request"
        Revert "md/raid10: improve discard request for far layout"
        Revert "dm raid: remove unnecessary discard limits for raid10"
      d2360a39
  3. 12 Dec, 2020 12 commits
  4. 11 Dec, 2020 10 commits
    • Linus Torvalds's avatar
      Merge tag 'mtd/fixes-for-5.10-rc8' of git://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux · 7f376f19
      Linus Torvalds authored
      Pull mtd fixes from Miquel Raynal:
       "Second series of fixes for raw NAND drivers initiated because of a
        rework of the ECC engine subsystem.
      
        The location of the DT parsing logic got moved, breaking several
        drivers which in fact were not doing the ECC engine initialization at
        the right place.
      
        These drivers have been fixed by enforcing a particular ECC engine
        type and algorithm, software Hamming, while the algorithm may be
        overwritten by a DT property. This merge request fixes this in the
        xway, socrates, plat_nand, pasemi, orion, mpc5121, gpio, au1550 and
        ams-delta controller drivers"
      
      * tag 'mtd/fixes-for-5.10-rc8' of git://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux:
        mtd: rawnand: xway: Do not force a particular software ECC engine
        mtd: rawnand: socrates: Do not force a particular software ECC engine
        mtd: rawnand: plat_nand: Do not force a particular software ECC engine
        mtd: rawnand: pasemi: Do not force a particular software ECC engine
        mtd: rawnand: orion: Do not force a particular software ECC engine
        mtd: rawnand: mpc5121: Do not force a particular software ECC engine
        mtd: rawnand: gpio: Do not force a particular software ECC engine
        mtd: rawnand: au1550: Do not force a particular software ECC engine
        mtd: rawnand: ams-delta: Do not force a particular software ECC engine
      7f376f19
    • Linus Torvalds's avatar
      Merge tag 'mmc-v5.10-rc4-2' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc · 1de5d12b
      Linus Torvalds authored
      Pull MMC fixes from Ulf Hansson:
       "A couple of MMC fixes:
      
        MMC core:
         - Fixup condition for CMD13 polling for RPMB requests
      
        MMC host:
         - mtk-sd: Fix system suspend/resume support for CQHCI
         - mtd-sd: Extend SDIO IRQ fix to more variants
         - sdhci-of-arasan: Fix clock registration error for Keem Bay SOC
         - tmio: Bring HW to a sane state after a power off"
      
      * tag 'mmc-v5.10-rc4-2' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc:
        mmc: mediatek: mark PM functions as __maybe_unused
        mmc: block: Fixup condition for CMD13 polling for RPMB requests
        mmc: tmio: improve bringing HW to a sane state with MMC_POWER_OFF
        mmc: sdhci-of-arasan: Fix clock registration error for Keem Bay SOC
        mmc: mediatek: Extend recheck_sdio_irq fix to more variants
        mmc: mediatek: Fix system suspend/resume support for CQHCI
      1de5d12b
    • Wolfram Sang's avatar
      Merge tag 'at24-fixes-for-v5.10' of... · e977aaf8
      Wolfram Sang authored
      Merge tag 'at24-fixes-for-v5.10' of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux into i2c/for-current
      
      at24 fixes for v5.10
      
      - fix NVMEM name with custom AT24 device name
      e977aaf8
    • Linus Torvalds's avatar
      Merge tag 'zonefs-5.10-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/dlemoal/zonefs · 782598ec
      Linus Torvalds authored
      Pull zonefs fix from Damien Le Moal:
       "A single patch in this pull request to fix a BIO and page reference
        leak when writing sequential zone files"
      
      * tag 'zonefs-5.10-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/dlemoal/zonefs:
        zonefs: fix page reference and BIO leak
      782598ec
    • Andrii Nakryiko's avatar
      bpf: Fix enum names for bpf_this_cpu_ptr() and bpf_per_cpu_ptr() helpers · b7906b70
      Andrii Nakryiko authored
      Remove bpf_ prefix, which causes these helpers to be reported in verifier
      dump as bpf_bpf_this_cpu_ptr() and bpf_bpf_per_cpu_ptr(), respectively. Lets
      fix it as long as it is still possible before UAPI freezes on these helpers.
      
      Fixes: eaa6bcb7 ("bpf: Introduce bpf_per_cpu_ptr()")
      Signed-off-by: default avatarAndrii Nakryiko <andrii@kernel.org>
      Signed-off-by: default avatarAlexei Starovoitov <ast@kernel.org>
      Signed-off-by: default avatarDaniel Borkmann <daniel@iogearbox.net>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      b7906b70
    • Linus Torvalds's avatar
      Merge branch 'akpm' (patches from Andrew) · a06caa4a
      Linus Torvalds authored
      Merge misc fixes from Andrew Morton:
       "8 patches.
      
        Subsystems affected by this patch series: proc, selftests, kbuild, and
        mm (pagecache, kasan, hugetlb)"
      
      * emailed patches from Andrew Morton <akpm@linux-foundation.org>:
        mm/hugetlb: clear compound_nr before freeing gigantic pages
        kasan: fix object remaining in offline per-cpu quarantine
        elfcore: fix building with clang
        initramfs: fix clang build failure
        kbuild: avoid static_assert for genksyms
        selftest/fpu: avoid clang warning
        proc: use untagged_addr() for pagemap_read addresses
        revert "mm/filemap: add static for function __add_to_page_cache_locked"
      a06caa4a
    • Gerald Schaefer's avatar
      mm/hugetlb: clear compound_nr before freeing gigantic pages · ba9c1201
      Gerald Schaefer authored
      Commit 1378a5ee ("mm: store compound_nr as well as compound_order")
      added compound_nr counter to first tail struct page, overlaying with
      page->mapping.  The overlay itself is fine, but while freeing gigantic
      hugepages via free_contig_range(), a "bad page" check will trigger for
      non-NULL page->mapping on the first tail page:
      
        BUG: Bad page state in process bash  pfn:380001
        page:00000000c35f0856 refcount:0 mapcount:0 mapping:00000000126b68aa index:0x0 pfn:0x380001
        aops:0x0
        flags: 0x3ffff00000000000()
        raw: 3ffff00000000000 0000000000000100 0000000000000122 0000000100000000
        raw: 0000000000000000 0000000000000000 ffffffff00000000 0000000000000000
        page dumped because: non-NULL mapping
        Modules linked in:
        CPU: 6 PID: 616 Comm: bash Not tainted 5.10.0-rc7-next-20201208 #1
        Hardware name: IBM 3906 M03 703 (LPAR)
        Call Trace:
          show_stack+0x6e/0xe8
          dump_stack+0x90/0xc8
          bad_page+0xd6/0x130
          free_pcppages_bulk+0x26a/0x800
          free_unref_page+0x6e/0x90
          free_contig_range+0x94/0xe8
          update_and_free_page+0x1c4/0x2c8
          free_pool_huge_page+0x11e/0x138
          set_max_huge_pages+0x228/0x300
          nr_hugepages_store_common+0xb8/0x130
          kernfs_fop_write+0xd2/0x218
          vfs_write+0xb0/0x2b8
          ksys_write+0xac/0xe0
          system_call+0xe6/0x288
        Disabling lock debugging due to kernel taint
      
      This is because only the compound_order is cleared in
      destroy_compound_gigantic_page(), and compound_nr is set to
      1U << order == 1 for order 0 in set_compound_order(page, 0).
      
      Fix this by explicitly clearing compound_nr for first tail page after
      calling set_compound_order(page, 0).
      
      Link: https://lkml.kernel.org/r/20201208182813.66391-2-gerald.schaefer@linux.ibm.com
      Fixes: 1378a5ee ("mm: store compound_nr as well as compound_order")
      Signed-off-by: default avatarGerald Schaefer <gerald.schaefer@linux.ibm.com>
      Reviewed-by: default avatarMatthew Wilcox (Oracle) <willy@infradead.org>
      Cc: Heiko Carstens <hca@linux.ibm.com>
      Cc: Mike Kravetz <mike.kravetz@oracle.com>
      Cc: Christian Borntraeger <borntraeger@de.ibm.com>
      Cc: <stable@vger.kernel.org>	[5.9+]
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      ba9c1201
    • Kuan-Ying Lee's avatar
      kasan: fix object remaining in offline per-cpu quarantine · 6c82d45c
      Kuan-Ying Lee authored
      We hit this issue in our internal test.  When enabling generic kasan, a
      kfree()'d object is put into per-cpu quarantine first.  If the cpu goes
      offline, object still remains in the per-cpu quarantine.  If we call
      kmem_cache_destroy() now, slub will report "Objects remaining" error.
      
        =============================================================================
        BUG test_module_slab (Not tainted): Objects remaining in test_module_slab on __kmem_cache_shutdown()
        -----------------------------------------------------------------------------
      
        Disabling lock debugging due to kernel taint
        INFO: Slab 0x(____ptrval____) objects=34 used=1 fp=0x(____ptrval____) flags=0x2ffff00000010200
        CPU: 3 PID: 176 Comm: cat Tainted: G    B             5.10.0-rc1-00007-g4525c878-dirty #10
        Hardware name: linux,dummy-virt (DT)
        Call trace:
           dump_backtrace+0x0/0x2b0
           show_stack+0x18/0x68
           dump_stack+0xfc/0x168
           slab_err+0xac/0xd4
           __kmem_cache_shutdown+0x1e4/0x3c8
           kmem_cache_destroy+0x68/0x130
           test_version_show+0x84/0xf0
           module_attr_show+0x40/0x60
           sysfs_kf_seq_show+0x128/0x1c0
           kernfs_seq_show+0xa0/0xb8
           seq_read+0x1f0/0x7e8
           kernfs_fop_read+0x70/0x338
           vfs_read+0xe4/0x250
           ksys_read+0xc8/0x180
           __arm64_sys_read+0x44/0x58
           el0_svc_common.constprop.0+0xac/0x228
           do_el0_svc+0x38/0xa0
           el0_sync_handler+0x170/0x178
           el0_sync+0x174/0x180
        INFO: Object 0x(____ptrval____) @offset=15848
        INFO: Allocated in test_version_show+0x98/0xf0 age=8188 cpu=6 pid=172
           stack_trace_save+0x9c/0xd0
           set_track+0x64/0xf0
           alloc_debug_processing+0x104/0x1a0
           ___slab_alloc+0x628/0x648
           __slab_alloc.isra.0+0x2c/0x58
           kmem_cache_alloc+0x560/0x588
           test_version_show+0x98/0xf0
           module_attr_show+0x40/0x60
           sysfs_kf_seq_show+0x128/0x1c0
           kernfs_seq_show+0xa0/0xb8
           seq_read+0x1f0/0x7e8
           kernfs_fop_read+0x70/0x338
           vfs_read+0xe4/0x250
           ksys_read+0xc8/0x180
           __arm64_sys_read+0x44/0x58
           el0_svc_common.constprop.0+0xac/0x228
        kmem_cache_destroy test_module_slab: Slab cache still has objects
      
      Register a cpu hotplug function to remove all objects in the offline
      per-cpu quarantine when cpu is going offline.  Set a per-cpu variable to
      indicate this cpu is offline.
      
      [qiang.zhang@windriver.com: fix slab double free when cpu-hotplug]
        Link: https://lkml.kernel.org/r/20201204102206.20237-1-qiang.zhang@windriver.com
      
      Link: https://lkml.kernel.org/r/1606895585-17382-2-git-send-email-Kuan-Ying.Lee@mediatek.comSigned-off-by: default avatarKuan-Ying Lee <Kuan-Ying.Lee@mediatek.com>
      Signed-off-by: default avatarZqiang <qiang.zhang@windriver.com>
      Suggested-by: default avatarDmitry Vyukov <dvyukov@google.com>
      Reported-by: default avatarGuangye Yang <guangye.yang@mediatek.com>
      Reviewed-by: default avatarDmitry Vyukov <dvyukov@google.com>
      Cc: Andrey Ryabinin <aryabinin@virtuozzo.com>
      Cc: Alexander Potapenko <glider@google.com>
      Cc: Matthias Brugger <matthias.bgg@gmail.com>
      Cc: Nicholas Tang <nicholas.tang@mediatek.com>
      Cc: Miles Chen <miles.chen@mediatek.com>
      Cc: Qian Cai <qcai@redhat.com>
      Cc: Stephen Rothwell <sfr@canb.auug.org.au>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      6c82d45c
    • Arnd Bergmann's avatar
      elfcore: fix building with clang · 6e7b64b9
      Arnd Bergmann authored
      kernel/elfcore.c only contains weak symbols, which triggers a bug with
      clang in combination with recordmcount:
      
        Cannot find symbol for section 2: .text.
        kernel/elfcore.o: failed
      
      Move the empty stubs into linux/elfcore.h as inline functions.  As only
      two architectures use these, just use the architecture specific Kconfig
      symbols to key off the declaration.
      
      Link: https://lkml.kernel.org/r/20201204165742.3815221-2-arnd@kernel.orgSigned-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Cc: Nathan Chancellor <natechancellor@gmail.com>
      Cc: Nick Desaulniers <ndesaulniers@google.com>
      Cc: Barret Rhoden <brho@google.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      6e7b64b9
    • Arnd Bergmann's avatar
      initramfs: fix clang build failure · 55d5b7dd
      Arnd Bergmann authored
      There is only one function in init/initramfs.c that is in the .text
      section, and it is marked __weak.  When building with clang-12 and the
      integrated assembler, this leads to a bug with recordmcount:
      
        ./scripts/recordmcount  "init/initramfs.o"
        Cannot find symbol for section 2: .text.
        init/initramfs.o: failed
      
      I'm not quite sure what exactly goes wrong, but I notice that this
      function is only ever called from an __init function, and normally
      inlined.  Marking it __init as well is clearly correct and it leads to
      recordmcount no longer complaining.
      
      Link: https://lkml.kernel.org/r/20201204165742.3815221-1-arnd@kernel.orgSigned-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Cc: Nathan Chancellor <natechancellor@gmail.com>
      Cc: Nick Desaulniers <ndesaulniers@google.com>
      Cc: Barret Rhoden <brho@google.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      55d5b7dd