1. 01 Jan, 2019 6 commits
    • Linus Torvalds's avatar
      Merge tag 'linux-watchdog-4.21-rc1' of git://www.linux-watchdog.org/linux-watchdog · 115502a6
      Linus Torvalds authored
      Pull watchdog updates from Wim Van Sebroeck:
       - add TQ-Systems TQMX86 watchdog driver
       - add Qualcomm PM8916 watchdog driver
       - w83627hf_wdt: add quirk for Inves system
       - renesas_wdt: several improvements and document r8a774c0 support
       - mena21_wdt, mtx-1: Convert to use GPIO descriptor
       - bcm281xx, ie6xx_wdt: convert to DEFINE_SHOW_ATTRIBUTE
       - documentation: add PM usage and kernel-api: don't reference removed functions
       - update bindings for MT7629 SoC
       - several small fixes
      
      * tag 'linux-watchdog-4.21-rc1' of git://www.linux-watchdog.org/linux-watchdog: (22 commits)
        watchdog: tqmx86: Add watchdog driver for the IO controller
        dt-bindings: watchdog: renesas-wdt: Document r8a774c0 support
        watchdog: docs: kernel-api: don't reference removed functions
        watchdog: add documentation for PM usage
        watchdog: mtx-1: Convert to use GPIO descriptor
        watchdog: mena21_wdt: Convert to GPIO descriptors
        dt-bindings: watchdog: Add Qualcomm PM8916 watchdog
        watchdog: Add pm8916 watchdog driver
        dt-bindings: watchdog: update bindings for MT7629 SoC
        watchdog: renesas_wdt: don't keep timer value during suspend/resume
        watchdog: ie6xx_wdt: convert to DEFINE_SHOW_ATTRIBUTE
        watchdog: bcm281xx: convert to DEFINE_SHOW_ATTRIBUTE
        watchdog: asm9260_wdt: make array mode_name static, shrinks object size
        watchdog/hpwdt: Update driver version.
        watchdog/hpwdt: Do not claim unsupported hardware
        watchdog/hpwdt: Exclude via blacklist
        Watchdog: remove outdated comment
        watchdog: w83627hf_wdt: Add quirk for Inves system
        watchdog: cpwd: add of_node_put()
        watchdog: renesas_wdt: don't set divider while watchdog is running
        ...
      115502a6
    • Eric Biggers's avatar
      KEYS: fix parsing invalid pkey info string · 57b0e314
      Eric Biggers authored
      We need to check the return value of match_token() for Opt_err before
      doing anything with it.
      
      [ Not only did the old "-1" value for Opt_err cause problems for the
        __test_and_set_bit(), as fixed in commit 94c13f66 ("security:
        don't use a negative Opt_err token index"), but accessing
        "args[0].from" is invalid for the Opt_err case, as pointed out by Eric
        later.  - Linus ]
      
      Reported-by: syzbot+a22e0dc07567662c50bc@syzkaller.appspotmail.com
      Fixes: 00d60fd3 ("KEYS: Provide keyctls to drive the new key type ops for asymmetric keys [ver #2]")
      Signed-off-by: default avatarEric Biggers <ebiggers@google.com>
      Cc: stable@kernel.org # 4.20
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      57b0e314
    • Linus Torvalds's avatar
      Merge tag 'armsoc-defconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · e1ef035d
      Linus Torvalds authored
      Pull ARM SoC defconfig updates from Olof Johansson:
       "Most changes here are to enable new drivers and platforms in the
        various configs that affect them. Most of these have been covered and
        described in the other branches, we mostly keep defconfig separate to
        avoid conflicts between SoC/dt/driver updates that they otherwise
        would be grouped with.
      
        One thing worth mentioning here is that OMAP changes from using their
        own UART driver, to 8250, for the multi_v7_defconfig shared config on
        32-bit. This means that the console is now named ttyS* instead of
        ttyO*. This change was already done for omap2_defconfig a while back,
        so most users of these configs have either already updated, or can
        easily follow the same patterns as they did at that time. This makes
        platform support slightly easier for distros, since they no longer
        need to keep track of a separate console prefix for these platforms"
      
      * tag 'armsoc-defconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (31 commits)
        Revert "arm64: defconfig: Enable FSL_MC_BUS and FSL_MC_DPIO"
        arm64: defconfig: Enable FSL_MC_BUS and FSL_MC_DPIO
        arm64: defconfig: Replace PINCTRL_MT7622 with PINCTRL_MTK_MOORE
        arm64: defconfig: Regenerate for v4.20
        ARM: multi_v7_defconfig: Add TOSHIBA TC358764 bridge driver
        ARM: multi_v7_defconfig: Add MAX8952 regulator driver
        ARM: exynos_defconfig: Add TOSHIBA TC358764 bridge driver
        ARM: exynos_defconfig: Add MAX8952 regulator driver
        ARM: exynos_defconfig: Add MAX8998 RTC and charger drivers
        ARM: imx_v6_v7_defconfig: add imx7ulp support
        ARM: imx_v6_v7_defconfig: Select TOUCHSCREEN_GOODIX
        ARM: multi_v7_defconfig: enable STM32 analog & timer drivers
        arm64: defconfig: Enable GCC and PINCTRL for MSM8998
        arm64: defconfig: Enable core Qualcomm SDM845 options
        ARM: defconfig: Enable the PL111 DRM driver on vexpress
        ARM: defconfig: Update the vexpress defconfig
        arm64: defconfig: Enable some qcom remoteproc configs
        arm64: defconfig: Enable QCS404 configs
        ARM: imx_v6_v7_defconfig: Enable USB_ANNOUNCE_NEW_DEVICES
        ARM: imx_v6_v7_defconfig: Enable BT_BNEP
        ...
      e1ef035d
    • Linus Torvalds's avatar
      Merge tag 'armsoc-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · b7badd1d
      Linus Torvalds authored
      Pull ARM Device-tree updates from Olof Johansson:
       "As usual, this is where the bulk of our changes end up landing each
        merge window.
      
        The individual updates are too many to enumerate, many many platforms
        have seen additions of device descriptions such that they are
        functionally more complete (in fact, this is often the bulk of updates
        we see).
      
        Instead I've mostly focused on highlighting the new platforms below as
        they are introduced. Sometimes the introduction is of mostly a
        fragment, that later gets filled in on later releases, and in some
        cases it's near-complete platform support. The latter is more common
        for derivative platforms that already has similar support in-tree.
      
        Two SoCs are slight outliers from the usual range of additions.
        Allwinner support for F1C100s, a quite old SoC (ARMv5-based) shipping
        in the Lychee Pi Nano platform. At the other end is NXP Layerscape
        LX2160A, a 16-core 2.2GHz Cortex-A72 SoC with a large amount of I/O
        aimed at infrastructure/networking.
      
        TI updates stick out in the diff stats too, in particular because they
        have moved the description of their L4 on-chip interconnect to
        devicetree, which opens up for removal of even more of their
        platform-specific 'hwmod' description tables over the next few
        releases.
      
        SoCs:
         - Qualcomm QCS404 (4x Cortex-A53)
         - Allwinner T3 (rebranded R40) and f1c100s (armv5)
         - NXP i.MX7ULP (1x Cortex-A7 + 1x Cortex-M4)
         - NXP LS1028A (2x Cortex-A72), LX2160A (16x Cortex-A72)
      
        New platforms:
         - Rockchip: Gru Scarlet (RK3188 Tablet)
         - Amlogic: Phicomm N1 (S905D), Libretech S805-AC
         - Broadcom: Linksys EA6500 v2 Wi-Fi router (BCM4708)
         - Qualcomm: QCS404 base platform and EVB
         - Qualcomm: Remove of Arrow SD600
         - PXA: First PXA3xx DT board: Raumfeld
         - Aspeed: Facebook Backpack-CMM BMC
         - Renesas iWave G20D-Q7 (RZ/G1N)
         - Allwinner t3-cqa3t-bv3 (T3/R40) and Lichee Pi Nano (F1C100s)
         - Allwinner Emlid Neutis N5, Mapleboard MP130
         - Marvell Macchiatobin Single Shot (Armada 8040, no 10GbE)
         - i.MX: mtrion emCON-MX6, imx6ul-pico-pi, imx7d-sdb-reva
         - VF610: Liebherr's BK4 device, ZII SCU4 AIB board
         - i.MX7D PICO Hobbit baseboard
         - i.MX7ULP EVK board
         - NXP LX2160AQDS and LX2160ARDB boards
      
        Other:
         - Coresight binding updates across the board
         - CPU cooling maps updates across the board"
      
      * tag 'armsoc-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (648 commits)
        ARM: dts: suniv: Fix improper bindings include patch
        ARM: dts: sunxi: Enable Broadcom-based Bluetooth for multiple boards
        arm64: dts: allwinner: a64: bananapi-m64: Add Bluetooth device node
        ARM: dts: suniv: Fix improper bindings include patch
        arm64: dts: Add spi-[tx/rx]-bus-width for the FSL QSPI controller
        arm64: dts: Remove unused properties from FSL QSPI driver nodes
        ARM: dts: Add spi-[tx/rx]-bus-width for the FSL QSPI controller
        ARM: dts: imx6sx-sdb: Fix the reg properties for the FSL QSPI nodes
        ARM: dts: Remove unused properties from FSL QSPI driver nodes
        arm64: dts: ti: k3-am654: Enable main domain McSPI0
        arm64: dts: ti: k3-am654: Add McSPI DT nodes
        arm64: dts: ti: k3-am654: Populate power-domain property for UART nodes
        arm64: dts: ti: k3-am654-base-board: Enable ECAP PWM
        arm64: dts: ti: k3-am65-main: Add ECAP PWM node
        arm64: dts: ti: k3-am654-base-board: Add I2C nodes
        arm64: dts: ti: am654-base-board: Add pinmux for main uart0
        arm64: dts: ti: k3-am65: Add pinctrl regions
        dt-bindings: pinctrl: k3: Introduce pinmux definitions
        ARM: dts: exynos: Specify I2S assigned clocks in proper node
        ARM: dts: exynos: Add missing CPUs in cooling maps for Odroid X2
        ...
      b7badd1d
    • Linus Torvalds's avatar
      Merge tag 'armsoc-drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · d36377c6
      Linus Torvalds authored
      Pull ARM SoC driver updates from Olof Johansson:
       "Misc driver updates for platforms, many of them power related.
      
         - Rockchip adds power domain support for rk3066 and rk3188
      
         - Amlogic adds a power measurement driver
      
         - Allwinner adds SRAM support for three platforms (F1C100, H5, A64
           C1)
      
         - Wakeup and ti-sysc (platform bus) fixes for OMAP/DRA7
      
         - Broadcom fixes suspend/resume with Thumb2 kernels, and improves
           stability of a handful of firmware/platform interfaces
      
         - PXA completes their conversion to dmaengine framework
      
         - Renesas does a bunch of PM cleanups across many platforms
      
         - Tegra adds support for suspend/resume on T186/T194, which includes
           some driver cleanups and addition of wake events
      
         - Tegra also adds a driver for memory controller (EMC) on Tegra2
      
         - i.MX tweaks power domain bindings, and adds support for i.MX8MQ in
           GPC
      
         - Atmel adds identifiers and LPDDR2 support for a new SoC, SAM9X60
      
        and misc cleanups across several platforms"
      
      * tag 'armsoc-drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (73 commits)
        ARM: at91: add support in soc driver for new SAM9X60
        ARM: at91: add support in soc driver for LPDDR2 SiP
        memory: omap-gpmc: Use of_node_name_eq for node name comparisons
        bus: ti-sysc: Check for no-reset and no-idle flags at the child level
        ARM: OMAP2+: Check also the first dts child for hwmod flags
        soc: amlogic: meson-clk-measure: Add missing REGMAP_MMIO dependency
        soc: imx: gpc: Increase GPC_CLK_MAX to 7
        soc: renesas: rcar-sysc: Fix power domain control after system resume
        soc: renesas: rcar-sysc: Merge PM Domain registration and linking
        soc: renesas: rcar-sysc: Remove rcar_sysc_power_{down,up}() helpers
        soc: renesas: r8a77990-sysc: Fix initialization order of 3DG-{A,B}
        dt-bindings: sram: sunxi: Add compatible for the A64 SRAM C1
        dt-bindings: sram: sunxi: Add bindings for the H5 with SRAM C1
        dt-bindings: sram: Add Allwinner suniv F1C100s
        soc: sunxi: sram: Add support for the H5 SoC system control
        soc: sunxi: sram: Enable EMAC clock access for H3 variant
        soc: imx: gpcv2: add support for i.MX8MQ SoC
        soc: imx: gpcv2: move register access table to domain data
        soc: imx: gpcv2: prefix i.MX7 specific defines
        dmaengine: pxa: make the filter function internal
        ...
      d36377c6
    • Linus Torvalds's avatar
      Merge tag 'armsoc-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 0922275e
      Linus Torvalds authored
      Pull arm SoC platform updates from Olof Johansson:
       "SoC updates, mostly refactorings and cleanups of old legacy platforms,
        but also a few more things:
      
        New SoC support this release:
         - NXP/Freescale i.MX7ULP (1x Cortex-A7, Cortex-M4, graphics, etc)
         - Allwinner F1C100, older platform with an ARM926-EJS (ARMv5) core
      
        Cleanups of various platforms:
         - OMAP1 ams-delta does some GPIO cleanups
         - Davinci removes of at24 platform data
         - Samsung cleans up old wakeup, PM debug and secondary core boot code
         - Renesas moves around config options and PM code to drivers/soc for
           sharing with 64-bit and more consistency
         - i.MX, Broadcom and SoCFPGA all have tweaks to lowlevel debug
           console setups
         - SoCFPGA adds explicit selection of ARM errata and removes some
           unused code
      
        This also contains a few patches that I had queued up as fixes for
        4.20 but didn't send in before the release"
      
      * tag 'armsoc-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (68 commits)
        arm64: dts: renesas: draak: Fix CVBS input
        ARM: omap2: avoid section mismatch warning
        ARM: tegra: avoid section mismatch warning
        ARM: ks8695: fix section mismatch warning
        ARM: pxa: avoid section mismatch warning
        ARM: mmp: fix pxa168_device_usb_phy use on aspenite
        ARM: mmp: fix timer_init calls
        ARM: OMAP1: fix USB configuration for device-only setups
        ARM: OMAP1: add MMC configuration for Palm Tungsten E
        ARM: imx: fix dependencies on imx7ulp
        ARM: meson: select HAVE_ARM_TWD and ARM_GLOBAL_TIMER
        MAINTAINERS: add drivers/soc/amlogic/ to amlogic list
        ARM: imx: add initial support for imx7ulp
        ARM: debug-imx: only define DEBUG_IMX_UART_PORT if needed
        ARM: dts: Fix OMAP4430 SDP Ethernet startup
        ARM: dts: am335x-pdu001: Fix polarity of card detection input
        ARM: OMAP1: ams-delta: Fix audio permanently muted
        ARM: dts: omap5: Fix dual-role mode on Super-Speed port
        arm64: dts: rockchip: fix rk3399-rockpro64 regulator gpios
        ARM: davinci: da850-evm: remove unnecessary include
        ...
      0922275e
  2. 31 Dec, 2018 6 commits
    • Olof Johansson's avatar
      Merge branch 'fixes' into next/soc · cac1fc8f
      Olof Johansson authored
      Merge in fixes here, since the last batch didn't make it in before the
      release of 4.20, and we might as well group them with this set of
      patches.
      
      * fixes: (822 commits)
        arm64: dts: renesas: draak: Fix CVBS input
        ARM: dts: Fix OMAP4430 SDP Ethernet startup
        ARM: dts: am335x-pdu001: Fix polarity of card detection input
        ARM: OMAP1: ams-delta: Fix audio permanently muted
        ARM: dts: omap5: Fix dual-role mode on Super-Speed port
        arm64: dts: rockchip: fix rk3399-rockpro64 regulator gpios
        ARM: dts: imx7d-nitrogen7: Fix the description of the Wifi clock
        ARM: imx: update the cpu power up timing setting on i.mx6sx
        Revert "arm64: dts: marvell: add CPU Idle power state support on Armada 7K/8K"
        ARM: dts: imx7d-pico: Describe the Wifi clock
        ARM: dts: realview: Fix some more duplicate regulator nodes
        MAINTAINERS: update entry for MMP platform
        ARM: mmp/mmp2: fix cpu_is_mmp2() on mmp2-dt
        MAINTAINERS: mediatek: Update SoC entry
        ARM: dts: bcm2837: Fix polarity of wifi reset GPIOs
        + Linux 4.20-rc5
      Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
      cac1fc8f
    • Linus Torvalds's avatar
      Merge tag 'trace-v4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace · 495d714a
      Linus Torvalds authored
      Pull tracing updates from Steven Rostedt:
      
       - Rework of the kprobe/uprobe and synthetic events to consolidate all
         the dynamic event code. This will make changes in the future easier.
      
       - Partial rewrite of the function graph tracing infrastructure. This
         will allow for multiple users of hooking onto functions to get the
         callback (return) of the function. This is the ground work for having
         kprobes and function graph tracer using one code base.
      
       - Clean up of the histogram code that will facilitate adding more
         features to the histograms in the future.
      
       - Addition of str_has_prefix() and a few use cases. There currently is
         a similar function strstart() that is used in a few places, but only
         returns a bool and not a length. These instances will be removed in
         the future to use str_has_prefix() instead.
      
       - A few other various clean ups as well.
      
      * tag 'trace-v4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace: (57 commits)
        tracing: Use the return of str_has_prefix() to remove open coded numbers
        tracing: Have the historgram use the result of str_has_prefix() for len of prefix
        tracing: Use str_has_prefix() instead of using fixed sizes
        tracing: Use str_has_prefix() helper for histogram code
        string.h: Add str_has_prefix() helper function
        tracing: Make function ‘ftrace_exports’ static
        tracing: Simplify printf'ing in seq_print_sym
        tracing: Avoid -Wformat-nonliteral warning
        tracing: Merge seq_print_sym_short() and seq_print_sym_offset()
        tracing: Add hist trigger comments for variable-related fields
        tracing: Remove hist trigger synth_var_refs
        tracing: Use hist trigger's var_ref array to destroy var_refs
        tracing: Remove open-coding of hist trigger var_ref management
        tracing: Use var_refs[] for hist trigger reference checking
        tracing: Change strlen to sizeof for hist trigger static strings
        tracing: Remove unnecessary hist trigger struct field
        tracing: Fix ftrace_graph_get_ret_stack() to use task and not current
        seq_buf: Use size_t for len in seq_buf_puts()
        seq_buf: Make seq_buf_puts() null-terminate the buffer
        arm64: Use ftrace_graph_get_ret_stack() instead of curr_ret_stack
        ...
      495d714a
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mattst88/alpha · f12e840c
      Linus Torvalds authored
      Pull alpha architecture updates from Matt Turner:
       "A few small changes for alpha as well as the new system call table
        generation support from Firoz Khan"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mattst88/alpha:
        alpha: Remove some unused variables
        alpha: rtc: simplify alpha_rtc_init
        alpha: Fix a typo on ptrace.h
        alpha: fix spelling mistake QSD_PORT_ACTUVE -> QSD_PORT_ACTIVE
        alpha: generate uapi header and syscall table header files
        alpha: add system call table generation support
        alpha: add __NR_syscalls along with NR_SYSCALLS
        alpha: remove CONFIG_OSF4_COMPAT flag from syscall table
        alpha: move __IGNORE* entries to non uapi header
      f12e840c
    • Linus Torvalds's avatar
      Merge branch 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · e3ed513b
      Linus Torvalds authored
      Pull scheduler fix from Ingo Molnar:
       "This is a revert for a lockup in cgroups-intense workloads - the real
        fixes will come later"
      
      * 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        sched/fair: Fix infinite loop in update_blocked_averages() by reverting a9e7f654
      e3ed513b
    • Linus Torvalds's avatar
      Merge tag 'dax-fix-4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm · 2a1a2c1a
      Linus Torvalds authored
      Pull dax fix from Dan Williams:
       "Clean up unnecessary usage of prepare_to_wait_exclusive().
      
        While I feel a bit silly sending a single-commit pull-request there is
        nothing else queued up for dax this cycle. This change has shipped in
        -next for multiple releases"
      
      * tag 'dax-fix-4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm:
        dax: Use non-exclusive wait in wait_entry_unlocked()
      2a1a2c1a
    • Linus Torvalds's avatar
      Merge tag 'f2fs-for-4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs · 9ab97aea
      Linus Torvalds authored
      Pull f2fs updates from Jaegeuk Kim:
       "In this round, we've focused on bug fixes since Pixel devices have
        been shipping with f2fs. Some of them were related to hardware
        encryption support which are actually not an issue in mainline, but
        would be better to merge them in order to avoid potential bugs.
      
        Enhancements:
         - do GC sub-sections when the section is large
         - add a flag in ioctl(SHUTDOWN) to trigger fsck for QA
         - use kvmalloc() in order to give another chance to avoid ENOMEM
      
        Bug fixes:
         - fix accessing memory boundaries in a malformed iamge
         - GC gives stale unencrypted block
         - GC counts in large sections
         - detect idle time more precisely
         - block allocation of DIO writes
         - race conditions between write_begin and write_checkpoint
         - allow GCs for node segments via ioctl()
      
        There are various clean-ups and minor bug fixes as well"
      
      * tag 'f2fs-for-4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs: (43 commits)
        f2fs: sanity check of xattr entry size
        f2fs: fix use-after-free issue when accessing sbi->stat_info
        f2fs: check PageWriteback flag for ordered case
        f2fs: fix validation of the block count in sanity_check_raw_super
        f2fs: fix missing unlock(sbi->gc_mutex)
        f2fs: fix to dirty inode synchronously
        f2fs: clean up structure extent_node
        f2fs: fix block address for __check_sit_bitmap
        f2fs: fix sbi->extent_list corruption issue
        f2fs: clean up checkpoint flow
        f2fs: flush stale issued discard candidates
        f2fs: correct wrong spelling, issing_*
        f2fs: use kvmalloc, if kmalloc is failed
        f2fs: remove redundant comment of unused wio_mutex
        f2fs: fix to reorder set_page_dirty and wait_on_page_writeback
        f2fs: clear PG_writeback if IPU failed
        f2fs: add an ioctl() to explicitly trigger fsck later
        f2fs: avoid frequent costly fsck triggers
        f2fs: fix m_may_create to make OPU DIO write correctly
        f2fs: fix to update new block address correctly for OPU
        ...
      9ab97aea
  3. 30 Dec, 2018 1 commit
    • Linus Torvalds's avatar
      sched/fair: Fix infinite loop in update_blocked_averages() by reverting a9e7f654 · c40f7d74
      Linus Torvalds authored
      Zhipeng Xie, Xie XiuQi and Sargun Dhillon reported lockups in the
      scheduler under high loads, starting at around the v4.18 time frame,
      and Zhipeng Xie tracked it down to bugs in the rq->leaf_cfs_rq_list
      manipulation.
      
      Do a (manual) revert of:
      
        a9e7f654 ("sched/fair: Fix O(nr_cgroups) in load balance path")
      
      It turns out that the list_del_leaf_cfs_rq() introduced by this commit
      is a surprising property that was not considered in followup commits
      such as:
      
        9c2791f9 ("sched/fair: Fix hierarchical order in rq->leaf_cfs_rq_list")
      
      As Vincent Guittot explains:
      
       "I think that there is a bigger problem with commit a9e7f654 and
        cfs_rq throttling:
      
        Let take the example of the following topology TG2 --> TG1 --> root:
      
         1) The 1st time a task is enqueued, we will add TG2 cfs_rq then TG1
            cfs_rq to leaf_cfs_rq_list and we are sure to do the whole branch in
            one path because it has never been used and can't be throttled so
            tmp_alone_branch will point to leaf_cfs_rq_list at the end.
      
         2) Then TG1 is throttled
      
         3) and we add TG3 as a new child of TG1.
      
         4) The 1st enqueue of a task on TG3 will add TG3 cfs_rq just before TG1
            cfs_rq and tmp_alone_branch will stay  on rq->leaf_cfs_rq_list.
      
        With commit a9e7f654, we can del a cfs_rq from rq->leaf_cfs_rq_list.
        So if the load of TG1 cfs_rq becomes NULL before step 2) above, TG1
        cfs_rq is removed from the list.
        Then at step 4), TG3 cfs_rq is added at the beginning of rq->leaf_cfs_rq_list
        but tmp_alone_branch still points to TG3 cfs_rq because its throttled
        parent can't be enqueued when the lock is released.
        tmp_alone_branch doesn't point to rq->leaf_cfs_rq_list whereas it should.
      
        So if TG3 cfs_rq is removed or destroyed before tmp_alone_branch
        points on another TG cfs_rq, the next TG cfs_rq that will be added,
        will be linked outside rq->leaf_cfs_rq_list - which is bad.
      
        In addition, we can break the ordering of the cfs_rq in
        rq->leaf_cfs_rq_list but this ordering is used to update and
        propagate the update from leaf down to root."
      
      Instead of trying to work through all these cases and trying to reproduce
      the very high loads that produced the lockup to begin with, simplify
      the code temporarily by reverting a9e7f654 - which change was clearly
      not thought through completely.
      
      This (hopefully) gives us a kernel that doesn't lock up so people
      can continue to enjoy their holidays without worrying about regressions. ;-)
      
      [ mingo: Wrote changelog, fixed weird spelling in code comment while at it. ]
      Analyzed-by: default avatarXie XiuQi <xiexiuqi@huawei.com>
      Analyzed-by: default avatarVincent Guittot <vincent.guittot@linaro.org>
      Reported-by: default avatarZhipeng Xie <xiezhipeng1@huawei.com>
      Reported-by: default avatarSargun Dhillon <sargun@sargun.me>
      Reported-by: default avatarXie XiuQi <xiexiuqi@huawei.com>
      Tested-by: default avatarZhipeng Xie <xiezhipeng1@huawei.com>
      Tested-by: default avatarSargun Dhillon <sargun@sargun.me>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      Acked-by: default avatarVincent Guittot <vincent.guittot@linaro.org>
      Cc: <stable@vger.kernel.org> # v4.13+
      Cc: Bin Li <huawei.libin@huawei.com>
      Cc: Mike Galbraith <efault@gmx.de>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Tejun Heo <tj@kernel.org>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Fixes: a9e7f654 ("sched/fair: Fix O(nr_cgroups) in load balance path")
      Link: http://lkml.kernel.org/r/1545879866-27809-1-git-send-email-xiexiuqi@huawei.comSigned-off-by: default avatarIngo Molnar <mingo@kernel.org>
      c40f7d74
  4. 29 Dec, 2018 24 commits
    • Linus Torvalds's avatar
      Merge tag 'kconfig-v4.21-2' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild · 19530313
      Linus Torvalds authored
      Pull Kconfig file consolidation from Masahiro Yamada:
       "Consolidation of bus (PCI, PCMCIA, EISA, RapidIO) config entries by
        Christoph Hellwig.
      
        Currently, every architecture that wants to provide common peripheral
        busses needs to add some boilerplate code and include the right
        Kconfig files. This series instead just selects the presence (when
        needed) and then handles everything in the bus-specific Kconfig file
        under drivers/"
      
      * tag 'kconfig-v4.21-2' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild:
        pcmcia: remove per-arch PCMCIA config entry
        eisa: consolidate EISA Kconfig entry in drivers/eisa
        rapidio: consolidate RAPIDIO config entry in drivers/rapidio
        pcmcia: allow PCMCIA support independent of the architecture
        PCI: consolidate the PCI_SYSCALL symbol
        PCI: consolidate the PCI_DOMAINS and PCI_DOMAINS_GENERIC config options
        PCI: consolidate PCI config entry in drivers/pci
        MIPS: remove the HT_PCI config option
      19530313
    • Linus Torvalds's avatar
      Merge tag 'kconfig-v4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild · 769e4709
      Linus Torvalds authored
      Pull Kconfig updates from Masahiro Yamada:
      
       - support -y option for merge_config.sh to avoid downgrading =y to =m
      
       - remove S_OTHER symbol type, and touch include/config/*.h files correctly
      
       - fix file name and line number in lexer warnings
      
       - fix memory leak when EOF is encountered in quotation
      
       - resolve all shift/reduce conflicts of the parser
      
       - warn no new line at end of file
      
       - make 'source' statement more strict to take only string literal
      
       - rewrite the lexer and remove the keyword lookup table
      
       - convert to SPDX License Identifier
      
       - compile C files independently instead of including them from zconf.y
      
       - fix various warnings of gconfig
      
       - misc cleanups
      
      * tag 'kconfig-v4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild: (39 commits)
        kconfig: surround dbg_sym_flags with #ifdef DEBUG to fix gconf warning
        kconfig: split images.c out of qconf.cc/gconf.c to fix gconf warnings
        kconfig: add static qualifiers to fix gconf warnings
        kconfig: split the lexer out of zconf.y
        kconfig: split some C files out of zconf.y
        kconfig: convert to SPDX License Identifier
        kconfig: remove keyword lookup table entirely
        kconfig: update current_pos in the second lexer
        kconfig: switch to ASSIGN_VAL state in the second lexer
        kconfig: stop associating kconf_id with yylval
        kconfig: refactor end token rules
        kconfig: stop supporting '.' and '/' in unquoted words
        treewide: surround Kconfig file paths with double quotes
        microblaze: surround string default in Kconfig with double quotes
        kconfig: use T_WORD instead of T_VARIABLE for variables
        kconfig: use specific tokens instead of T_ASSIGN for assignments
        kconfig: refactor scanning and parsing "option" properties
        kconfig: use distinct tokens for type and default properties
        kconfig: remove redundant token defines
        kconfig: rename depends_list to comment_option_list
        ...
      769e4709
    • Linus Torvalds's avatar
      Merge tag 'kbuild-v4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild · 668c35f6
      Linus Torvalds authored
      Pull Kbuild updates from Masahiro Yamada:
       "Kbuild core:
         - remove unneeded $(call cc-option,...) switches
         - consolidate Clang compiler flags into CLANG_FLAGS
         - announce the deprecation of SUBDIRS
         - fix single target build for external module
         - simplify the dependencies of 'prepare' stage targets
         - allow fixdep to directly write to .*.cmd files
         - simplify dependency generation for CONFIG_TRIM_UNUSED_KSYMS
         - change if_changed_rule to accept multi-line recipe
         - move .SECONDARY special target to scripts/Kbuild.include
         - remove redundant 'set -e'
         - improve parallel execution for CONFIG_HEADERS_CHECK
         - misc cleanups
      
        Treewide fixes and cleanups
         - set Clang flags correctly for PowerPC boot images
         - fix UML build error with CONFIG_GCC_PLUGINS
         - remove unneeded patterns from .gitignore files
         - refactor firmware/Makefile
         - remove unneeded rules for *offsets.s
         - avoid unneeded regeneration of intermediate .s files
         - clean up ./Kbuild
      
        Modpost:
         - remove unused -M, -K options
         - fix false positive warnings about section mismatch
         - use simple devtable lookup instead of linker magic
         - misc cleanups
      
        Coccinelle:
         - relax boolinit.cocci checks for overall consistency
         - fix warning messages of boolinit.cocci
      
        Other tools:
         - improve -dirty check of scripts/setlocalversion
         - add a tool to generate compile_commands.json from .*.cmd files"
      
      * tag 'kbuild-v4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild: (51 commits)
        kbuild: remove unused cmd_gentimeconst
        kbuild: remove $(obj)/ prefixes in ./Kbuild
        treewide: add intermediate .s files to targets
        treewide: remove explicit rules for *offsets.s
        firmware: refactor firmware/Makefile
        firmware: remove unnecessary patterns from .gitignore
        scripts: remove unnecessary ihex2fw and check-lc_ctypes from .gitignore
        um: remove unused filechk_gen_header in Makefile
        scripts: add a tool to produce a compile_commands.json file
        kbuild: add -Werror=implicit-int flag unconditionally
        kbuild: add -Werror=strict-prototypes flag unconditionally
        kbuild: add -fno-PIE flag unconditionally
        scripts: coccinelle: Correct warning message
        scripts: coccinelle: only suggest true/false in files that already use them
        kbuild: handle part-of-module correctly for *.ll and *.symtypes
        kbuild: refactor part-of-module
        kbuild: refactor quiet_modtag
        kbuild: remove redundant quiet_modtag for $(obj-m)
        kbuild: refactor Makefile.asm-generic
        user/Makefile: Fix typo and capitalization in comment section
        ...
      668c35f6
    • NeilBrown's avatar
      lib: don't depend on linux headers being installed. · d8372ba8
      NeilBrown authored
      gen_crc64table requires linux include files to be installed in
      /usr/include/linux.  This is a new requrement so hosts that could
      previously build the kernel, now cannot.
      
      gen_crc64table makes this requirement by including <linux/swab.h>, but
      nothing from that header is actaully used.
      
      So remove the #include, so that the linux headers no longer need to be
      installed.
      
      Fixes: feba04fd ("lib: add crc64 calculation routines")
      Signed-off-by: default avatarNeilBrown <neil@brown.name>
      Acked-by: default avatarColy Li <colyli@suse.de>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      d8372ba8
    • Linus Torvalds's avatar
      Merge tag 'docs-5.0' of git://git.lwn.net/linux · 3868772b
      Linus Torvalds authored
      Pull documentation update from Jonathan Corbet:
       "A fairly normal cycle for documentation stuff. We have a new document
        on perf security, more Italian translations, more improvements to the
        memory-management docs, improvements to the pathname lookup
        documentation, and the usual array of smaller fixes.
      
        As is often the case, there are a few reaches outside of
        Documentation/ to adjust kerneldoc comments"
      
      * tag 'docs-5.0' of git://git.lwn.net/linux: (38 commits)
        docs: improve pathname-lookup document structure
        configfs: fix wrong name of struct in documentation
        docs/mm-api: link slab_common.c to "The Slab Cache" section
        slab: make kmem_cache_create{_usercopy} description proper kernel-doc
        doc:process: add links where missing
        docs/core-api: make mm-api.rst more structured
        x86, boot: documentation whitespace fixup
        Documentation: devres: note checking needs when converting
        doc:it: add some process/* translations
        doc:it: fixes in process/1.Intro
        Documentation: convert path-lookup from markdown to resturctured text
        Documentation/admin-guide: update admin-guide index.rst
        Documentation/admin-guide: introduce perf-security.rst file
        scripts/kernel-doc: Fix struct and struct field attribute processing
        Documentation: dev-tools: Fix typos in index.rst
        Correct gen_init_cpio tool's documentation
        Document /proc/pid PID reuse behavior
        Documentation: update path-lookup.md for parallel lookups
        Documentation: Use "while" instead of "whilst"
        dmaengine: Add mailing list address to the documentation
        ...
      3868772b
    • Linus Torvalds's avatar
      Merge branch 'for-4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup · 6f9d71c9
      Linus Torvalds authored
      Pull cgroup updates from Tejun Heo:
      
       - Waiman's cgroup2 cpuset support has been finally merged closing one
         of the last remaining feature gaps.
      
       - cgroup.procs could show non-leader threads when cgroup2 threaded mode
         was used in certain ways. I forgot to push the fix during the last
         cycle.
      
       - A patch to fix mount option parsing when all mount options have been
         consumed by someone else (LSM).
      
       - cgroup_no_v1 boot param can now block named cgroup1 hierarchies too.
      
      * 'for-4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup:
        cgroup: Add named hierarchy disabling to cgroup_no_v1 boot param
        cgroup: fix parsing empty mount option string
        cpuset: Remove set but not used variable 'cs'
        cgroup: fix CSS_TASK_ITER_PROCS
        cgroup: Add .__DEBUG__. prefix to debug file names
        cpuset: Minor cgroup2 interface updates
        cpuset: Expose cpuset.cpus.subpartitions with cgroup_debug
        cpuset: Add documentation about the new "cpuset.sched.partition" flag
        cpuset: Use descriptive text when reading/writing cpuset.sched.partition
        cpuset: Expose cpus.effective and mems.effective on cgroup v2 root
        cpuset: Make generate_sched_domains() work with partition
        cpuset: Make CPU hotplug work with partition
        cpuset: Track cpusets that use parent's effective_cpus
        cpuset: Add an error state to cpuset.sched.partition
        cpuset: Add new v2 cpuset.sched.partition flag
        cpuset: Simply allocation and freeing of cpumasks
        cpuset: Define data structures to support scheduling partition
        cpuset: Enable cpuset controller in default hierarchy
        cgroup: remove unnecessary unlikely()
      6f9d71c9
    • Linus Torvalds's avatar
      Merge branch 'for-4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/dennis/percpu · 55db91fb
      Linus Torvalds authored
      Pull percpu update from Dennis Zhou:
       "Michael Cree noted generic UP Alpha has been broken since v3.18. This
        is a small fix for locking in UP percpu code that fixes the issue"
      
      * 'for-4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/dennis/percpu:
        percpu: convert spin_lock_irq to spin_lock_irqsave.
      55db91fb
    • Linus Torvalds's avatar
      Merge tag 'xtensa-20181228' of git://github.com/jcmvbkbc/linux-xtensa · 9ef10340
      Linus Torvalds authored
      Pull Xtensa updates from Max Filippov:
      
       - switch to generated syscall table
      
       - switch ptrace to regsets, use regsets for core dumps
      
       - complete tracehook implementation
      
       - add syscall tracepoints support
      
       - add jumplabels support
      
       - add memtest support
      
       - drop unused/duplicated code from entry.S, ptrace.c, coprocessor.S,
         elf.h and syscall.h
      
       - clean up warnings caused by WSR/RSR macros
      
       - clean up DTC warnings about SPI controller node names in xtfpga.dtsi
      
       - simplify coprocessor.S
      
       - get rid of explicit 'l32r' instruction usage in assembly
      
      * tag 'xtensa-20181228' of git://github.com/jcmvbkbc/linux-xtensa: (25 commits)
        xtensa: implement jump_label support
        xtensa: implement syscall tracepoints
        xtensa: implement tracehook functions and enable HAVE_ARCH_TRACEHOOK
        xtensa: enable CORE_DUMP_USE_REGSET
        xtensa: implement TIE regset
        xtensa: implement task_user_regset_view
        xtensa: call do_syscall_trace_{enter,leave} selectively
        xtensa: use NO_SYSCALL instead of -1
        xtensa: define syscall_get_arch()
        Move EM_XTENSA to uapi/linux/elf-em.h
        xtensa: support memtest
        xtensa: don't use l32r opcode directly
        xtensa: xtfpga.dtsi: fix dtc warnings about SPI
        xtensa: don't clear cpenable unconditionally on release
        xtensa: simplify coprocessor.S
        xtensa: clean up WSR*/RSR*/get_sr/set_sr
        xtensa: drop unused declarations from elf.h
        xtensa: clean up syscall.h
        xtensa: drop unused coprocessor helper functions
        xtensa: drop custom PTRACE_{PEEK,POKE}{TEXT,DATA}
        ...
      9ef10340
    • Linus Torvalds's avatar
      Merge tag 'nds32-for-linus-4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/greentime/linux · 889bb743
      Linus Torvalds authored
      Pull nds32 updates from Greentime Hu:
      
       - Perf support
      
       - Power management support
      
       - FPU support
      
       - Hardware prefetcher support
      
       - Build error fixed
      
       - Performance enhancement
      
      * tag 'nds32-for-linus-4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/greentime/linux:
        nds32: support hardware prefetcher
        nds32: Fix the items of hwcap_str ordering issue.
        math-emu/soft-fp.h: (_FP_ROUND_ZERO) cast 0 to void to fix warning
        math-emu/op-2.h: Use statement expressions to prevent negative constant shift
        nds32: support denormalized result through FP emulator
        nds32: Support FP emulation
        nds32: nds32 FPU port
        nds32: Remove duplicated include from pm.c
        nds32: Power management for nds32
        nds32: Add document for NDS32 PMU.
        nds32: Add perf call-graph support.
        nds32: Perf porting
        nds32: Fix bug in bitfield.h
        nds32: Fix gcc 8.0 compiler option incompatible.
        nds32: Fill all TLB entries with kernel image mapping
        nds32: Remove the redundant assignment
      889bb743
    • Linus Torvalds's avatar
      Merge tag 'linux-kselftest-4.21-rc1' of... · 903b77c6
      Linus Torvalds authored
      Merge tag 'linux-kselftest-4.21-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest
      
      Pull Kselftest updates from Shuah Khan:
      
       - fixes and improvements to the framework, and individual tests
      
       - a new media test for IR encoders from Sean Young
      
       - a new watchdog test option to find time left on a timer
      
      * tag 'linux-kselftest-4.21-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest:
        selftests: Fix test errors related to lib.mk khdr target
        fix dma-buf/udmabuf selftest
        selftests: watchdog: fix spelling mistake "experies" -> "expires"
        selftests: watchdog: Add gettimeleft command line arg
        selftests: do not macro-expand failed assertion expressions
        selftests/ftrace: Fix invalid SPDX identifiers
        selftests: gpio: Find libmount with pkg-config if available
        selftests: firmware: add CONFIG_FW_LOADER_USER_HELPER_FALLBACK to config
        selftests: firmware: remove use of non-standard diff -Z option
        media: rc: self test for IR encoders and decoders
      903b77c6
    • Linus Torvalds's avatar
      Merge tag 'char-misc-4.21-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc · 457fa346
      Linus Torvalds authored
      Pull char/misc driver updates from Greg KH:
       "Here is the big set of char and misc driver patches for 4.21-rc1.
      
        Lots of different types of driver things in here, as this tree seems
        to be the "collection of various driver subsystems not big enough to
        have their own git tree" lately.
      
        Anyway, some highlights of the changes in here:
      
         - binderfs: is it a rule that all driver subsystems will eventually
           grow to have their own filesystem? Binder now has one to handle the
           use of it in containerized systems.
      
           This was discussed at the Plumbers conference a few months ago and
           knocked into mergable shape very fast by Christian Brauner. Who
           also has signed up to be another binder maintainer, showing a
           distinct lack of good judgement :)
      
         - binder updates and fixes
      
         - mei driver updates
      
         - fpga driver updates and additions
      
         - thunderbolt driver updates
      
         - soundwire driver updates
      
         - extcon driver updates
      
         - nvmem driver updates
      
         - hyper-v driver updates
      
         - coresight driver updates
      
         - pvpanic driver additions and reworking for more device support
      
         - lp driver updates. Yes really, it's _finally_ moved to the proper
           parallal port driver model, something I never thought I would see
           happen. Good stuff.
      
         - other tiny driver updates and fixes.
      
        All of these have been in linux-next for a while with no reported
        issues"
      
      * tag 'char-misc-4.21-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc: (116 commits)
        MAINTAINERS: add another Android binder maintainer
        intel_th: msu: Fix an off-by-one in attribute store
        stm class: Add a reference to the SyS-T document
        stm class: Fix a module refcount leak in policy creation error path
        char: lp: use new parport device model
        char: lp: properly count the lp devices
        char: lp: use first unused lp number while registering
        char: lp: detach the device when parallel port is removed
        char: lp: introduce list to save port number
        bus: qcom: remove duplicated include from qcom-ebi2.c
        VMCI: Use memdup_user() rather than duplicating its implementation
        char/rtc: Use of_node_name_eq for node name comparisons
        misc: mic: fix a DMA pool free failure
        ptp: fix an IS_ERR() vs NULL check
        genwqe: Fix size check
        binder: implement binderfs
        binder: fix use-after-free due to ksys_close() during fdget()
        bus: fsl-mc: remove duplicated include files
        bus: fsl-mc: explicitly define the fsl_mc_command endianness
        misc: ti-st: make array read_ver_cmd static, shrinks object size
        ...
      457fa346
    • Linus Torvalds's avatar
      Merge tag 'driver-core-4.21-rc1' of... · b07039b7
      Linus Torvalds authored
      Merge tag 'driver-core-4.21-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core
      
      Pull driver core updates from Greg KH:
       "Here is the "big" set of driver core patches for 4.21-rc1.
      
        It's not really big, just a number of small changes for some reported
        issues, some documentation updates to hopefully make it harder for
        people to abuse the driver model, and some other minor cleanups.
      
        All of these have been in linux-next for a while with no reported
        issues"
      
      * tag 'driver-core-4.21-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core:
        mm, memory_hotplug: update a comment in unregister_memory()
        component: convert to DEFINE_SHOW_ATTRIBUTE
        sysfs: Disable lockdep for driver bind/unbind files
        driver core: Add missing dev->bus->need_parent_lock checks
        kobject: return error code if writing /sys/.../uevent fails
        driver core: Move async_synchronize_full call
        driver core: platform: Respect return code of platform_device_register_full()
        kref/kobject: Improve documentation
        drivers/base/memory.c: Use DEVICE_ATTR_RO and friends
        driver core: Replace simple_strto{l,ul} by kstrtou{l,ul}
        kernfs: Improve kernfs_notify() poll notification latency
        kobject: Fix warnings in lib/kobject_uevent.c
        kobject: drop unnecessary cast "%llu" for u64
        driver core: fix comments for device_block_probing()
        driver core: Replace simple_strtol by kstrtoint
      b07039b7
    • Linus Torvalds's avatar
      Merge tag 'staging-4.21-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging · 02061181
      Linus Torvalds authored
      Pull staging/IIO driver updates from Greg KH:
       "Here is the big staging and iio driver pull request for 4.21-rc1.
      
        Lots and lots of tiny patches here, nothing major at all. Which is
        good, tiny cleanups is nice to see. No new huge driver removal or
        addition, this release cycle, although there are lots of good IIO
        driver changes, addtions, and movement from staging into the "real"
        part of the kernel, which is always great.
      
        Full details are in the shortlog, and all of these have been in
        linux-next for a while with no reported issues"
      
      * tag 'staging-4.21-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging: (553 commits)
        staging: mt7621-mmc: Correct spelling mistakes in comments
        staging: wilc1000: fix missing read_write setting when reading data
        mt7621-mmc: char * array declaration might be better as static const
        mt7621-mmc: return statement in void function unnecessary
        mt7621-mmc: Alignment should match open parenthesis
        mt7621-mmc: Removed unnecessary blank lines
        mt7621-mmc: Fix some coding style issues
        staging: android: ashmem: doc: Fix spelling
        staging: rtl8188eu: cleanup brace coding style issues
        staging: rtl8188eu: add spaces around '&' in rtw_mlme_ext.c
        staging: rtl8188eu: change return type of is_basicrate() to bool
        staging: rtl8188eu: simplify null array initializations
        staging: rtl8188eu: change order of declarations to improve readability
        staging: rtl8188eu: make some arrays static in rtw_mlme_ext.c
        staging: rtl8188eu: constify some arrays
        staging: rtl8188eu: convert unsigned char arrays to u8
        staging: rtl8188eu: remove redundant declaration in rtw_mlme_ext.c
        staging: rtl8188eu: remove unused arrays WFD_OUI and WMM_INFO_OUI
        staging: rtl8188eu: remove unnecessary parentheses in rtw_mlme_ext.c
        staging: rtl8188eu: remove unnecessary comments in rtw_mlme_ext.c
        ...
      02061181
    • Linus Torvalds's avatar
      Merge tag 'tty-4.21-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty · 117eda8f
      Linus Torvalds authored
      Pull tty/serial driver updates from Greg KH:
       "Here is the large TTY/Serial driver set of patches for 4.21-rc1.
      
        A number of small serial driver changes along with some good tty core
        fixes for long-reported issues with locking. There is also a new
        console font added to the tree, for high-res screens, so that should
        be helpful for many.
      
        The last patch in the series is a revert of an older one in the tree,
        it came late but it resolves a reported issue that linux-next was
        having for some people.
      
        Full details are in the shortlog, and all of these, with the exception
        of the revert, have been in linux-next for a while with no reported
        issues"
      
      * tag 'tty-4.21-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty: (85 commits)
        Revert "serial: 8250: Default SERIAL_OF_PLATFORM to SERIAL_8250"
        serial: sccnxp: Allow to use non-standard baud rates
        serial: sccnxp: Adds a delay between sequential read/write cycles
        tty: serial: qcom_geni_serial: Fix UART hang
        tty: serial: qcom_geni_serial: Fix wrap around of TX buffer
        serial: max310x: Fix tx_empty() callback
        dt-bindings: serial: sh-sci: Document r8a774c0 bindings
        dt-bindings: serial: sh-sci: Document r8a774a1 bindings
        Fonts: New Terminus large console font
        dt-bindings: serial: lpuart: add imx8qxp compatible string
        serial: uartps: Fix interrupt mask issue to handle the RX interrupts properly
        serial: uartps: Fix error path when alloc failed
        serial: uartps: Check if the device is a console
        serial: uartps: Add the device_init_wakeup
        tty: serial: samsung: Increase maximum baudrate
        tty: serial: samsung: Properly set flags in autoCTS mode
        tty: Use of_node_name_{eq,prefix} for node name comparisons
        tty/serial: do not free trasnmit buffer page under port lock
        serial: 8250: Rate limit serial port rx interrupts during input overruns
        dt-bindings: serial: 8250: Add rate limit for serial port input overruns
        ...
      117eda8f
    • Linus Torvalds's avatar
      Merge tag 'usb-4.21-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb · c0ea81b4
      Linus Torvalds authored
      Pull USB/PHY updates from Greg KH:
       "Here is the big set of USB and PHY driver patches for 4.21-rc1.
      
        All of the usual bits are in here:
      
        - loads of USB gadget driver updates and additions
      
        - new device ids
      
        - phy driver updates
      
        - xhci reworks and new features
      
        - typec updates
      
        Full details are in the shortlog.
      
        All of these have been in linux-next for a long time with no reported
        issues"
      
      * tag 'usb-4.21-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (142 commits)
        USB: serial: option: add Fibocom NL678 series
        cdc-acm: fix abnormal DATA RX issue for Mediatek Preloader.
        usb: r8a66597: Fix a possible concurrency use-after-free bug in r8a66597_endpoint_disable()
        usb: typec: tcpm: Extend the matching rules on PPS APDO selection
        usb: typec: Improve Alt Mode documentation
        usb: musb: dsps: fix runtime pm for peripheral mode
        usb: musb: dsps: fix otg state machine
        USB: serial: pl2303: add ids for Hewlett-Packard HP POS pole displays
        usb: renesas_usbhs: add support for RZ/G2E
        usb: ehci-omap: Fix deferred probe for phy handling
        usb: roles: Add a description for the class to Kconfig
        usb: renesas_usbhs: mark PM functions as __maybe_unused
        usb: core: Remove unnecessary memset()
        usb: host: isp1362-hcd: convert to DEFINE_SHOW_ATTRIBUTE
        phy: qcom-qmp: Expose provided clocks to DT
        dt-bindings: phy-qcom-qmp: Move #clock-cells to child
        phy: qcom-qmp: Utilize fully-specified DT registers
        dt-bindings: phy-qcom-qmp: Fix register underspecification
        phy: ti: fix semicolon.cocci warnings
        phy: dphy: Add configuration helpers
        ...
      c0ea81b4
    • Linus Torvalds's avatar
      Merge tag 'hsi-for-4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-hsi · 4d6ad6fb
      Linus Torvalds authored
      Pull HSI update from Sebastian Reichel:
       "omap-ssi: use DEFINE_SHOW_ATTRIBUTE"
      
      * tag 'hsi-for-4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-hsi:
        HSI: omap_ssi: Change to use DEFINE_SHOW_ATTRIBUTE macro
      4d6ad6fb
    • Linus Torvalds's avatar
      Merge tag 'for-v4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply · 579a7003
      Linus Torvalds authored
      Pull power supply and reset updates from Sebastian Reichel:
      
       - New core support:
          - battery internal resistance
          - battery OCV capacity lookup table
          - support for custom sysfs attributes
      
       - Convert all drivers to use power-supply core support for custom sysfs
         attributes
      
       - bq24190-charger: bq24196 support
      
       - axp20x-charger: AXP813 support
      
       - sc27xx-battery: new fuel gauge driver
      
       - gpio-poweroff: support for specific active and inactive delays
      
       - Misc fixes
      
      * tag 'for-v4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply: (53 commits)
        power: supply: bq25890: fix BAT_COMP field definition
        power: supply: gpio-charger: Do not use deprecated POWER_SUPPLY_TYPE_USB_*
        power: supply: ds2781: switch to devm_power_supply_register
        power: supply: ds2780: switch to devm_power_supply_register
        power: supply: ds2781: fix race-condition in bin attribute registration
        power: supply: ds2780: fix race-condition in bin attribute registration
        power: supply: pcf50633: fix race-condition in sysfs registration
        power: supply: charger-manager: fix race-condition in sysfs registration
        power: supply: charger-manager: simplify generation of sysfs attribute group name
        power: supply: bq24257: fix race-condition in sysfs registration
        power: supply: bq24190_charger: fix race-condition in sysfs registration
        power: supply: lp8788: fix race-condition in sysfs registration
        power: supply: ds2781: fix race-condition in sysfs registration
        power: supply: ds2780: fix race-condition in sysfs registration
        power: supply: bq2415x: fix race-condition in sysfs registration
        power: supply: core: add support for custom sysfs attributes
        power: supply: sc27xx: Save last battery capacity
        power: reset: at91-poweroff: move shdwc related data to one structure
        power: supply: sc27xx: Add suspend/resume interfaces
        power: supply: sc27xx: Add fuel gauge low voltage alarm
        ...
      579a7003
    • Linus Torvalds's avatar
      Merge tag 'devicetree-for-4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux · 030672ae
      Linus Torvalds authored
      Pull Devicetree updates from Rob Herring:
       "The biggest highlight here is the start of using json-schema for DT
        bindings. Being able to validate bindings has been discussed for years
        with little progress.
      
         - Initial support for DT bindings using json-schema language. This is
           the start of converting DT bindings from free-form text to a
           structured format.
      
         - Reworking of initrd address initialization. This moves to using the
           phys address instead of virt addr in the DT parsing code. This
           rework was motivated by CONFIG_DEV_BLK_INITRD causing unnecessary
           rebuilding of lots of files.
      
         - Fix stale phandle entries in phandle cache
      
         - DT overlay validation improvements. This exposed several memory
           leak bugs which have been fixed.
      
         - Use node name and device_type helper functions in DT code
      
         - Last remaining conversions to using %pOFn printk specifier instead
           of device_node.name directly
      
         - Create new common RTC binding doc and move all trivial RTC devices
           out of trivial-devices.txt.
      
         - New bindings for Freescale MAG3110 magnetometer, Cadence Sierra
           PHY, and Xen shared memory
      
         - Update dtc to upstream version v1.4.7-57-gf267e674d145"
      
      * tag 'devicetree-for-4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux: (68 commits)
        of: __of_detach_node() - remove node from phandle cache
        of: of_node_get()/of_node_put() nodes held in phandle cache
        gpio-omap.txt: add reg and interrupts properties
        dt-bindings: mrvl,intc: fix a trivial typo
        dt-bindings: iio: magnetometer: add dt-bindings for freescale mag3110
        dt-bindings: Convert trivial-devices.txt to json-schema
        dt-bindings: arm: mrvl: amend Browstone compatible string
        dt-bindings: arm: Convert Tegra board/soc bindings to json-schema
        dt-bindings: arm: Convert ZTE board/soc bindings to json-schema
        dt-bindings: arm: Add missing Xilinx boards
        dt-bindings: arm: Convert Xilinx board/soc bindings to json-schema
        dt-bindings: arm: Convert VIA board/soc bindings to json-schema
        dt-bindings: arm: Convert ST STi board/soc bindings to json-schema
        dt-bindings: arm: Convert SPEAr board/soc bindings to json-schema
        dt-bindings: arm: Convert CSR SiRF board/soc bindings to json-schema
        dt-bindings: arm: Convert QCom board/soc bindings to json-schema
        dt-bindings: arm: Convert TI nspire board/soc bindings to json-schema
        dt-bindings: arm: Convert TI davinci board/soc bindings to json-schema
        dt-bindings: arm: Convert Calxeda board/soc bindings to json-schema
        dt-bindings: arm: Convert Altera board/soc bindings to json-schema
        ...
      030672ae
    • Linus Torvalds's avatar
      Merge tag 'gpio-v4.21-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio · 24dc8363
      Linus Torvalds authored
      Pull GPIO updates from Linus Walleij:
       "This is the bulk of GPIO changes for the v4.21 kernel series.
      
        Core changes:
      
         - Some core changes are already in outside of this pull request as
           they came through the regulator tree, most notably
           devm_gpiod_unhinge() that removes devres refcount management from a
           GPIO descriptor. This is needed in subsystems such as regulators
           where the regulator core need to take over the reference counting
           and lifecycle management for a GPIO descriptor.
      
         - We dropped devm_gpiochip_remove() and devm_gpio_chip_match() as
           nothing needs it. We can bring it back if need be.
      
         - Add a global TODO so people see where we are going. This helps
           setting the direction now that we are two GPIO maintainers.
      
         - Handle the MMC CD/WP properties in the device tree core. (The bulk
           of patches activating this code is already merged through the
           MMC/SD tree.)
      
         - Augment gpiochip_request_own_desc() to pass a flag so we as
           gpiochips can request lines as active low or open drain etc even
           from ourselves.
      
        New drivers:
      
         - New driver for Cadence GPIO blocks.
      
         - New driver for Atmel SAMA5D2 PIOBU GPIO lines.
      
        Driver improvements:
      
         - A major refactoring of the PCA953x driver - this driver has been
           around for ages, and is now modernized to reduce code duplication
           that has stacked up and is using regmap to read write and cache
           registers.
      
         - Intel drivers are now maintained in a separate tree and start with
           a round of cleanups and unifications"
      
      * tag 'gpio-v4.21-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio: (99 commits)
        gpio: sama5d2-piobu: Depend on OF_GPIO
        gpio: Add Cadence GPIO driver
        dt-bindings: gpio: Add bindings for Cadence GPIO
        gpiolib-acpi: remove unused variable 'err', cleans up build warning
        gpio: mxs: read pin level directly instead of using .get
        gpio: aspeed: remove duplicated statement
        gpio: add driver for SAMA5D2 PIOBU pins
        dt-bindings: arm: atmel: describe SECUMOD usage as a GPIO controller
        gpio/mmc/of: Respect polarity in the device tree
        dt-bindings: gpio: rcar: Add r8a774c0 (RZ/G2E) support
        memory: omap-gpmc: Get the header of the enum
        ARM: omap1: Fix new user of gpiochip_request_own_desc()
        gpio: pca953x: Add regmap dependency for PCA953x driver
        gpio: raspberrypi-exp: decrease refcount on firmware dt node
        gpiolib: Fix return value of gpio_to_desc() stub if !GPIOLIB
        gpio: pca953x: Restore registers after suspend/resume cycle
        gpio: pca953x: Zap single use of pca953x_read_single()
        gpio: pca953x: Zap ad-hoc reg_output cache
        gpio: pca953x: Zap ad-hoc reg_direction cache
        gpio: pca953x: Perform basic regmap conversion
        ...
      24dc8363
    • Linus Torvalds's avatar
      Merge tag 'drm-next-2018-12-27' of git://anongit.freedesktop.org/drm/drm · 7e59fad9
      Linus Torvalds authored
      Pull more drm updates from Dave Airlie:
       "Daniel collected a couple of pulls after I want on holidays, back for
        a couple of days, so may as well send them out.
      
        This has exynos and etnaviv work for 4.21.
      
        exynos:
         - plane alpha and blending configurability
      
        etnaviv:
         - mostly cleanups in prep for new features"
      
      * tag 'drm-next-2018-12-27' of git://anongit.freedesktop.org/drm/drm:
        drm/etnaviv: remove lastctx member from gpu struct
        drm/etnaviv: replace header include with forward declaration
        drm/etnaviv: remove unnecessary local irq disable
        drm/exynos: fimd: Make pixel blend mode configurable
        drm/exynos: fimd: Make plane alpha configurable
        drm/etnaviv: Replace drm_dev_unref with drm_dev_put
        drm/etnaviv: consolidate hardware fence handling in etnaviv_gpu
        drm/etnaviv: kill active fence tracking
      7e59fad9
    • Linus Torvalds's avatar
      Merge tag 'hwmon-for-v4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging · 87540403
      Linus Torvalds authored
      Pull hwmon updates from Guenter Roeck:
       "The big change in this series is for the most part automatic:
        Introducing SENSOR[_DEVICE]_ATTR_{RO,RW,WO} variants and conversion of
        various drivers to use it. This is similar to DEVICE_ATTR variants.
      
        Other than that, we have
      
         - Some conversions of S_<PERMS> with octal values, also automated
      
         - Added support for Hygon Dhyana CPUs to k10temp driver
      
         - Added support for STLM75 to lm75 driver
      
         - B57891S0103 to ntc_thermistor
      
         - Added pm-runtime support to ina3221 driver
      
         - Support for PowerPC On-Chip Controller (OCC)
      
         - Various minor bug fices and improvements"
      
      * tag 'hwmon-for-v4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging: (80 commits)
        hwmon: (lm80) fix a missing check of bus read in lm80 probe
        hwmon: (lm80) fix a missing check of the status of SMBus read
        hwmon: (asus_atk0110) Fix debugfs_simple_attr.cocci warnings
        hwmon: (ftsteutates) Use permission specific SENSOR[_DEVICE]_ATTR variants
        hwmon: (fschmd) Use permission specific SENSOR[_DEVICE]_ATTR variants
        hwmon: (emc6w201) Use permission specific SENSOR[_DEVICE]_ATTR variants
        hwmon: (emc2103) Use permission specific SENSOR[_DEVICE]_ATTR variants
        hwmon: (emc1403) Use permission specific SENSOR[_DEVICE]_ATTR variants
        hwmon: (ds620) Use permission specific SENSOR[_DEVICE]_ATTR variants
        hwmon: (ds1621) Use permission specific SENSOR[_DEVICE]_ATTR variants
        hwmon: (dell-smm-hwmon) Use permission specific SENSOR[_DEVICE]_ATTR variants
        hwmon: (da9055-hwmon) Use permission specific SENSOR[_DEVICE]_ATTR variants
        hwmon: (da9052-hwmon) Use permission specific SENSOR[_DEVICE]_ATTR variants
        hwmon: (coretemp) Replace S_<PERMS> with octal values
        hwmon: (asus_atk0110) Replace S_<PERMS> with octal values
        hwmon: (aspeed-pwm-tacho) Use permission specific SENSOR[_DEVICE]_ATTR variants
        hwmon: (applesmc) Replace S_<PERMS> with octal values
        hwmon: (amc6821) Use permission specific SENSOR[_DEVICE]_ATTR variants
        hwmon: (adt7x10) Use permission specific SENSOR[_DEVICE]_ATTR variants
        hwmon: (adt7475) Use permission specific SENSOR[_DEVICE]_ATTR variants
        ...
      87540403
    • Linus Torvalds's avatar
      Merge tag 'vfio-v4.21-rc1' of git://github.com/awilliam/linux-vfio · 1984f65c
      Linus Torvalds authored
      Pull VFIO updates from Alex Williamson:
      
       - Replace global vfio-pci lock with per bus lock to allow concurrent
         open and release (Alex Williamson)
      
       - Declare mdev function as static (Paolo Cretaro)
      
       - Convert char to u8 in mdev/mtty sample driver (Nathan Chancellor)
      
      * tag 'vfio-v4.21-rc1' of git://github.com/awilliam/linux-vfio:
        vfio-mdev/samples: Use u8 instead of char for handle functions
        vfio/mdev: add static modifier to add_mdev_supported_type
        vfio/pci: Parallelize device open and release
      1984f65c
    • Linus Torvalds's avatar
      Merge branch 'akpm' (patches from Andrew) · f346b0be
      Linus Torvalds authored
      Merge misc updates from Andrew Morton:
      
       - large KASAN update to use arm's "software tag-based mode"
      
       - a few misc things
      
       - sh updates
      
       - ocfs2 updates
      
       - just about all of MM
      
      * emailed patches from Andrew Morton <akpm@linux-foundation.org>: (167 commits)
        kernel/fork.c: mark 'stack_vm_area' with __maybe_unused
        memcg, oom: notify on oom killer invocation from the charge path
        mm, swap: fix swapoff with KSM pages
        include/linux/gfp.h: fix typo
        mm/hmm: fix memremap.h, move dev_page_fault_t callback to hmm
        hugetlbfs: Use i_mmap_rwsem to fix page fault/truncate race
        hugetlbfs: use i_mmap_rwsem for more pmd sharing synchronization
        memory_hotplug: add missing newlines to debugging output
        mm: remove __hugepage_set_anon_rmap()
        include/linux/vmstat.h: remove unused page state adjustment macro
        mm/page_alloc.c: allow error injection
        mm: migrate: drop unused argument of migrate_page_move_mapping()
        blkdev: avoid migration stalls for blkdev pages
        mm: migrate: provide buffer_migrate_page_norefs()
        mm: migrate: move migrate_page_lock_buffers()
        mm: migrate: lock buffers before migrate_page_move_mapping()
        mm: migration: factor out code to compute expected number of page references
        mm, page_alloc: enable pcpu_drain with zone capability
        kmemleak: add config to select auto scan
        mm/page_alloc.c: don't call kasan_free_pages() at deferred mem init
        ...
      f346b0be
    • Linus Torvalds's avatar
      Merge tag 'mmc-v4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc · 00d59fde
      Linus Torvalds authored
      Pull MMC updates from Ulf Hansson:
       "This time, this pull request contains changes crossing subsystems and
        archs/platforms, which is mainly because of a bigger modernization of
        moving from legacy GPIO to GPIO descriptors for MMC (by Linus
        Walleij).
      
        Additionally, once again, I am funneling changes to
        drivers/misc/cardreader/* and drivers/memstick/* through my MMC tree,
        mostly due to that we lack a maintainer for these.
      
        Summary:
      
        MMC core:
         - Cleanup BKOPS support
         - Introduce MMC_CAP_SYNC_RUNTIME_PM
         - slot-gpio: Delete legacy slot GPIO handling
      
        MMC host:
         - alcor: Add new mmc host driver for Alcor Micro PCI based cardreader
         - bcm2835: Several improvements to better recover from errors
         - jz4740: Rework and fixup pre|post_req support
         - mediatek: Add support for SDIO IRQs
         - meson-gx: Improve clock phase management
         - meson-gx: Stop descriptor on errors
         - mmci: Complete the sbc error path by sending a stop command
         - renesas_sdhi/tmio: Fixup reset/resume operations
         - renesas_sdhi: Add support for r8a774c0 and R7S9210
         - renesas_sdhi: Whitelist R8A77990 SDHI
         - renesas_sdhi: Fixup eMMC HS400 compatibility issues for H3 and M3-W
         - rtsx_usb_sdmmc: Re-work card detection/removal support
         - rtsx_usb_sdmmc: Re-work runtime PM support
         - sdhci: Fix timeout loops for some variant drivers
         - sdhci: Improve support for error handling due to failing commands
         - sdhci-acpi/pci: Disable LED control for Intel BYT-based controllers
         - sdhci_am654: Add new SDHCI variant driver to support TI's AM654 SOCs
         - sdhci-of-esdhc: Add support for eMMC HS400 mode
         - sdhci-omap: Fixup reset support
         - sdhci-omap: Workaround errata regarding SDR104/HS200 tuning failures
         - sdhci-msm: Fixup sporadic write transfers issues for SDR104/HS200
         - sdhci-msm: Fixup dynamical clock gating issues
         - various: Complete converting all hosts into using slot GPIO descriptors
      
        Other:
         - Move GPIO mmc platform data for mips/sh/arm to GPIO descriptors
         - Add new Alcor Micro cardreader PCI driver
         - Support runtime power management for memstick rtsx_usb_ms driver
         - Use USB remote wakeups for card detection for rtsx_usb misc driver"
      
      * tag 'mmc-v4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc: (99 commits)
        mmc: mediatek: Add MMC_CAP_SDIO_IRQ support
        mmc: renesas_sdhi_internal_dmac: Whitelist r8a774c0
        dt-bindings: mmc: renesas_sdhi: Add r8a774c0 support
        mmc: core: Cleanup BKOPS support
        mmc: core: Drop redundant check in mmc_send_hpi_cmd()
        mmc: sdhci-omap: Workaround errata regarding SDR104/HS200 tuning failures (i929)
        dt-bindings: sdhci-omap: Add note for cpu_thermal
        mmc: sdhci-acpi: Disable LED control for Intel BYT-based controllers
        mmc: sdhci-pci: Disable LED control for Intel BYT-based controllers
        mmc: sdhci: Add quirk to disable LED control
        mmc: mmci: add variant property to set command stop bit
        misc: alcor_pci: fix spelling mistake "invailid" -> "invalid"
        mmc: meson-gx: add signal resampling
        mmc: meson-gx: align default phase on soc vendor tree
        mmc: meson-gx: remove useless lock
        mmc: meson-gx: make sure the descriptor is stopped on errors
        mmc: sdhci_am654: Add Initial Support for AM654 SDHCI driver
        dt-bindings: mmc: sdhci-of-arasan: Add deprecated message for AM65
        dt-bindings: mmc: sdhci-am654: Document bindings for the host controllers on TI's AM654 SOCs
        mmc: sdhci-msm: avoid unused function warning
        ...
      00d59fde
  5. 28 Dec, 2018 3 commits
    • Linus Torvalds's avatar
      Merge tag 'libnvdimm-for-4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm · 75f95da0
      Linus Torvalds authored
      Pull libnvdimm updates from Dan Williams:
       "The vast bulk of this update is the new support for the security
        capabilities of some nvdimms.
      
        The userspace tooling for this capability is still a work in progress,
        but the changes survive the existing libnvdimm unit tests. The changes
        also pass manual checkout on hardware and the new nfit_test emulation
        of the security capability.
      
        The touches of the security/keys/ files have received the necessary
        acks from Mimi and David. Those changes were necessary to allow for a
        new generic encrypted-key type, and allow the nvdimm sub-system to
        lookup key material referenced by the libnvdimm-sysfs interface.
      
        Summary:
      
         - Add support for the security features of nvdimm devices that
           implement a security model similar to ATA hard drive security. The
           security model supports locking access to the media at
           device-power-loss, to be unlocked with a passphrase, and
           secure-erase (crypto-scramble).
      
           Unlike the ATA security case where the kernel expects device
           security to be managed in a pre-OS environment, the libnvdimm
           security implementation allows key provisioning and key-operations
           at OS runtime. Keys are managed with the kernel's encrypted-keys
           facility to provide data-at-rest security for the libnvdimm key
           material. The usage model mirrors fscrypt key management, but is
           driven via libnvdimm sysfs.
      
         - Miscellaneous updates for api usage and comment fixes"
      
      * tag 'libnvdimm-for-4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm: (21 commits)
        libnvdimm/security: Quiet security operations
        libnvdimm/security: Add documentation for nvdimm security support
        tools/testing/nvdimm: add Intel DSM 1.8 support for nfit_test
        tools/testing/nvdimm: Add overwrite support for nfit_test
        tools/testing/nvdimm: Add test support for Intel nvdimm security DSMs
        acpi/nfit, libnvdimm/security: add Intel DSM 1.8 master passphrase support
        acpi/nfit, libnvdimm/security: Add security DSM overwrite support
        acpi/nfit, libnvdimm: Add support for issue secure erase DSM to Intel nvdimm
        acpi/nfit, libnvdimm: Add enable/update passphrase support for Intel nvdimms
        acpi/nfit, libnvdimm: Add disable passphrase support to Intel nvdimm.
        acpi/nfit, libnvdimm: Add unlock of nvdimm support for Intel DIMMs
        acpi/nfit, libnvdimm: Add freeze security support to Intel nvdimm
        acpi/nfit, libnvdimm: Introduce nvdimm_security_ops
        keys-encrypted: add nvdimm key format type to encrypted keys
        keys: Export lookup_user_key to external users
        acpi/nfit, libnvdimm: Store dimm id as a member to struct nvdimm
        libnvdimm, namespace: Replace kmemdup() with kstrndup()
        libnvdimm, label: Switch to bitmap_zalloc()
        ACPI/nfit: Adjust annotation for why return 0 if fail to find NFIT at start
        libnvdimm, bus: Check id immediately following ida_simple_get
        ...
      75f95da0
    • Linus Torvalds's avatar
      Merge tag 'for-4.21/dm-changes' of... · 4ed7bdc1
      Linus Torvalds authored
      Merge tag 'for-4.21/dm-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm
      
      Pull device mapper updates from Mike Snitzer:
      
       - Eliminate a couple indirect calls from bio-based DM core.
      
       - Fix DM to allow reads that exceed readahead limits by setting
         io_pages in the backing_dev_info.
      
       - A couple code cleanups in request-based DM.
      
       - Fix various DM targets to check for device sector overflow if
         CONFIG_LBDAF is not set.
      
       - Use u64 instead of sector_t to store iv_offset in DM crypt; sector_t
         isn't large enough on 32bit when CONFIG_LBDAF is not set.
      
       - Performance fixes to DM's kcopyd and the snapshot target focused on
         limiting memory use and workqueue stalls.
      
       - Fix typos in the integrity and writecache targets.
      
       - Log which algorithm is used for dm-crypt's encryption and
         dm-integrity's hashing.
      
       - Fix false -EBUSY errors in DM raid target's handling of check/repair
         messages.
      
       - Fix DM flakey target's corrupt_bio_byte feature to reliably corrupt
         the Nth byte in a bio's payload.
      
      * tag 'for-4.21/dm-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm:
        dm: do not allow readahead to limit IO size
        dm raid: fix false -EBUSY when handling check/repair message
        dm rq: cleanup leftover code from recently removed q->mq_ops branching
        dm verity: log the hash algorithm implementation
        dm crypt: log the encryption algorithm implementation
        dm integrity: fix spelling mistake in workqueue name
        dm flakey: Properly corrupt multi-page bios.
        dm: Check for device sector overflow if CONFIG_LBDAF is not set
        dm crypt: use u64 instead of sector_t to store iv_offset
        dm kcopyd: Fix bug causing workqueue stalls
        dm snapshot: Fix excessive memory usage and workqueue stalls
        dm bufio: update comment in dm-bufio.c
        dm writecache: fix typo in error msg for creating writecache_flush_thread
        dm: remove indirect calls from __send_changing_extent_only()
        dm mpath: only flush workqueue when needed
        dm rq: remove unused arguments from rq_completed()
        dm: avoid indirect call in __dm_make_request
      4ed7bdc1
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma · 5d24ae67
      Linus Torvalds authored
      Pull rdma updates from Jason Gunthorpe:
       "This has been a fairly typical cycle, with the usual sorts of driver
        updates. Several series continue to come through which improve and
        modernize various parts of the core code, and we finally are starting
        to get the uAPI command interface cleaned up.
      
         - Various driver fixes for bnxt_re, cxgb3/4, hfi1, hns, i40iw, mlx4,
           mlx5, qib, rxe, usnic
      
         - Rework the entire syscall flow for uverbs to be able to run over
           ioctl(). Finally getting past the historic bad choice to use
           write() for command execution
      
         - More functional coverage with the mlx5 'devx' user API
      
         - Start of the HFI1 series for 'TID RDMA'
      
         - SRQ support in the hns driver
      
         - Support for new IBTA defined 2x lane widths
      
         - A big series to consolidate all the driver function pointers into a
           big struct and have drivers provide a 'static const' version of the
           struct instead of open coding initialization
      
         - New 'advise_mr' uAPI to control device caching/loading of page
           tables
      
         - Support for inline data in SRPT
      
         - Modernize how umad uses the driver core and creates cdev's and
           sysfs files
      
         - First steps toward removing 'uobject' from the view of the drivers"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma: (193 commits)
        RDMA/srpt: Use kmem_cache_free() instead of kfree()
        RDMA/mlx5: Signedness bug in UVERBS_HANDLER()
        IB/uverbs: Signedness bug in UVERBS_HANDLER()
        IB/mlx5: Allocate the per-port Q counter shared when DEVX is supported
        IB/umad: Start using dev_groups of class
        IB/umad: Use class_groups and let core create class file
        IB/umad: Refactor code to use cdev_device_add()
        IB/umad: Avoid destroying device while it is accessed
        IB/umad: Simplify and avoid dynamic allocation of class
        IB/mlx5: Fix wrong error unwind
        IB/mlx4: Remove set but not used variable 'pd'
        RDMA/iwcm: Don't copy past the end of dev_name() string
        IB/mlx5: Fix long EEH recover time with NVMe offloads
        IB/mlx5: Simplify netdev unbinding
        IB/core: Move query port to ioctl
        RDMA/nldev: Expose port_cap_flags2
        IB/core: uverbs copy to struct or zero helper
        IB/rxe: Reuse code which sets port state
        IB/rxe: Make counters thread safe
        IB/mlx5: Use the correct commands for UMEM and UCTX allocation
        ...
      5d24ae67