1. 17 May, 2019 1 commit
    • Linus Torvalds's avatar
      Merge tag 'afs-fixes-20190516' of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs · 227747fb
      Linus Torvalds authored
      Pull misc AFS fixes from David Howells:
       "This fixes a set of miscellaneous issues in the afs filesystem,
        including:
      
         - leak of keys on file close.
      
         - broken error handling in xattr functions.
      
         - missing locking when updating VL server list.
      
         - volume location server DNS lookup whereby preloaded cells may not
           ever get a lookup and regular DNS lookups to maintain server lists
           consume power unnecessarily.
      
         - incorrect error propagation and handling in the fileserver
           iteration code causes operations to sometimes apparently succeed.
      
         - interruption of server record check/update side op during
           fileserver iteration causes uninterruptible main operations to fail
           unexpectedly.
      
         - callback promise expiry time miscalculation.
      
         - over invalidation of the callback promise on directories.
      
         - double locking on callback break waking up file locking waiters.
      
         - double increment of the vnode callback break counter.
      
        Note that it makes some changes outside of the afs code, including:
      
         - an extra parameter to dns_query() to allow the dns_resolver key
           just accessed to be immediately invalidated. AFS is caching the
           results itself, so the key can be discarded.
      
         - an interruptible version of wait_var_event().
      
         - an rxrpc function to allow the maximum lifespan to be set on a
           call.
      
         - a way for an rxrpc call to be marked as non-interruptible"
      
      * tag 'afs-fixes-20190516' of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs:
        afs: Fix double inc of vnode->cb_break
        afs: Fix lock-wait/callback-break double locking
        afs: Don't invalidate callback if AFS_VNODE_DIR_VALID not set
        afs: Fix calculation of callback expiry time
        afs: Make dynamic root population wait uninterruptibly for proc_cells_lock
        afs: Make some RPC operations non-interruptible
        rxrpc: Allow the kernel to mark a call as being non-interruptible
        afs: Fix error propagation from server record check/update
        afs: Fix the maximum lifespan of VL and probe calls
        rxrpc: Provide kernel interface to set max lifespan on a call
        afs: Fix "kAFS: AFS vnode with undefined type 0"
        afs: Fix cell DNS lookup
        Add wait_var_event_interruptible()
        dns_resolver: Allow used keys to be invalidated
        afs: Fix afs_cell records to always have a VL server list record
        afs: Fix missing lock when replacing VL server list
        afs: Fix afs_xattr_get_yfs() to not try freeing an error value
        afs: Fix incorrect error handling in afs_xattr_get_acl()
        afs: Fix key leak in afs_release() and afs_evict_inode()
      227747fb
  2. 16 May, 2019 39 commits
    • Linus Torvalds's avatar
      Merge tag 'ceph-for-5.2-rc1' of git://github.com/ceph/ceph-client · 1d9d7cbf
      Linus Torvalds authored
      Pull ceph updates from Ilya Dryomov:
       "On the filesystem side we have:
      
         - a fix to enforce quotas set above the mount point (Luis Henriques)
      
         - support for exporting snapshots through NFS (Zheng Yan)
      
         - proper statx implementation (Jeff Layton). statx flags are mapped
           to MDS caps, with AT_STATX_{DONT,FORCE}_SYNC taken into account.
      
         - some follow-up dentry name handling fixes, in particular
           elimination of our hand-rolled helper and the switch to __getname()
           as suggested by Al (Jeff Layton)
      
         - a set of MDS client cleanups in preparation for async MDS requests
           in the future (Jeff Layton)
      
         - a fix to sync the filesystem before remounting (Jeff Layton)
      
        On the rbd side, work is on-going on object-map and fast-diff image
        features"
      
      * tag 'ceph-for-5.2-rc1' of git://github.com/ceph/ceph-client: (29 commits)
        ceph: flush dirty inodes before proceeding with remount
        ceph: fix unaligned access in ceph_send_cap_releases
        libceph: make ceph_pr_addr take an struct ceph_entity_addr pointer
        libceph: fix unaligned accesses in ceph_entity_addr handling
        rbd: don't assert on writes to snapshots
        rbd: client_mutex is never nested
        ceph: print inode number in __caps_issued_mask debugging messages
        ceph: just call get_session in __ceph_lookup_mds_session
        ceph: simplify arguments and return semantics of try_get_cap_refs
        ceph: fix comment over ceph_drop_caps_for_unlink
        ceph: move wait for mds request into helper function
        ceph: have ceph_mdsc_do_request call ceph_mdsc_submit_request
        ceph: after an MDS request, do callback and completions
        ceph: use pathlen values returned by set_request_path_attr
        ceph: use __getname/__putname in ceph_mdsc_build_path
        ceph: use ceph_mdsc_build_path instead of clone_dentry_name
        ceph: fix potential use-after-free in ceph_mdsc_build_path
        ceph: dump granular cap info in "caps" debugfs file
        ceph: make iterate_session_caps a public symbol
        ceph: fix NULL pointer deref when debugging is enabled
        ...
      1d9d7cbf
    • Linus Torvalds's avatar
      Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux · 2c45e7fb
      Linus Torvalds authored
      Pull thermal management updates from Zhang Rui:
      
       - Remove the 'module' Kconfig option for thermal subsystem framework
         because the thermal framework are required to be ready as early as
         possible to avoid overheat at boot time (Daniel Lezcano)
      
       - Fix a bug that thermal framework pokes disabled thermal zones upon
         resume (Wei Wang)
      
        - A couple of cleanups and trivial fixes on int340x thermal drivers
          (Srinivas Pandruvada, Zhang Rui, Sumeet Pawnikar)
      
      * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux:
        drivers: thermal: processor_thermal: Downgrade error message
        mlxsw: Remove obsolete dependency on THERMAL=m
        hwmon/drivers/core: Simplify complex dependency
        thermal/drivers/core: Fix typo in the option name
        thermal/drivers/core: Remove depends on THERMAL in Kconfig
        thermal/drivers/core: Remove module unload code
        thermal/drivers/core: Remove the module Kconfig's option
        thermal: core: skip update disabled thermal zones after suspend
        thermal: make device_register's type argument const
        thermal: intel: int340x: processor_thermal_device: simplify to get driver data
        thermal/int3403_thermal: favor _TMP instead of PTYP
      2c45e7fb
    • Linus Torvalds's avatar
      Merge tag 'for-5.2/dm-changes-v2' of... · 311f7128
      Linus Torvalds authored
      Merge tag 'for-5.2/dm-changes-v2' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm
      
      Pull device mapper updates from Mike Snitzer:
      
       - Improve DM snapshot target's scalability by using finer grained
         locking. Requires some list_bl interface improvements.
      
       - Add ability for DM integrity to use a bitmap mode, that tracks
         regions where data and metadata are out of sync, instead of using a
         journal.
      
       - Improve DM thin provisioning target to not write metadata changes to
         disk if the thin-pool and associated thin devices are merely
         activated but not used. This avoids metadata corruption due to
         concurrent activation of thin devices across different OS instances
         (e.g. split brain scenarios, which ultimately would be avoided if
         proper device filters were used -- but not having proper filtering
         has proven a very common configuration mistake)
      
       - Fix missing call to path selector type->end_io in DM multipath. This
         fixes reported performance problems due to inaccurate path selector
         IO accounting causing an imbalance of IO (e.g. avoiding issuing IO to
         particular path due to it seemingly being heavily used).
      
       - Fix bug in DM cache metadata's loading of its discard bitset that
         could lead to all cache blocks being discarded if the very first
         cache block was discarded (thankfully in practice the first cache
         block is generally in use; be it FS superblock, partition table, disk
         label, etc).
      
       - Add testing-only DM dust target which simulates a device that has
         failing sectors and/or read failures.
      
       - Fix a DM init error path reference count hang that caused boot hangs
         if user supplied malformed input on kernel commandline.
      
       - Fix a couple issues with DM crypt target's logging being overly
         verbose or lacking context.
      
       - Various other small fixes to DM init, DM multipath, DM zoned, and DM
         crypt.
      
      * tag 'for-5.2/dm-changes-v2' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm: (42 commits)
        dm: fix a couple brace coding style issues
        dm crypt: print device name in integrity error message
        dm crypt: move detailed message into debug level
        dm ioctl: fix hang in early create error condition
        dm integrity: whitespace, coding style and dead code cleanup
        dm integrity: implement synchronous mode for reboot handling
        dm integrity: handle machine reboot in bitmap mode
        dm integrity: add a bitmap mode
        dm integrity: introduce a function add_new_range_and_wait()
        dm integrity: allow large ranges to be described
        dm ingerity: pass size to dm_integrity_alloc_page_list()
        dm integrity: introduce rw_journal_sectors()
        dm integrity: update documentation
        dm integrity: don't report unused options
        dm integrity: don't check null pointer before kvfree and vfree
        dm integrity: correctly calculate the size of metadata area
        dm dust: Make dm_dust_init and dm_dust_exit static
        dm dust: remove redundant unsigned comparison to less than zero
        dm mpath: always free attached_handler_name in parse_path()
        dm init: fix max devices/targets checks
        ...
      311f7128
    • Qian Cai's avatar
      slab: remove /proc/slab_allocators · 7878c231
      Qian Cai authored
      It turned out that DEBUG_SLAB_LEAK is still broken even after recent
      recue efforts that when there is a large number of objects like
      kmemleak_object which is normal on a debug kernel,
      
        # grep kmemleak /proc/slabinfo
        kmemleak_object   2243606 3436210 ...
      
      reading /proc/slab_allocators could easily loop forever while processing
      the kmemleak_object cache and any additional freeing or allocating
      objects will trigger a reprocessing. To make a situation worse,
      soft-lockups could easily happen in this sitatuion which will call
      printk() to allocate more kmemleak objects to guarantee an infinite
      loop.
      
      Also, since it seems no one had noticed when it was totally broken
      more than 2-year ago - see the commit fcf88917 ("slab: fix a crash
      by reading /proc/slab_allocators"), probably nobody cares about it
      anymore due to the decline of the SLAB. Just remove it entirely.
      Suggested-by: default avatarVlastimil Babka <vbabka@suse.cz>
      Suggested-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      Signed-off-by: default avatarQian Cai <cai@lca.pw>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      7878c231
    • Linus Torvalds's avatar
      Merge tag 'media/v5.2-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media · 01be377c
      Linus Torvalds authored
      Pull media fixes from Mauro Carvalho Chehab:
       "Some fixes for some platform drivers (rockchip, atmel, omap, daVinci,
        tegra-cec, coda and rcar).
      
        Also includes a fix on one of the V4L2 uAPI doc, explaining a border
        case"
      
      * tag 'media/v5.2-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media:
        media: rockchip/vpu: Fix/re-order probe-error/remove path
        media: rockchip/vpu: Initialize mdev->bus_info
        media: rockchip/vpu: Get vdev from the file arg in vidioc_querycap()
        media: rockchip/vpu: Add missing dont_use_autosuspend() calls
        media: rockchip/vpu: Do not request id 0 for our video device
        media: tegra-cec: fix cec_notifier_parse_hdmi_phandle return check
        media: davinci/vpbe: array underflow in vpbe_enum_outputs()
        media: field-order.rst: clarify FIELD_ANY and FIELD_NONE
        media: staging/imx: add media device to capture register
        media: rcar-csi2: Propagate the FLD signal for NTSC and PAL
        media: rcar-csi2: restart CSI-2 link if error is detected
        media: omap_vout: potential buffer overflow in vidioc_dqbuf()
        media: coda: fix unset field and fail on invalid field in buf_prepare
        media: atmel: atmel-isc: fix asd memory allocation
        media: atmel: atmel-isc: fix INIT_WORK misplacement
        media: atmel: atmel-isc: limit incoming pixels per frame
      01be377c
    • Linus Torvalds's avatar
      Merge tag 'edac_fixes_for_5.2' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp · 11b11773
      Linus Torvalds authored
      Pull EDAC fixes from Borislav Petkov:
      
       - Do not build mpc85_edac as a module (Michael Ellerman)
      
       - Correct edac_mc_find()'s return value on error (Robert Richter)
      
      * tag 'edac_fixes_for_5.2' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp:
        EDAC/mc: Fix edac_mc_find() in case no device is found
        EDAC/mpc85xx: Prevent building as a module
      11b11773
    • Linus Torvalds's avatar
      Merge tag 'configfs-for-5.2' of git://git.infradead.org/users/hch/configfs · 4e785e8d
      Linus Torvalds authored
      Pull configfs update from Christoph Hellwig:
      
       - a fix for an error path use after free (YueHaibing)
      
      * tag 'configfs-for-5.2' of git://git.infradead.org/users/hch/configfs:
        configfs: fix possible use-after-free in configfs_register_group
      4e785e8d
    • Linus Torvalds's avatar
      Merge tag 'asm-generic-nommu' of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic · 27ebbf9d
      Linus Torvalds authored
      Pull nommu generic uaccess updates from Arnd Bergmann:
       "asm-generic: kill <asm/segment.h> and improve nommu generic uaccess helpers
      
        Christoph Hellwig writes:
      
           This is a series doing two somewhat interwinded things. It improves
           the asm-generic nommu uaccess helper to optionally be entirely
           generic and not require any arch helpers for the actual uaccess.
           For the generic uaccess.h to actually be generically useful I also
           had to kill off the mess we made of <asm/segment.h>, which really
           shouldn't exist on most architectures"
      
      * tag 'asm-generic-nommu' of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic:
        asm-generic: optimize generic uaccess for 8-byte loads and stores
        asm-generic: provide entirely generic nommu uaccess
        arch: mostly remove <asm/segment.h>
        asm-generic: don't include <asm/segment.h> from <asm/uaccess.h>
      27ebbf9d
    • Linus Torvalds's avatar
      Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · d396360a
      Linus Torvalds authored
      Pull x86 fixes from Ingo Molnar:
       "Misc fixes and updates:
      
         - a handful of MDS documentation/comment updates
      
         - a cleanup related to hweight interfaces
      
         - a SEV guest fix for large pages
      
         - a kprobes LTO fix
      
         - and a final cleanup commit for vDSO HPET support removal"
      
      * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/speculation/mds: Improve CPU buffer clear documentation
        x86/speculation/mds: Revert CPU buffer clear on double fault exit
        x86/kconfig: Disable CONFIG_GENERIC_HWEIGHT and remove __HAVE_ARCH_SW_HWEIGHT
        x86/mm: Do not use set_{pud, pmd}_safe() when splitting a large page
        x86/kprobes: Make trampoline_handler() global and visible
        x86/vdso: Remove hpet_page from vDSO
      d396360a
    • Linus Torvalds's avatar
      Merge branch 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · b2c3dda6
      Linus Torvalds authored
      Pull time fixes from Ingo Molnar:
       "A TIA adjtimex interface extension, and a POSIX compliance ABI fix for
        timespec64 users"
      
      * 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        ntp: Allow TAI-UTC offset to be set to zero
        y2038: Make CONFIG_64BIT_TIME unconditional
      b2c3dda6
    • Linus Torvalds's avatar
      Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · c77ee64f
      Linus Torvalds authored
      Pull perf fixes from Ingo Molnar:
       "An x86 PMU constraint fix, an interface fix, and a Sparse fix"
      
      * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        perf/x86/intel: Allow PEBS multi-entry in watermark mode
        perf/x86/intel: Fix INTEL_FLAGS_EVENT_CONSTRAINT* masking
        perf/x86/amd/iommu: Make the 'amd_iommu_attr_groups' symbol static
      c77ee64f
    • Linus Torvalds's avatar
      Merge branch 'locking-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · f57d7715
      Linus Torvalds authored
      Pull locking fix from Ingo Molnar:
       "A single rwsem fix"
      
      * 'locking-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        locking/rwsem: Prevent decrement of reader count before increment
      f57d7715
    • Linus Torvalds's avatar
      Merge branch 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · b2ca74d3
      Linus Torvalds authored
      Pull core fixes from Ingo Molnar:
       "A handful of objtool updates, plus a documentation addition for
        __ab_c_size()"
      
      * 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        objtool: Fix whitelist documentation typo
        objtool: Fix function fallthrough detection
        objtool: Don't use ignore flag for fake jumps
        overflow.h: Add comment documenting __ab_c_size()
      b2ca74d3
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.armlinux.org.uk/~rmk/linux-arm · 8c05f3b9
      Linus Torvalds authored
      Pull ARM updates from Russell King:
       "ARM development updates:
      
         - more unified assembly conversions for clang
      
         - drop obsolete -mauto-it assembler option
      
         - remove arm_memory_present in preference to the generic version
      
         - remove unused asm/limits.h header
      
         - vdso linker update
      
        We tried to make the assembler warn if unified syntax was not used,
        but unfortunately older versions of GCC warn, so the commit had to be
        reverted"
      
      * tag 'for-linus' of git://git.armlinux.org.uk/~rmk/linux-arm:
        Revert "ARM: 8846/1: warn if divided syntax assembler is used"
        ARM: 8858/1: vdso: use $(LD) instead of $(CC) to link VDSO
        ARM: 8855/1: remove unused <asm/limits.h>
        ARM: 8850/1: use memblocks_present
        ARM: 8854/1: drop -mauto-it
        ARM: 8846/1: warn if divided syntax assembler is used
        ARM: 8853/1: drop WASM to work around LLVM issue
        ARM: 8852/1: uaccess: use unified assembler language syntax
        ARM: 8851/1: add TUSERCOND() macro for conditional postfix
      8c05f3b9
    • Linus Torvalds's avatar
      Merge tag 'armsoc-defconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc · ab02888e
      Linus Torvalds authored
      Pull ARM SoC defconfig updates from Olof Johansson:
       "Mostly the usual churn due to options being reordered or not added in
        the right locations.
      
        Some various enabling of new drivers, etc.
      
        ... i.e. the usual updates, nothing particularly sticks out"
      
      * tag 'armsoc-defconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (23 commits)
        arm64: defconfig: Update UFSHCD for Hi3660 soc
        ARM: multi_v7_defconfig: Enable support for STPMIC1
        ARM: multi_v7_defconfig: Enable missing drivers for supported Chromebooks
        arm64: defconfig: enable mv-xor driver
        ARM: Enable Trusted Foundations for multiplatform ARM v7
        ARM: tegra: Enable Trusted Foundations by default
        ARM: tegra: Update default configuration for v5.1-rc1
        ARM: multi_v7_defconfig: Update for moved options
        ARM: multi_v7_defconfig: Update for dropped options
        ARM: shmobile: Enable USB [EO]HCI HCD PLATFORM support in shmobile_defconfig
        ARM: shmobile: Enable PHY_RCAR_GEN3_USB2 in shmobile_defconfig
        ARM: qcom_defconfig: add options for LG Nexus 5 phone
        arm64: defconfig: include the Agilex platform to the arm64 defconfig
        arm64: defconfig: Add PWM Fan support
        arm64: defconfig: Enable Tegra HDA support
        ARM: multi_v7_defconfig: Enable support for CFI NOR FLASH
        ARM: shmobile: defconfig: Enable support for CFI NOR FLASH
        ARM: shmobile: defconfig: Refresh for v5.1-rc1
        ARM: multi_v7_defconfig: enable the Amlogic Meson ADC and eFuse drivers
        arm64: defconfig: enable fpga and service layer
        ...
      ab02888e
    • Linus Torvalds's avatar
      Merge tag 'armsoc-drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc · dc413a90
      Linus Torvalds authored
      Pull ARM SoC-related driver updates from Olof Johansson:
       "Various driver updates for platforms and a couple of the small driver
        subsystems we merge through our tree:
      
        Among the larger pieces:
      
         - Power management improvements for TI am335x and am437x (RTC
           suspend/wake)
      
         - Misc new additions for Amlogic (socinfo updates)
      
         - ZynqMP FPGA manager
      
         - Nvidia improvements for reset/powergate handling
      
         - PMIC wrapper for Mediatek MT8516
      
         - Misc fixes/improvements for ARM SCMI, TEE, NXP i.MX SCU drivers"
      
      * tag 'armsoc-drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (57 commits)
        soc: aspeed: fix Kconfig
        soc: add aspeed folder and misc drivers
        spi: zynqmp: Fix build break
        soc: imx: Add generic i.MX8 SoC driver
        MAINTAINERS: Update email for Qualcomm SoC maintainer
        memory: tegra: Fix a typos for "fdcdwr2" mc client
        Revert "ARM: tegra: Restore memory arbitration on resume from LP1 on Tegra30+"
        memory: tegra: Replace readl-writel with mc_readl-mc_writel
        memory: tegra: Fix integer overflow on tick value calculation
        memory: tegra: Fix missed registers values latching
        ARM: tegra: cpuidle: Handle tick broadcasting within cpuidle core on Tegra20/30
        optee: allow to work without static shared memory
        soc/tegra: pmc: Move powergate initialisation to probe
        soc/tegra: pmc: Remove reset sysfs entries on error
        soc/tegra: pmc: Fix reset sources and levels
        soc: amlogic: meson-gx-pwrc-vpu: Add support for G12A
        soc: amlogic: meson-gx-pwrc-vpu: Fix power on/off register bitmask
        fpga manager: Adding FPGA Manager support for Xilinx zynqmp
        dt-bindings: fpga: Add bindings for ZynqMP fpga driver
        firmware: xilinx: Add fpga API's
        ...
      dc413a90
    • Linus Torvalds's avatar
      Merge tag 'armsoc-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc · e8a1d701
      Linus Torvalds authored
      Pull ARM Device-tree updates from Olof Johansson:
       "Besides new bindings and additional descriptions of hardware blocks
        for various SoCs and boards, the main new contents here is:
      
        SoCs:
         - Intel Agilex (SoCFPGA)
         - NXP i.MX8MM (Quad Cortex-A53 with media/graphics focus)
      
        New boards:
         - Allwinner:
            + RerVision H3-DVK (H3)
            + Oceanic 5205 5inMFD (H6)
            + Beelink GS2 (H6)
            + Orange Pi 3 (H6)
         - Rockchip:
            + Orange Pi RK3399
            + Nanopi NEO4
            + Veyron-Mighty Chromebook variant
         - Amlogic:
            + SEI Robotics SEI510
         - ST Micro:
            + stm32mp157a discovery1
            + stm32mp157c discovery2
         - NXP:
            + Eckelmann ci4x10 (i.MX6DL)
            + i.MX8MM EVK (i.MX8MM)
            + ZII i.MX7 RPU2 (i.MX7)
            + ZII SPB4 (VF610)
            + Zii Ultra (i.MX8M)
            + TQ TQMa7S (i.MX7Solo)
            + TQ TQMa7D (i.MX7Dual)
            + Kobo Aura (i.MX50)
            + Menlosystems M53 (i.MX53)j
         - Nvidia:
            + Jetson Nano (Tegra T210)"
      
      * tag 'armsoc-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (593 commits)
        arm64: dts: bitmain: Add UART pinctrl support for Sophon Edge
        arm64: dts: bitmain: Add pinctrl support for BM1880 SoC
        arm64: dts: bitmain: Add GPIO Line names for Sophon Edge board
        arm64: dts: bitmain: Add GPIO support for BM1880 SoC
        ARM: dts: gemini: Indent DIR-685 partition table
        dt-bindings: hwmon (pwm-fan) Remove dead "cooling-*-state" properties
        ARM: dts: qcom-apq8064: Set 'cxo_board' as ref clock of the DSI PHY
        arm64: dts: msm8998: thermal: Restrict thermal zone name length to under 20
        arm64: dts: msm8998: thermal: Fix number of supported sensors
        arm64: dts: msm8998-mtp: thermal: Remove skin and battery thermal zones
        arm64: dts: exynos: Move fixed-clocks out of soc
        arm64: dts: exynos: Move pmu and timer nodes out of soc
        ARM: dts: s5pv210: Fix camera clock provider on Goni board
        ARM: dts: exynos: Properly override node to use MDMA0 on Universal C210
        ARM: dts: exynos: Move fixed-clocks out of soc on Exynos3250
        ARM: dts: exynos: Remove unneeded address/size cells from fixed-clock on Exynos3250
        ARM: dts: exynos: Move pmu and timer nodes out of soc
        arm64: dts: rockchip: fix IO domain voltage setting of APIO5 on rockpro64
        arm64: dts: db820c: Add sound card support
        arm64: dts: apq8096-db820c: Add HDMI display support
        ...
      e8a1d701
    • Linus Torvalds's avatar
      Merge tag 'armsoc-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc · 22c58fd7
      Linus Torvalds authored
      Pull ARM SoC platform updates from Olof Johansson:
       "SoC updates, mostly refactorings and cleanups of old legacy platforms.
      
        Major themes this release:
      
         - Conversion of ixp4xx to a modern platform (drivers, DT, bindings)
      
         - Moving some of the ep93xx headers around to get it closer to
           multiplatform enabled.
      
         - Cleanups of Davinci
      
        This also contains a few patches that were queued up as fixes before
        5.1 but I didn't get sent in before release"
      
      * tag 'armsoc-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (123 commits)
        ARM: debug-ll: add default address for digicolor
        ARM: u300: regulator: add MODULE_LICENSE()
        ARM: ep93xx: move private headers out of mach/*
        ARM: ep93xx: move pinctrl interfaces into include/linux/soc
        ARM: ep93xx: keypad: stop using mach/platform.h
        ARM: ep93xx: move network platform data to separate header
        ARM: stm32: add AMBA support for stm32 family
        MAINTAINERS: update arch/arm/mach-davinci
        ARM: rockchip: add missing of_node_put in rockchip_smp_prepare_pmu
        ARM: dts: Add queue manager and NPE to the IXP4xx DTSI
        soc: ixp4xx: qmgr: Add DT probe code
        soc: ixp4xx: qmgr: Add DT bindings for IXP4xx qmgr
        soc: ixp4xx: npe: Add DT probe code
        soc: ixp4xx: Add DT bindings for IXP4xx NPE
        soc: ixp4xx: qmgr: Pass resources
        soc: ixp4xx: Remove unused functions
        soc: ixp4xx: Uninline several functions
        soc: ixp4xx: npe: Pass addresses as resources
        ARM: ixp4xx: Turn the QMGR into a platform device
        ARM: ixp4xx: Turn the NPE into a platform device
        ...
      22c58fd7
    • David Howells's avatar
      afs: Fix double inc of vnode->cb_break · fd711586
      David Howells authored
      When __afs_break_callback() clears the CB_PROMISED flag, it increments
      vnode->cb_break to trigger a future refetch of the status and callback -
      however it also calls afs_clear_permits(), which also increments
      vnode->cb_break.
      
      Fix this by removing the increment from afs_clear_permits().
      
      Whilst we're at it, fix the conditional call to afs_put_permits() as the
      function checks to see if the argument is NULL, so the check is redundant.
      
      Fixes: be080a6f ("afs: Overhaul permit caching");
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      fd711586
    • David Howells's avatar
      afs: Fix lock-wait/callback-break double locking · c7226e40
      David Howells authored
      __afs_break_callback() holds vnode->lock around its call of
      afs_lock_may_be_available() - which also takes that lock.
      
      Fix this by not taking the lock in __afs_break_callback().
      
      Also, there's no point checking the granted_locks and pending_locks queues;
      it's sufficient to check lock_state, so move that check out of
      afs_lock_may_be_available() into __afs_break_callback() to replace the
      queue checks.
      
      Fixes: e8d6c554 ("AFS: implement file locking")
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      c7226e40
    • David Howells's avatar
      afs: Don't invalidate callback if AFS_VNODE_DIR_VALID not set · d9052dda
      David Howells authored
      Don't invalidate the callback promise on a directory if the
      AFS_VNODE_DIR_VALID flag is not set (which indicates that the directory
      contents are invalid, due to edit failure, callback break, page reclaim).
      
      The directory will be reloaded next time the directory is accessed, so
      clearing the callback flag at this point may race with a reload of the
      directory and cancel it's recorded callback promise.
      
      Fixes: f3ddee8d ("afs: Fix directory handling")
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      d9052dda
    • David Howells's avatar
      afs: Fix calculation of callback expiry time · 78107055
      David Howells authored
      Fix the calculation of the expiry time of a callback promise, as obtained
      from operations like FS.FetchStatus and FS.FetchData.
      
      The time should be based on the timestamp of the first DATA packet in the
      reply and the calculation needs to turn the ktime_t timestamp into a
      time64_t.
      
      Fixes: c435ee34 ("afs: Overhaul the callback handling")
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      78107055
    • David Howells's avatar
      afs: Make dynamic root population wait uninterruptibly for proc_cells_lock · 3b05e528
      David Howells authored
      Make dynamic root population wait uninterruptibly for proc_cells_lock.
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      3b05e528
    • David Howells's avatar
      afs: Make some RPC operations non-interruptible · 20b8391f
      David Howells authored
      Make certain RPC operations non-interruptible, including:
      
       (*) Set attributes
       (*) Store data
      
           We don't want to get interrupted during a flush on close, flush on
           unlock, writeback or an inode update, leaving us in a state where we
           still need to do the writeback or update.
      
       (*) Extend lock
       (*) Release lock
      
           We don't want to get lock extension interrupted as the file locks on
           the server are time-limited.  Interruption during lock release is less
           of an issue since the lock is time-limited, but it's better to
           complete the release to avoid a several-minute wait to recover it.
      
           *Setting* the lock isn't a problem if it's interrupted since we can
            just return to the user and tell them they were interrupted - at
            which point they can elect to retry.
      
       (*) Silly unlink
      
           We want to remove silly unlink files if we can, rather than leaving
           them for the salvager to clear up.
      
      Note that whilst these calls are no longer interruptible, they do have
      timeouts on them, so if the server stops responding the call will fail with
      something like ETIME or ECONNRESET.
      
      Without this, the following:
      
      	kAFS: Unexpected error from FS.StoreData -512
      
      appears in dmesg when a pending store data gets interrupted and some
      processes may just hang.
      
      Additionally, make the code that checks/updates the server record ignore
      failure due to interruption if the main call is uninterruptible and if the
      server has an address list.  The next op will check it again since the
      expiration time on the old list has past.
      
      Fixes: d2ddc776 ("afs: Overhaul volume and server record caching and fileserver rotation")
      Reported-by: default avatarJonathan Billings <jsbillings@jsbillings.org>
      Reported-by: default avatarMarc Dionne <marc.dionne@auristor.com>
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      20b8391f
    • David Howells's avatar
      rxrpc: Allow the kernel to mark a call as being non-interruptible · b960a34b
      David Howells authored
      Allow kernel services using AF_RXRPC to indicate that a call should be
      non-interruptible.  This allows kafs to make things like lock-extension and
      writeback data storage calls non-interruptible.
      
      If this is set, signals will be ignored for operations on that call where
      possible - such as waiting to get a call channel on an rxrpc connection.
      
      It doesn't prevent UDP sendmsg from being interrupted, but that will be
      handled by packet retransmission.
      
      rxrpc_kernel_recv_data() isn't affected by this since that never waits,
      preferring instead to return -EAGAIN and leave the waiting to the caller.
      
      Userspace initiated calls can't be set to be uninterruptible at this time.
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      b960a34b
    • David Howells's avatar
      afs: Fix error propagation from server record check/update · 0ab4c959
      David Howells authored
      afs_check/update_server_record() should be setting fc->error rather than
      fc->ac.error as they're called from within the cursor iteration function.
      
      afs_fs_cursor::error is where the error code of the attempt to call the
      operation on multiple servers is integrated and is the final result,
      whereas afs_addr_cursor::error is used to hold the error from individual
      iterations of the call loop.  (Note there's also an afs_vl_cursor which
      also wraps afs_addr_cursor for accessing VL servers rather than file
      servers).
      
      Fix this by setting fc->error in the afs_check/update_server_record() so
      that any error incurred whilst talking to the VL server correctly
      propagates to the final result.
      
      This results in:
      
      	kAFS: Unexpected error from FS.StoreData -512
      
      being seen, even though the store-data op is non-interruptible.  The error
      is actually coming from the server record update getting interrupted.
      
      Fixes: d2ddc776 ("afs: Overhaul volume and server record caching and fileserver rotation")
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      0ab4c959
    • David Howells's avatar
      afs: Fix the maximum lifespan of VL and probe calls · 94f699c9
      David Howells authored
      If an older AFS server doesn't support an operation, it may accept the call
      and then sit on it forever, happily responding to pings that make kafs
      think that the call is still alive.
      
      Fix this by setting the maximum lifespan of Volume Location service calls
      in particular and probe calls in general so that they don't run on
      endlessly if they're not supported.
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      94f699c9
    • Linus Torvalds's avatar
      Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/evalenti/linux-soc-thermal · a455eda3
      Linus Torvalds authored
      Pull thermal soc updates from Eduardo Valentin:
      
       - thermal core has a new devm_* API for registering cooling devices. I
         took the entire series, that is why you see changes on drivers/hwmon
         in this pull (Guenter Roeck)
      
       - rockchip thermal driver gains support to PX30 SoC (Elaine Zhang)
      
       - the generic-adc thermal driver now considers the lookup table DT
         property as optional (Jean-Francois Dagenais)
      
       - Refactoring of tsens thermal driver (Amit Kucheria)
      
       - Cleanups on cpu cooling driver (Daniel Lezcano)
      
       - broadcom thermal driver dropped support to ACPI (Srinath Mannam)
      
       - tegra thermal driver gains support to OC hw throttle and GPU throtle
         (Wei Ni)
      
       - Fixes in several thermal drivers.
      
      * 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/evalenti/linux-soc-thermal: (59 commits)
        hwmon: (pwm-fan) Use devm_thermal_of_cooling_device_register
        hwmon: (npcm750-pwm-fan) Use devm_thermal_of_cooling_device_register
        hwmon: (mlxreg-fan) Use devm_thermal_of_cooling_device_register
        hwmon: (gpio-fan) Use devm_thermal_of_cooling_device_register
        hwmon: (aspeed-pwm-tacho) Use devm_thermal_of_cooling_device_register
        thermal: rcar_gen3_thermal: Fix to show correct trip points number
        thermal: rcar_thermal: update calculation formula for R-Car Gen3 SoCs
        thermal: cpu_cooling: Actually trace CPU load in thermal_power_cpu_get_power
        thermal: rockchip: Support the PX30 SoC in thermal driver
        dt-bindings: rockchip-thermal: Support the PX30 SoC compatible
        thermal: rockchip: fix up the tsadc pinctrl setting error
        thermal: broadcom: Remove ACPI support
        thermal: Fix build error of missing devm_ioremap_resource on UM
        thermal/drivers/cpu_cooling: Remove pointless field
        thermal/drivers/cpu_cooling: Add Software Package Data Exchange (SPDX)
        thermal/drivers/cpu_cooling: Fixup the header and copyright
        thermal/drivers/cpu_cooling: Remove pointless test in power2state()
        thermal: rcar_gen3_thermal: disable interrupt in .remove
        thermal: rcar_gen3_thermal: fix interrupt type
        thermal: Introduce devm_thermal_of_cooling_device_register
        ...
      a455eda3
    • David Howells's avatar
      rxrpc: Provide kernel interface to set max lifespan on a call · bbd172e3
      David Howells authored
      Provide an interface to set max lifespan on a call from inside of the
      kernel without having to call kernel_sendmsg().
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      bbd172e3
    • David Howells's avatar
      afs: Fix "kAFS: AFS vnode with undefined type 0" · 51eba999
      David Howells authored
      Under some circumstances afs_select_fileserver() can return without setting
      an error in fc->error.  The problem is in the no_more_servers segment where
      the accumulated errors from attempts to contact various servers are
      integrated into an afs_error-type variable 'e'.  The resultant error code
      is, however, then abandoned.
      
      Fix this by getting the error out of e.error and putting it in 'error' so
      that the next part will store it into fc->error.
      
      Not doing this causes a report like the following:
      
          kAFS: AFS vnode with undefined type 0
          kAFS: A=0 m=0 s=0 v=0
          kAFS: vnode 20000025:1:1
      
      because the code following the server selection loop then sees what it
      thinks is a successful invocation because fc.error is 0.  However, it can't
      apply the status record because it's all zeros.
      
      The report is followed on the first instance with a trace looking something
      like:
      
           dump_stack+0x67/0x8e
           afs_inode_init_from_status.isra.2+0x21b/0x487
           afs_fetch_status+0x119/0x1df
           afs_iget+0x130/0x295
           afs_get_tree+0x31d/0x595
           vfs_get_tree+0x1f/0xe8
           fc_mount+0xe/0x36
           afs_d_automount+0x328/0x3c3
           follow_managed+0x109/0x20a
           lookup_fast+0x3bf/0x3f8
           do_last+0xc3/0x6a4
           path_openat+0x1af/0x236
           do_filp_open+0x51/0xae
           ? _raw_spin_unlock+0x24/0x2d
           ? __alloc_fd+0x1a5/0x1b7
           do_sys_open+0x13b/0x1e8
           do_syscall_64+0x7d/0x1b3
           entry_SYSCALL_64_after_hwframe+0x49/0xbe
      
      Fixes: 4584ae96 ("afs: Fix missing net error handling")
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      51eba999
    • Linus Torvalds's avatar
      Merge tag 'drm-next-2019-05-16' of git://anongit.freedesktop.org/drm/drm · cc7ce901
      Linus Torvalds authored
      Pull drm fixes from Dave Airlie:
       "A bunch of fixes for the merge window closure, doesn't seem to be
        anything too major or serious in there.
      
        It does add TU117 turing modesetting to nouveau but it's just an
        enable for preexisting code.
      
        amdgpu:
         - gpu reset at load crash fix
         - ATPX hotplug fix for when dGPU is off
         - SR-IOV fixes
      
        radeon:
         - r5xx pll fixes
      
        i915:
         - GVT (MCHBAR, buffer alignment, misc warnings fixes)
         - Fixes for newly enabled semaphore code
         - Geminilake disable framebuffer compression
         - HSW edp fast modeset fix
         - IRQ vs RCU race fix
      
        nouveau:
         - Turing modesetting fixes
         - TU117 support
      
        msm:
         - SDM845 bringup fixes
      
        panfrost:
         - static checker fixes
      
        pl111:
         - spinlock init fix.
      
        bridge:
         - refresh rate register fix for adv7511"
      
      * tag 'drm-next-2019-05-16' of git://anongit.freedesktop.org/drm/drm: (36 commits)
        drm/msm: Upgrade gxpd checks to IS_ERR_OR_NULL
        drm/msm/dpu: Remove duplicate header
        drm/pl111: Initialize clock spinlock early
        drm/msm: correct attempted NULL pointer dereference in debugfs
        drm/msm: remove resv fields from msm_gem_object struct
        drm/nouveau: fix duplication of nv50_head_atom struct
        drm/nouveau/disp/dp: respect sink limits when selecting failsafe link configuration
        drm/nouveau/core: initial support for boards with TU117 chipset
        drm/nouveau/core: allow detected chipset to be overridden
        drm/nouveau/kms/gf119-gp10x: push HeadSetControlOutputResource() mthd when encoders change
        drm/nouveau/kms/nv50-: fix bug preventing non-vsync'd page flips
        drm/nouveau/kms/gv100-: fix spurious window immediate interlocks
        drm/bridge: adv7511: Fix low refresh rate selection
        drm/panfrost: Add missing _fini() calls in panfrost_device_fini()
        drm/panfrost: Only put sync_out if non-NULL
        drm/i915: Seal races between async GPU cancellation, retirement and signaling
        drm/i915: Fix fastset vs. pfit on/off on HSW EDP transcoder
        drm/i915/fbc: disable framebuffer compression on GeminiLake
        drm/amdgpu/psp: move psp version specific function pointers to early_init
        drm/radeon: prefer lower reference dividers
        ...
      cc7ce901
    • Sheetal Singala's avatar
      8454fca4
    • Milan Broz's avatar
      dm crypt: print device name in integrity error message · f710126c
      Milan Broz authored
      This message should better identify the DM device with the integrity
      failure.
      Signed-off-by: default avatarMilan Broz <gmazyland@gmail.com>
      Signed-off-by: default avatarMike Snitzer <snitzer@redhat.com>
      f710126c
    • Milan Broz's avatar
      dm crypt: move detailed message into debug level · 7a1cd723
      Milan Broz authored
      The information about tag size should not be printed without debug info
      set. Also print device major:minor in the error message to identify the
      device instance.
      
      Also use rate limiting and debug level for info about used crypto API
      implementaton.  This is important because during online reencryption
      the existing message saturates syslog (because we are moving hotzone
      across the whole device).
      
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarMilan Broz <gmazyland@gmail.com>
      Signed-off-by: default avatarMike Snitzer <snitzer@redhat.com>
      7a1cd723
    • Helen Koike's avatar
      dm ioctl: fix hang in early create error condition · 0f41fcf7
      Helen Koike authored
      The dm_early_create() function (which deals with "dm-mod.create=" kernel
      command line option) calls dm_hash_insert() who gets an extra reference
      to the md object.
      
      In case of failure, this reference wasn't being released, causing
      dm_destroy() to hang, thus hanging the whole boot process.
      
      Fix this by calling __hash_remove() in the error path.
      
      Fixes: 6bbc923d ("dm: add support to directly boot to a mapped device")
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarHelen Koike <helen.koike@collabora.com>
      Signed-off-by: default avatarMike Snitzer <snitzer@redhat.com>
      0f41fcf7
    • David Howells's avatar
      afs: Fix cell DNS lookup · d5c32c89
      David Howells authored
      Currently, once configured, AFS cells are looked up in the DNS at regular
      intervals - which is a waste of resources if those cells aren't being
      used.  It also leads to a problem where cells preloaded, but not
      configured, before the network is brought up end up effectively statically
      configured with no VL servers and are unable to get any.
      
      Fix this by not doing the DNS lookup until the first time a cell is
      touched.  It is waited for if we don't have any cached records yet,
      otherwise the DNS lookup to maintain the record is done in the background.
      
      This has the downside that the first time you touch a cell, you now have to
      wait for the upcall to do the required DNS lookups rather than them already
      being cached.
      
      Further, the record is not replaced if the old record has at least one
      server in it and the new record doesn't have any.
      
      Fixes: 0a5143f2 ("afs: Implement VL server rotation")
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      d5c32c89
    • Andy Lutomirski's avatar
      x86/speculation/mds: Improve CPU buffer clear documentation · 9d8d0294
      Andy Lutomirski authored
      On x86_64, all returns to usermode go through
      prepare_exit_to_usermode(), with the sole exception of do_nmi().
      This even includes machine checks -- this was added several years
      ago to support MCE recovery.  Update the documentation.
      Signed-off-by: default avatarAndy Lutomirski <luto@kernel.org>
      Cc: Borislav Petkov <bp@suse.de>
      Cc: Frederic Weisbecker <frederic@kernel.org>
      Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
      Cc: Jon Masters <jcm@redhat.com>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: stable@vger.kernel.org
      Fixes: 04dcbdb8 ("x86/speculation/mds: Clear CPU buffers on exit to user")
      Link: http://lkml.kernel.org/r/999fa9e126ba6a48e9d214d2f18dbde5c62ac55c.1557865329.git.luto@kernel.orgSigned-off-by: default avatarIngo Molnar <mingo@kernel.org>
      9d8d0294
    • Andy Lutomirski's avatar
      x86/speculation/mds: Revert CPU buffer clear on double fault exit · 88640e1d
      Andy Lutomirski authored
      The double fault ESPFIX path doesn't return to user mode at all --
      it returns back to the kernel by simulating a #GP fault.
      prepare_exit_to_usermode() will run on the way out of
      general_protection before running user code.
      Signed-off-by: default avatarAndy Lutomirski <luto@kernel.org>
      Cc: Borislav Petkov <bp@suse.de>
      Cc: Frederic Weisbecker <frederic@kernel.org>
      Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
      Cc: Jon Masters <jcm@redhat.com>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: stable@vger.kernel.org
      Fixes: 04dcbdb8 ("x86/speculation/mds: Clear CPU buffers on exit to user")
      Link: http://lkml.kernel.org/r/ac97612445c0a44ee10374f6ea79c222fe22a5c4.1557865329.git.luto@kernel.orgSigned-off-by: default avatarIngo Molnar <mingo@kernel.org>
      88640e1d
    • Ingo Molnar's avatar