Skip to content
  1. Aug 21, 2018
    • Linus Torvalds's avatar
      Merge tag 'please-pull-noboot' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux · 778a3395
      Linus Torvalds authored
      Pull ia64 NO_BOOTMEM conversion from Tony Luck:
       "Mike Rapoport kindly fixed up ia64 to work with NO_BOOTMEM"
      
      * tag 'please-pull-noboot' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux:
        ia64: switch to NO_BOOTMEM
        ia64: use mem_data to detect nodes' minimal and maximal PFNs
        ia64: remove unused num_dma_physpages member from 'struct early_node_data'
        ia64: contig/paging_init: reduce code duplication
      778a3395
    • Linus Torvalds's avatar
      Merge tag 'linux-kselftest-4.19-rc1' of... · 6b2edf27
      Linus Torvalds authored
      Merge tag 'linux-kselftest-4.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest
      
      Pull Kselftest update from Shuah Khan:
      
       - add cgroup core selftests
      
       - fix compile warnings in android ion test
      
       - fix to bugs in exclude and skip paths in vDSO test
      
       - remove obsolete config options
      
       - add missing .gitignore file
      
      * tag 'linux-kselftest-4.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest:
        selftests/ftrace: Fix kprobe string testcase to not probe notrace function
        selftests: mount: remove no longer needed config option
        selftests: cgroup: add gitignore file
        Add cgroup core selftests
        selftests: vDSO - fix to return KSFT_SKIP when test couldn't be run
        selftests: vDSO - fix to exclude x86 test on non-x86 platforms
        selftests/android: initialize heap_type to avoid compiling warning
      6b2edf27
    • Linus Torvalds's avatar
      Merge tag 'trace-v4.19' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace · 7140ad38
      Linus Torvalds authored
      Pull tracing updates from Steven Rostedt:
      
       - Restructure of lockdep and latency tracers
      
         This is the biggest change. Joel Fernandes restructured the hooks
         from irqs and preemption disabling and enabling. He got rid of a lot
         of the preprocessor #ifdef mess that they caused.
      
         He turned both lockdep and the latency tracers to use trace events
         inserted in the preempt/irqs disabling paths. But unfortunately,
         these started to cause issues in corner cases. Thus, parts of the
         code was reverted back to where lockdep and the latency tracers just
         get called directly (without using the trace events). But because the
         original change cleaned up the code very nicely we kept that, as well
         as the trace events for preempt and irqs disabling, but they are
         limited to not being called in NMIs.
      
       - Have trace events use SRCU for "rcu idle" calls. This was required
         for the preempt/irqs off trace events. But it also had to not allow
         them to be called in NMI context. Waiting till Paul makes an NMI safe
         SRCU API.
      
       - New notrace SRCU API to allow trace events to use SRCU.
      
       - Addition of mcount-nop option support
      
       - SPDX headers replacing GPL templates.
      
       - Various other fixes and clean ups.
      
       - Some fixes are marked for stable, but were not fully tested before
         the merge window opened.
      
      * tag 'trace-v4.19' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace: (44 commits)
        tracing: Fix SPDX format headers to use C++ style comments
        tracing: Add SPDX License format tags to tracing files
        tracing: Add SPDX License format to bpf_trace.c
        blktrace: Add SPDX License format header
        s390/ftrace: Add -mfentry and -mnop-mcount support
        tracing: Add -mcount-nop option support
        tracing: Avoid calling cc-option -mrecord-mcount for every Makefile
        tracing: Handle CC_FLAGS_FTRACE more accurately
        Uprobe: Additional argument arch_uprobe to uprobe_write_opcode()
        Uprobes: Simplify uprobe_register() body
        tracepoints: Free early tracepoints after RCU is initialized
        uprobes: Use synchronize_rcu() not synchronize_sched()
        tracing: Fix synchronizing to event changes with tracepoint_synchronize_unregister()
        ftrace: Remove unused pointer ftrace_swapper_pid
        tracing: More reverting of "tracing: Centralize preemptirq tracepoints and unify their usage"
        tracing/irqsoff: Handle preempt_count for different configs
        tracing: Partial revert of "tracing: Centralize preemptirq tracepoints and unify their usage"
        tracing: irqsoff: Account for additional preempt_disable
        trace: Use rcu_dereference_raw for hooks from trace-event subsystem
        tracing/kprobes: Fix within_notrace_func() to check only notrace functions
        ...
      7140ad38
    • Linus Torvalds's avatar
      Merge tag 'ceph-for-4.19-rc1' of git://github.com/ceph/ceph-client · 0a78ac4b
      Linus Torvalds authored
      Pull ceph updates from Ilya Dryomov:
       "The main things are support for cephx v2 authentication protocol and
        basic support for rbd images within namespaces (myself).
      
        Also included are y2038 conversion patches from Arnd, a pile of
        miscellaneous fixes from Chengguang and Zheng's feature bit
        infrastructure for the filesystem"
      
      * tag 'ceph-for-4.19-rc1' of git://github.com/ceph/ceph-client: (40 commits)
        ceph: don't drop message if it contains more data than expected
        ceph: support cephfs' own feature bits
        crush: fix using plain integer as NULL warning
        libceph: remove unnecessary non NULL check for request_key
        ceph: refactor error handling code in ceph_reserve_caps()
        ceph: refactor ceph_unreserve_caps()
        ceph: change to void return type for __do_request()
        ceph: compare fsc->max_file_size and inode->i_size for max file size limit
        ceph: add additional size check in ceph_setattr()
        ceph: add additional offset check in ceph_write_iter()
        ceph: add additional range check in ceph_fallocate()
        ceph: add new field max_file_size in ceph_fs_client
        libceph: weaken sizeof check in ceph_x_verify_authorizer_reply()
        libceph: check authorizer reply/challenge length before reading
        libceph: implement CEPHX_V2 calculation mode
        libceph: add authorizer challenge
        libceph: factor out encrypt_authorizer()
        libceph: factor out __ceph_x_decrypt()
        libceph: factor out __prepare_write_connect()
        libceph: store ceph_auth_handshake pointer in ceph_connection
        ...
      0a78ac4b
    • Linus Torvalds's avatar
      Merge tag 'rtc-4.19' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux · bfebeb16
      Linus Torvalds authored
      Pull RTC updates from Alexandre Belloni:
       "It is now possible to add custom sysfs attributes while avoiding a
        possible race condition. Unused code has been removed resulting in a
        nice reduction of the code base. And more drivers have been switched
        to SPDX by their maintainers.
      
       Summary:
      
        Subsystem:
         - new helpers to add custom sysfs attributes
         - struct rtc_task removal along with rtc_irq_[un]register()
         - rtc_irq_set_state and rtc_irq_set_freq are not exported anymore
      
        Drivers:
         - armada38x: reset after rtc power loss
         - ds1307: now supports m41t11
         - isl1208: now supports isl1219 and tamper detection
         - pcf2127: internal SRAM support"
      
      * tag 'rtc-4.19' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux: (34 commits)
        rtc: ds1307: simplify hwmon config
        rtc: s5m: Add SPDX license identifier
        rtc: maxim: Add SPDX license identifiers
        rtc: isl1219: add device tree documentation
        rtc: isl1208: set ev-evienb bit from device tree
        rtc: isl1208: Add "evdet" interrupt source for isl1219
        rtc: isl1208: add support for isl1219 with tamper detection
        rtc: sysfs: facilitate attribute add to rtc device
        rtc: remove struct rtc_task
        char: rtc: remove task handling
        rtc: pcf85063: preserve control register value between stop and start
        rtc: sh: remove unused variable rtc_dev
        rtc: unexport rtc_irq_set_*
        rtc: simplify rtc_irq_set_state/rtc_irq_set_freq
        rtc: remove irq_task and irq_task_lock
        rtc: remove rtc_irq_register/rtc_irq_unregister
        rtc: sh: remove dead code
        rtc: sa1100: don't set PIE frequency
        rtc: ds1307: support m41t11 variant
        rtc: ds1307: fix data pointer to m41t0
        ...
      bfebeb16
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/livepatching · 3933ec73
      Linus Torvalds authored
      Pull livepatching updates from Jiri Kosina:
       "Code cleanups from Kamalesh Babulal"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/livepatching:
        livepatch: Validate module/old func name length
        livepatch: Remove reliable stacktrace check in klp_try_switch_task()
      3933ec73
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid · 7a324b3f
      Linus Torvalds authored
      Pull HID updates from Jiri Kosina:
      
       - touch_max detection improvements and quirk handling fixes in wacom
         driver from Jason Gerecke and Ping Cheng
      
       - Palm rejection from Dmitry Torokhov and _dial support from Benjamin
         Tissoires for hid-multitouch driver
      
       - Low voltage support for i2c-hid driver from Stephen Boyd
      
       - Guitar-Hero support from Nicolas Adenis-Lamarre
      
       - other assorted small fixes and device ID additions
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid: (40 commits)
        HID: intel_ish-hid: tx_buf memory leak on probe/remove
        HID: intel-ish-hid: Prevent loading of driver on Mehlow
        HID: cougar: Add support for the Cougar 500k Gaming Keyboard
        HID: cougar: make compare_device_paths reusable
        HID: intel-ish-hid: remove redundant variable num_frags
        HID: multitouch: handle palm for touchscreens
        HID: multitouch: touchscreens also use confidence reports
        HID: multitouch: report MT_TOOL_PALM for non-confident touches
        HID: microsoft: support the Surface Dial
        HID: core: do not upper bound the collection stack
        HID: input: enable Totem on the Dell Canvas 27
        HID: multitouch: remove one copy of values
        HID: multitouch: ditch mt_report_id
        HID: multitouch: store a per application quirks value
        HID: multitouch: Store per collection multitouch data
        HID: multitouch: make sure the static list of class is not changed
        input: add MT_TOOL_DIAL
        HID: elan: Add support for touchpad on the Toshiba Click Mini L9W
        HID: elan: Add USB-id for HP x2 10-n000nd touchpad
        HID: elan: Add a flag for selecting if the touchpad has a LED
        ...
      7a324b3f
    • Linus Torvalds's avatar
      Merge tag 'backlight-next-4.19' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/backlight · 61c4fc1e
      Linus Torvalds authored
      Pull backlight updates from Lee Jones:
       "Core Framework:
         - Remove unused/obsolete code/comments
      
        New Functionality:
         - Allow less granular brightness specification for high-res PWMs; pwm_bl
         - Align brightness {inc,dec}rements with that perceived by the human-eye; pwm_bl
      
        Fix-ups:
         - Prepare for the introduction of -Wimplicit-fall-through; adp8860_bl
      
        Bug Fixes:
         - Fix uninitialised variable; pwm_bl"
      
      * tag 'backlight-next-4.19' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/backlight:
        backlight: pwm_bl: Fix uninitialized variable
        backlight: adp8860: Mark expected switch fall-through
        backlight: Remove obsolete comment for ->state
        dt-bindings: pwm-backlight: Move brightness-levels to optional
        backlight: pwm_bl: Compute brightness of LED linearly to human eye
        dt-bindings: pwm-backlight: Add a num-interpolation-steps property
        backlight: pwm_bl: Linear interpolation between brightness-levels
      61c4fc1e
    • Linus Torvalds's avatar
      Merge tag 'mfd-next-4.19' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd · 532c2b92
      Linus Torvalds authored
      Pull MFD updates from Lee Jones:
       "New Drivers:
         - Add Cirrus Logic Madera Codec (CS47L35, CS47L85 and CS47L90/91) driver
         - Add ChromeOS EC CEC driver
         - Add ROHM BD71837 PMIC driver
      
        New Device Support:
         - Add support for Dialog Semi DA9063L PMIC variant to DA9063
         - Add support for Intel Ice Lake to Intel-PLSS-PCI
         - Add support for X-Powers AXP806 to AXP20x
      
        New Functionality:
         - Add support for USB Charging to the ChromeOS Embedded Controller
         - Add support for HDMI CEC to the ChromeOS Embedded Controller
         - Add support for HDMI CEC to Intel HDMI
         - Add support for accessory detection to Madera devices
         - Allow individual pins to be configured via DT' wlf,csnaddr-pd
         - Provide legacy platform specific EEPROM/Watchdog commands; rave-sp
      
        Fix-upsL
         - Trivial renaming/spelling fixes; cros_ec, da9063-*
         - Convert to Managed Resources (devm_*); da9063-*, ti_am335x_tscadc
         - Transition to helper macros/functions; da9063-*
         - Constify; kempld-core
         - Improve error path/messages; wm8994-core
         - Disable IRQs locally instead of relying on USB subsystem; dln2
         - Remove unused code; rave-sp
         - New exports; sec-core
      
        Bug Fixes:
         - Fix possible false I2C transaction error; arizona-core
         - Fix declared memory area size; hi655x-pmic
         - Fix checksum type; rave-sp
         - Fix incorrect default serial port configuration: rave-sp
         - Fix incorrect coherent DMA mask for sub-devices; sm501"
      
      * tag 'mfd-next-4.19' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd: (60 commits)
        mfd: madera: Add register definitions for accessory detect
        mfd: sm501: Set coherent_dma_mask when creating subdevices
        mfd: bd71837: Devicetree bindings for ROHM BD71837 PMIC
        mfd: bd71837: Core driver for ROHM BD71837 PMIC
        media: platform: cros-ec-cec: Fix dependency on MFD_CROS_EC
        mfd: sec-core: Export OF module alias table
        mfd: as3722: Disable auto-power-on when AC OK
        mfd: axp20x: Support AXP806 in I2C mode
        mfd: axp20x: Add self-working mode support for AXP806
        dt-bindings: mfd: axp20x: Add "self-working" mode for AXP806
        mfd: wm8994: Allow to configure CS/ADDR Pulldown from dts
        mfd: wm8994: Allow to configure Speaker Mode Pullup from dts
        mfd: rave-sp: Emulate CMD_GET_STATUS on device that don't support it
        mfd: rave-sp: Add legacy watchdog ping command translation
        mfd: rave-sp: Add legacy EEPROM access command translation
        mfd: rave-sp: Initialize flow control and parity of the port
        mfd: rave-sp: Fix incorrectly specified checksum type
        mfd: rave-sp: Remove unused defines
        mfd: hi655x: Fix regmap area declared size for hi655x
        mfd: ti_am335x_tscadc: Fix struct clk memory leak
        ...
      532c2b92
    • Linus Torvalds's avatar
      Merge tag 'edac_fixes_for_4.19' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp · 8786583d
      Linus Torvalds authored
      Pull EDAC fix from Borislav Petkov:
       "An urgent fix for a NULL ptr deref on machines with LRDDR4 DIMMs, from
        Takashi Iwai"
      
      * tag 'edac_fixes_for_4.19' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp:
        EDAC: Add missing MEM_LRDDR4 entry in edac_mem_types[]
      8786583d
    • Joe Perches's avatar
      Raise the minimum required gcc version to 4.6 · cafa0010
      Joe Perches authored
      Various architectures fail to build properly with older versions of the
      gcc compiler.
      
      An example from Guenter Roeck in thread [1]:
      >
      >   In file included from ./include/linux/mm.h:17:0,
      >                    from ./include/linux/pid_namespace.h:7,
      >                    from ./include/linux/ptrace.h:10,
      >                    from arch/openrisc/kernel/asm-offsets.c:32:
      >   ./include/linux/mm_types.h:497:16: error: flexible array member in otherwise empty struct
      >
      > This is just an example with gcc 4.5.1 for or32. I have seen the problem
      > with gcc 4.4 (for unicore32) as well.
      
      So update the minimum required version of gcc to 4.6.
      
      [1] https://lore.kernel.org/lkml/20180814170904.GA12768@roeck-us.net/
      
      
      
      Miscellanea:
      
       - Update Documentation/process/changes.rst
      
       - Remove and consolidate version test blocks in compiler-gcc.h for
         versions lower than 4.6
      
      Signed-off-by: default avatarJoe Perches <joe@perches.com>
      Reviewed-by: default avatarKees Cook <keescook@chromium.org>
      Reviewed-by: default avatarNick Desaulniers <ndesaulniers@google.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      cafa0010
    • Tony Luck's avatar
      ia64: Fix kernel BUG at lib/ioremap.c:72! · cc26ebbe
      Tony Luck authored
      Commit 0bbf47ea ("ia64: use asm-generic/io.h") results in a BUG
      while booting ia64.  This is because asm-generic/io.h defines
      PCI_IOBASE, which results in the function acpi_pci_root_remap_iospace()
      doing a lot of unnecessary (and wrong) things.
      
      I'd suggested an #if !CONFIG_IA64 in the functon, but Arnd suggested
      keeping the fix inside the arch/ia64 tree.
      
      Fixes: 0bbf47ea
      
       ("ia64: use asm-generic/io.h")
      Suggested-by: default avatarArnd Bergman <arnd@arndb.de>
      Signed-off-by: default avatarTony Luck <tony.luck@intel.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      cc26ebbe
    • Jiri Kosina's avatar
      badf58a2
    • Jiri Kosina's avatar
      Merge branch 'for-4.19/wiimote' into for-linus · 1429b47b
      Jiri Kosina authored
      Guitar-Hero devices support for hid-wiimote
      1429b47b
    • Jiri Kosina's avatar
      Merge branch 'for-4.19/wacom' into for-linus · ffbeeaa4
      Jiri Kosina authored
      Wacom driver updates:
      
      - touch_max detection improvements
      - quirk handling cleanup
      - get rid of wacom custom usages
      ffbeeaa4
    • Jiri Kosina's avatar
      Merge branch 'for-4.19/upstream' into for-linus · a91ddf23
      Jiri Kosina authored
      Assorted small driver/core fixes.
      a91ddf23
    • Jiri Kosina's avatar
      Merge branch 'for-4.19/sony' into for-linus · 78a8ad79
      Jiri Kosina authored
      devm_* API conversion for hid-sony
      78a8ad79
    • Jiri Kosina's avatar
      Merge branch 'for-4.19/multitouch-multiaxis' into for-linus · 16501e84
      Jiri Kosina authored
      Multitouch updates:
      
      - Dial support
      - Palm rejection for touchscreens
      - a few small assorted fixes
      16501e84
    • Jiri Kosina's avatar
      Merge branch 'for-4.19/intel-ish' into for-linus · f5dd8071
      Jiri Kosina authored
      Device-specific fixes for hid-intel-ish
      f5dd8071
    • Jiri Kosina's avatar
      Merge branch 'for-4.19/i2c-hid' into for-linus · 4435b577
      Jiri Kosina authored
      Low voltage support for i2c-hid
      4435b577
    • Jiri Kosina's avatar
      Merge branch 'for-4.19/elan' into for-linus · 5a12d86c
      Jiri Kosina authored
      Resolution/pressure fixes and new device support for hid-elan
      5a12d86c
    • Jiri Kosina's avatar
      Merge branch 'for-4.19/cougar' into for-linus · 415d2b33
      Jiri Kosina authored
      New device support for hid-cougar
      415d2b33
  2. Aug 20, 2018
    • Linus Torvalds's avatar
      Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu · 8fdd36d4
      Linus Torvalds authored
      Pull m68knommu updates from Greg Ungerer:
       "Only two changes.
      
        One cleans up warnings in the ColdFire DMA code, the other stubs out
        (with warnings) ColdFire clock api functions not normally used"
      
      * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu:
        m68knommu: Fix typos in Coldfire 5272 DMA debug code
        m68k: coldfire: Normalize clk API
      8fdd36d4
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net · 2ad0d526
      Linus Torvalds authored
      Pull networking fixes from David Miller:
      
       1) Fix races in IPVS, from Tan Hu.
      
       2) Missing unbind in matchall classifier, from Hangbin Liu.
      
       3) Missing act_ife action release, from Vlad Buslov.
      
       4) Cure lockdep splats in ila, from Cong Wang.
      
       5) veth queue leak on link delete, from Toshiaki Makita.
      
       6) Disable isdn's IIOCDBGVAR ioctl, it exposes kernel addresses. From
          Kees Cook.
      
       7) RCU usage fixup in XDP, from Tariq Toukan.
      
       8) Two TCP ULP fixes from Daniel Borkmann.
      
       9) r8169 needs REALTEK_PHY as a Kconfig dependency, from Heiner
          Kallweit.
      
      10) Always take tcf_lock with BH disabled, otherwise we can deadlock
          with rate estimator code paths. From Vlad Buslov.
      
      11) Don't use MSI-X on RTL8106e r8169 chips, they don't resume properly.
          From Jian-Hong Pan.
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (41 commits)
        ip6_vti: fix creating fallback tunnel device for vti6
        ip_vti: fix a null pointer deferrence when create vti fallback tunnel
        r8169: don't use MSI-X on RTL8106e
        net: lan743x_ptp: convert to ktime_get_clocktai_ts64
        net: sched: always disable bh when taking tcf_lock
        ip6_vti: simplify stats handling in vti6_xmit
        bpf: fix redirect to map under tail calls
        r8169: add missing Kconfig dependency
        tools/bpf: fix bpf selftest test_cgroup_storage failure
        bpf, sockmap: fix sock_map_ctx_update_elem race with exist/noexist
        bpf, sockmap: fix map elem deletion race with smap_stop_sock
        bpf, sockmap: fix leakage of smap_psock_map_entry
        tcp, ulp: fix leftover icsk_ulp_ops preventing sock from reattach
        tcp, ulp: add alias for all ulp modules
        bpf: fix a rcu usage warning in bpf_prog_array_copy_core()
        samples/bpf: all XDP samples should unload xdp/bpf prog on SIGTERM
        net/xdp: Fix suspicious RCU usage warning
        net/mlx5e: Delete unneeded function argument
        Documentation: networking: ti-cpsw: correct cbs parameters for Eth1 100Mb
        isdn: Disable IIOCDBGVAR
        ...
      2ad0d526
    • Haishuang Yan's avatar
      ip6_vti: fix creating fallback tunnel device for vti6 · e2948e5a
      Haishuang Yan authored
      
      
      When set fb_tunnels_only_for_init_net to 1, don't create fallback tunnel
      device for vti6 when a new namespace is created.
      
      Tested:
      [root@builder2 ~]# modprobe ip6_tunnel
      [root@builder2 ~]# modprobe ip6_vti
      [root@builder2 ~]# echo 1 > /proc/sys/net/core/fb_tunnels_only_for_init_net
      [root@builder2 ~]# unshare -n
      [root@builder2 ~]# ip link
      1: lo: <LOOPBACK> mtu 65536 qdisc noop state DOWN mode DEFAULT group
      default qlen 1000
          link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
      
      Signed-off-by: default avatarHaishuang Yan <yanhaishuang@cmss.chinamobile.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      e2948e5a
    • Haishuang Yan's avatar
      ip_vti: fix a null pointer deferrence when create vti fallback tunnel · cd1aa9c2
      Haishuang Yan authored
      After set fb_tunnels_only_for_init_net to 1, the itn->fb_tunnel_dev will
      be NULL and will cause following crash:
      
      [ 2742.849298] BUG: unable to handle kernel NULL pointer dereference at 0000000000000941
      [ 2742.851380] PGD 800000042c21a067 P4D 800000042c21a067 PUD 42aaed067 PMD 0
      [ 2742.852818] Oops: 0002 [#1] SMP PTI
      [ 2742.853570] CPU: 7 PID: 2484 Comm: unshare Kdump: loaded Not tainted 4.18.0-rc8+ #2
      [ 2742.855163] Hardware name: Fedora Project OpenStack Nova, BIOS seabios-1.7.5-11.el7 04/01/2014
      [ 2742.856970] RIP: 0010:vti_init_net+0x3a/0x50 [ip_vti]
      [ 2742.858034] Code: 90 83 c0 48 c7 c2 20 a1 83 c0 48 89 fb e8 6e 3b f6 ff 85 c0 75 22 8b 0d f4 19 00 00 48 8b 93 00 14 00 00 48 8b 14 ca 48 8b 12 <c6> 82 41 09 00 00 04 c6 82 38 09 00 00 45 5b c3 66 0f 1f 44 00 00
      [ 2742.861940] RSP: 0018:ffff9be28207fde0 EFLAGS: 00010246
      [ 2742.863044] RAX: 0000000000000000 RBX: ffff8a71ebed4980 RCX: 0000000000000013
      [ 2742.864540] RDX: 0000000000000000 RSI: 0000000000000013 RDI: ffff8a71ebed4980
      [ 2742.866020] RBP: ffff8a71ea717000 R08: ffffffffc083903c R09: ffff8a71ea717000
      [ 2742.867505] R10: 0000000000000000 R11: 0000000000000000 R12: ffff8a71ebed4980
      [ 2742.868987] R13: 0000000000000013 R14: ffff8a71ea5b49c0 R15: 0000000000000000
      [ 2742.870473] FS:  00007f02266c9740(0000) GS:ffff8a71ffdc0000(0000) knlGS:0000000000000000
      [ 2742.872143] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
      [ 2742.873340] CR2: 0000000000000941 CR3: 000000042bc20006 CR4: 00000000001606e0
      [ 2742.874821] Call Trace:
      [ 2742.875358]  ops_init+0x38/0xf0
      [ 2742.876078]  setup_net+0xd9/0x1f0
      [ 2742.876789]  copy_net_ns+0xb7/0x130
      [ 2742.877538]  create_new_namespaces+0x11a/0x1d0
      [ 2742.878525]  unshare_nsproxy_namespaces+0x55/0xa0
      [ 2742.879526]  ksys_unshare+0x1a7/0x330
      [ 2742.880313]  __x64_sys_unshare+0xe/0x20
      [ 2742.881131]  do_syscall_64+0x5b/0x180
      [ 2742.881933]  entry_SYSCALL_64_after_hwframe+0x44/0xa9
      
      Reproduce:
      echo 1 > /proc/sys/net/core/fb_tunnels_only_for_init_net
      modprobe ip_vti
      unshare -n
      
      Fixes: 79134e6c
      
       ("net: do not create fallback tunnels for non-default namespaces")
      Cc: Eric Dumazet <edumazet@google.com>
      Signed-off-by: default avatarHaishuang Yan <yanhaishuang@cmss.chinamobile.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      cd1aa9c2
    • Jian-Hong Pan's avatar
      r8169: don't use MSI-X on RTL8106e · 7bb05b85
      Jian-Hong Pan authored
      Found the ethernet network on ASUS X441UAR doesn't come back on resume
      from suspend when using MSI-X.  The chip is RTL8106e - version 39.
      
      [   21.848357] libphy: r8169: probed
      [   21.848473] r8169 0000:02:00.0 eth0: RTL8106e, 0c:9d:92:32:67:b4, XID
      44900000, IRQ 127
      [   22.518860] r8169 0000:02:00.0 enp2s0: renamed from eth0
      [   29.458041] Generic PHY r8169-200:00: attached PHY driver [Generic
      PHY] (mii_bus:phy_addr=r8169-200:00, irq=IGNORE)
      [   63.227398] r8169 0000:02:00.0 enp2s0: Link is Up - 100Mbps/Full -
      flow control off
      [  124.514648] Generic PHY r8169-200:00: attached PHY driver [Generic
      PHY] (mii_bus:phy_addr=r8169-200:00, irq=IGNORE)
      
      Here is the ethernet controller in detail:
      
      02:00.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd.
      RTL8101/2/6E PCI Express Fast/Gigabit Ethernet controller [10ec:8136]
      (rev 07)
      	Subsystem: ASUSTeK Computer Inc. RTL810xE PCI Express Fast
      Ethernet controller [1043:200f]
      	Flags: bus master, fast devsel, latency 0, IRQ 16
      	I/O ports at e000 [size=256]
      	Memory at ef100000 (64-bit, non-prefetchable) [size=4K]
      	Memory at e0000000 (64-bit, prefetchable) [size=16K]
      	Capabilities: <access denied>
      	Kernel driver in use: r8169
      	Kernel modules: r8169
      
      Falling back to MSI fixes the issue.
      
      Fixes: 6c6aa15f
      
       ("r8169: improve interrupt handling")
      Signed-off-by: default avatarJian-Hong Pan <jian-hong@endlessm.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      7bb05b85
    • Arnd Bergmann's avatar
      net: lan743x_ptp: convert to ktime_get_clocktai_ts64 · 0b3e776e
      Arnd Bergmann authored
      
      
      timekeeping_clocktai64() has been renamed to ktime_get_clocktai_ts64()
      for consistency with the other ktime_get_* access functions.
      
      Rename the new caller that has come up as well.
      
      Question: this is the only ptp driver that sets the hardware time
      to the current system time in TAI. Why does it do that?
      
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      0b3e776e
    • Vlad Buslov's avatar
      net: sched: always disable bh when taking tcf_lock · 653cd284
      Vlad Buslov authored
      Recently, ops->init() and ops->dump() of all actions were modified to
      always obtain tcf_lock when accessing private action state. Actions that
      don't depend on tcf_lock for synchronization with their data path use
      non-bh locking API. However, tcf_lock is also used to protect rate
      estimator stats in softirq context by timer callback.
      
      Change ops->init() and ops->dump() of all actions to disable bh when using
      tcf_lock to prevent deadlock reported by following lockdep warning:
      
      [  105.470398] ================================
      [  105.475014] WARNING: inconsistent lock state
      [  105.479628] 4.18.0-rc8+ #664 Not tainted
      [  105.483897] --------------------------------
      [  105.488511] inconsistent {SOFTIRQ-ON-W} -> {IN-SOFTIRQ-W} usage.
      [  105.494871] swapper/16/0 [HC0[0]:SC1[1]:HE1:SE0] takes:
      [  105.500449] 00000000f86c012e (&(&p->tcfa_lock)->rlock){+.?.}, at: est_fetch_counters+0x3c/0xa0
      [  105.509696] {SOFTIRQ-ON-W} state was registered at:
      [  105.514925]   _raw_spin_lock+0x2c/0x40
      [  105.519022]   tcf_bpf_init+0x579/0x820 [act_bpf]
      [  105.523990]   tcf_action_init_1+0x4e4/0x660
      [  105.528518]   tcf_action_init+0x1ce/0x2d0
      [  105.532880]   tcf_exts_validate+0x1d8/0x200
      [  105.537416]   fl_change+0x55a/0x268b [cls_flower]
      [  105.542469]   tc_new_tfilter+0x748/0xa20
      [  105.546738]   rtnetlink_rcv_msg+0x56a/0x6d0
      [  105.551268]   netlink_rcv_skb+0x18d/0x200
      [  105.555628]   netlink_unicast+0x2d0/0x370
      [  105.559990]   netlink_sendmsg+0x3b9/0x6a0
      [  105.564349]   sock_sendmsg+0x6b/0x80
      [  105.568271]   ___sys_sendmsg+0x4a1/0x520
      [  105.572547]   __sys_sendmsg+0xd7/0x150
      [  105.576655]   do_syscall_64+0x72/0x2c0
      [  105.580757]   entry_SYSCALL_64_after_hwframe+0x49/0xbe
      [  105.586243] irq event stamp: 489296
      [  105.590084] hardirqs last  enabled at (489296): [<ffffffffb507e639>] _raw_spin_unlock_irq+0x29/0x40
      [  105.599765] hardirqs last disabled at (489295): [<ffffffffb507e745>] _raw_spin_lock_irq+0x15/0x50
      [  105.609277] softirqs last  enabled at (489292): [<ffffffffb413a6a3>] irq_enter+0x83/0xa0
      [  105.618001] softirqs last disabled at (489293): [<ffffffffb413a800>] irq_exit+0x140/0x190
      [  105.626813]
                     other info that might help us debug this:
      [  105.633976]  Possible unsafe locking scenario:
      
      [  105.640526]        CPU0
      [  105.643325]        ----
      [  105.646125]   lock(&(&p->tcfa_lock)->rlock);
      [  105.650747]   <Interrupt>
      [  105.653717]     lock(&(&p->tcfa_lock)->rlock);
      [  105.658514]
                      *** DEADLOCK ***
      
      [  105.665349] 1 lock held by swapper/16/0:
      [  105.669629]  #0: 00000000a640ad99 ((&est->timer)){+.-.}, at: call_timer_fn+0x10b/0x550
      [  105.678200]
                     stack backtrace:
      [  105.683194] CPU: 16 PID: 0 Comm: swapper/16 Not tainted 4.18.0-rc8+ #664
      [  105.690249] Hardware name: Supermicro SYS-2028TP-DECR/X10DRT-P, BIOS 2.0b 03/30/2017
      [  105.698626] Call Trace:
      [  105.701421]  <IRQ>
      [  105.703791]  dump_stack+0x92/0xeb
      [  105.707461]  print_usage_bug+0x336/0x34c
      [  105.711744]  mark_lock+0x7c9/0x980
      [  105.715500]  ? print_shortest_lock_dependencies+0x2e0/0x2e0
      [  105.721424]  ? check_usage_forwards+0x230/0x230
      [  105.726315]  __lock_acquire+0x923/0x26f0
      [  105.730597]  ? debug_show_all_locks+0x240/0x240
      [  105.735478]  ? mark_lock+0x493/0x980
      [  105.739412]  ? check_chain_key+0x140/0x1f0
      [  105.743861]  ? __lock_acquire+0x836/0x26f0
      [  105.748323]  ? lock_acquire+0x12e/0x290
      [  105.752516]  lock_acquire+0x12e/0x290
      [  105.756539]  ? est_fetch_counters+0x3c/0xa0
      [  105.761084]  _raw_spin_lock+0x2c/0x40
      [  105.765099]  ? est_fetch_counters+0x3c/0xa0
      [  105.769633]  est_fetch_counters+0x3c/0xa0
      [  105.773995]  est_timer+0x87/0x390
      [  105.777670]  ? est_fetch_counters+0xa0/0xa0
      [  105.782210]  ? lock_acquire+0x12e/0x290
      [  105.786410]  call_timer_fn+0x161/0x550
      [  105.790512]  ? est_fetch_counters+0xa0/0xa0
      [  105.795055]  ? del_timer_sync+0xd0/0xd0
      [  105.799249]  ? __lock_is_held+0x93/0x110
      [  105.803531]  ? mark_held_locks+0x20/0xe0
      [  105.807813]  ? _raw_spin_unlock_irq+0x29/0x40
      [  105.812525]  ? est_fetch_counters+0xa0/0xa0
      [  105.817069]  ? est_fetch_counters+0xa0/0xa0
      [  105.821610]  run_timer_softirq+0x3c4/0x9f0
      [  105.826064]  ? lock_acquire+0x12e/0x290
      [  105.830257]  ? __bpf_trace_timer_class+0x10/0x10
      [  105.835237]  ? __lock_is_held+0x25/0x110
      [  105.839517]  __do_softirq+0x11d/0x7bf
      [  105.843542]  irq_exit+0x140/0x190
      [  105.847208]  smp_apic_timer_interrupt+0xac/0x3b0
      [  105.852182]  apic_timer_interrupt+0xf/0x20
      [  105.856628]  </IRQ>
      [  105.859081] RIP: 0010:cpuidle_enter_state+0xd8/0x4d0
      [  105.864395] Code: 46 ff 48 89 44 24 08 0f 1f 44 00 00 31 ff e8 cf ec 46 ff 80 7c 24 07 00 0f 85 1d 02 00 00 e8 9f 90 4b ff fb 66 0f 1f 44 00 00 <4c> 8b 6c 24 08 4d 29 fd 0f 80 36 03 00 00 4c 89 e8 48 ba cf f7 53
      [  105.884288] RSP: 0018:ffff8803ad94fd20 EFLAGS: 00000246 ORIG_RAX: ffffffffffffff13
      [  105.892494] RAX: 0000000000000000 RBX: ffffe8fb300829c0 RCX: ffffffffb41e19e1
      [  105.899988] RDX: 0000000000000007 RSI: dffffc0000000000 RDI: ffff8803ad9358ac
      [  105.907503] RBP: ffffffffb6636300 R08: 0000000000000004 R09: 0000000000000000
      [  105.914997] R10: 0000000000000000 R11: 0000000000000000 R12: 0000000000000004
      [  105.922487] R13: ffffffffb6636140 R14: ffffffffb66362d8 R15: 000000188d36091b
      [  105.929988]  ? trace_hardirqs_on_caller+0x141/0x2d0
      [  105.935232]  do_idle+0x28e/0x320
      [  105.938817]  ? arch_cpu_idle_exit+0x40/0x40
      [  105.943361]  ? mark_lock+0x8c1/0x980
      [  105.947295]  ? _raw_spin_unlock_irqrestore+0x32/0x60
      [  105.952619]  cpu_startup_entry+0xc2/0xd0
      [  105.956900]  ? cpu_in_idle+0x20/0x20
      [  105.960830]  ? _raw_spin_unlock_irqrestore+0x32/0x60
      [  105.966146]  ? trace_hardirqs_on_caller+0x141/0x2d0
      [  105.971391]  start_secondary+0x2b5/0x360
      [  105.975669]  ? set_cpu_sibling_map+0x1330/0x1330
      [  105.980654]  secondary_startup_64+0xa5/0xb0
      
      Taking tcf_lock in sample action with bh disabled causes lockdep to issue a
      warning regarding possible irq lock inversion dependency between tcf_lock,
      and psample_groups_lock that is taken when holding tcf_lock in sample init:
      
      [  162.108959]  Possible interrupt unsafe locking scenario:
      
      [  162.116386]        CPU0                    CPU1
      [  162.121277]        ----                    ----
      [  162.126162]   lock(psample_groups_lock);
      [  162.130447]                                local_irq_disable();
      [  162.136772]                                lock(&(&p->tcfa_lock)->rlock);
      [  162.143957]                                lock(psample_groups_lock);
      [  162.150813]   <Interrupt>
      [  162.153808]     lock(&(&p->tcfa_lock)->rlock);
      [  162.158608]
                      *** DEADLOCK ***
      
      In order to prevent potential lock inversion dependency between tcf_lock
      and psample_groups_lock, extract call to psample_group_get() from tcf_lock
      protected section in sample action init function.
      
      Fixes: 4e232818 ("net: sched: act_mirred: remove dependency on rtnl lock")
      Fixes: 764e9a24 ("net: sched: act_vlan: remove dependency on rtnl lock")
      Fixes: 729e0126 ("net: sched: act_tunnel_key: remove dependency on rtnl lock")
      Fixes: d7728495 ("net: sched: act_sample: remove dependency on rtnl lock")
      Fixes: e8917f43 ("net: sched: act_gact: remove dependency on rtnl lock")
      Fixes: b6a2b971 ("net: sched: act_csum: remove dependency on rtnl lock")
      Fixes: 2142236b
      
       ("net: sched: act_bpf: remove dependency on rtnl lock")
      Signed-off-by: default avatarVlad Buslov <vladbu@mellanox.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      653cd284
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm · e61cf2e3
      Linus Torvalds authored
      Pull first set of KVM updates from Paolo Bonzini:
       "PPC:
         - minor code cleanups
      
        x86:
         - PCID emulation and CR3 caching for shadow page tables
         - nested VMX live migration
         - nested VMCS shadowing
         - optimized IPI hypercall
         - some optimizations
      
        ARM will come next week"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (85 commits)
        kvm: x86: Set highest physical address bits in non-present/reserved SPTEs
        KVM/x86: Use CC_SET()/CC_OUT in arch/x86/kvm/vmx.c
        KVM: X86: Implement PV IPIs in linux guest
        KVM: X86: Add kvm hypervisor init time platform setup callback
        KVM: X86: Implement "send IPI" hypercall
        KVM/x86: Move X86_CR4_OSXSAVE check into kvm_valid_sregs()
        KVM: x86: Skip pae_root shadow allocation if tdp enabled
        KVM/MMU: Combine flushing remote tlb in mmu_set_spte()
        KVM: vmx: skip VMWRITE of HOST_{FS,GS}_BASE when possible
        KVM: vmx: skip VMWRITE of HOST_{FS,GS}_SEL when possible
        KVM: vmx: always initialize HOST_{FS,GS}_BASE to zero during setup
        KVM: vmx: move struct host_state usage to struct loaded_vmcs
        KVM: vmx: compute need to reload FS/GS/LDT on demand
        KVM: nVMX: remove a misleading comment regarding vmcs02 fields
        KVM: vmx: rename __vmx_load_host_state() and vmx_save_host_state()
        KVM: vmx: add dedicated utility to access guest's kernel_gs_base
        KVM: vmx: track host_state.loaded using a loaded_vmcs pointer
        KVM: vmx: refactor segmentation code in vmx_save_host_state()
        kvm: nVMX: Fix fault priority for VMX operations
        kvm: nVMX: Fix fault vector for VMX operation at CPL > 0
        ...
      e61cf2e3
    • Linus Torvalds's avatar
      Merge tag 'riscv-for-linus-4.19-mw0' of... · 1009aa12
      Linus Torvalds authored
      Merge tag 'riscv-for-linus-4.19-mw0' of git://git.kernel.org/pub/scm/linux/kernel/git/palmer/riscv-linux
      
      Pull RISC-V updates from Palmer Dabbelt:
       "This contains some major improvements to the RISC-V port, including
        the necessary interrupt controller and timer support to actually make
        it to userspace. Support for three devices has been added:
      
         - the ISA-mandated timers on RISC-V systems.
      
         - the ISA-mandated first-level interrupt controller on RISC-V
           systems, which is handled as part of our core arch code because
           it's very small and tightly tied to the ISA.
      
         - SiFive's platform-level interrupt controller, which talks to the
           actual devices.
      
        In addition to these new devices, there are a handful of cleanups all
        over the RISC-V tree:
      
         - build fixes for various configurations:
            * A fix to the vDSO build's makefile so it respects CFLAGS.
            * The addition of __lshrti3, a libgcc derived function necessary
              for some 32-bit configurations.
            * !SMP && PERF_EVENTS
      
         - Cleanups to the arch code to remove the remnants of old versions of
           the drivers that were just properly submitted.
            * Some dead code from the timer driver, most of which wasn't ever
              even compiled.
            * Cleanups of some interrupt #defines, which are now local to the
              interrupt handling code.
      
         - Fixes to ptrace(), which while not being sufficient to fully make
           GDB work are at least sufficient to get simple GDB tasks to work.
      
         - Early printk support via RISC-V's architecturally mandated SBI
           console device.
      
         - A fix to our early debug trap handler to ensure it's always
           aligned.
      
        These patches have all been through a fairly extensive review process,
        but as this enables a whole pile of functionality (ie, userspace) I'm
        confident we'll need to submit a few more patches. The only concrete
        issues I know about are the sys_riscv_flush_icache patches, but as I
        managed to screw those up on Friday I figured it'd be best to let them
        bake another week.
      
        This tag boots a Fedora root filesystem on QEMU's master branch for
        me, and before this morning's rebase (from 4.18-rc8 to 4.18) it booted
        on the HiFive Unleashed.
      
        Thanks to Christoph Hellwig and the other guys at WD for getting the
        new drivers in shape!"
      
      * tag 'riscv-for-linus-4.19-mw0' of git://git.kernel.org/pub/scm/linux/kernel/git/palmer/riscv-linux:
        dt-bindings: interrupt-controller: SiFive Plaform Level Interrupt Controller
        dt-bindings: interrupt-controller: RISC-V local interrupt controller
        RISC-V: Fix !CONFIG_SMP compilation error
        irqchip: add a SiFive PLIC driver
        RISC-V: Add the directive for alignment of stvec's value
        clocksource: new RISC-V SBI timer driver
        RISC-V: implement low-level interrupt handling
        RISC-V: add a definition for the SIE SEIE bit
        RISC-V: remove INTERRUPT_CAUSE_* defines from asm/irq.h
        RISC-V: simplify software interrupt / IPI code
        RISC-V: remove timer leftovers
        RISC-V: Add early printk support via the SBI console
        RISC-V: Don't increment sepc after breakpoint.
        RISC-V: implement __lshrti3.
        RISC-V: Use KBUILD_CFLAGS instead of KCFLAGS when building the vDSO
      1009aa12
    • Linus Torvalds's avatar
      Merge tag 'char-misc-4.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc · 1d0926e9
      Linus Torvalds authored
      Pull UIO fix from Greg KH:
       "Here is a single UIO fix that I forgot to send before 4.18-final came
        out. It reverts a UIO patch that went in the 4.18 development window
        that was causing problems.
      
        This patch has been in linux-next for a while with no problems, I just
        forgot to send it earlier, or as part of the larger char/misc patch
        series from yesterday, my fault"
      
      * tag 'char-misc-4.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc:
        Revert "uio: use request_threaded_irq instead"
      1d0926e9
  3. Aug 19, 2018
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input · 08b5fa81
      Linus Torvalds authored
      Pull input updates from Dmitry Torokhov:
      
       - a new driver for Rohm BU21029 touch controller
      
       - new bitmap APIs: bitmap_alloc, bitmap_zalloc and bitmap_free
      
       - updates to Atmel, eeti. pxrc and iforce drivers
      
       - assorted driver cleanups and fixes.
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (57 commits)
        MAINTAINERS: Add PhoenixRC Flight Controller Adapter
        Input: do not use WARN() in input_alloc_absinfo()
        Input: mark expected switch fall-throughs
        Input: raydium_i2c_ts - use true and false for boolean values
        Input: evdev - switch to bitmap API
        Input: gpio-keys - switch to bitmap_zalloc()
        Input: elan_i2c_smbus - cast sizeof to int for comparison
        bitmap: Add bitmap_alloc(), bitmap_zalloc() and bitmap_free()
        md: Avoid namespace collision with bitmap API
        dm: Avoid namespace collision with bitmap API
        Input: pm8941-pwrkey - add resin entry
        Input: pm8941-pwrkey - abstract register offsets and event code
        Input: iforce - reorganize joystick configuration lists
        Input: atmel_mxt_ts - move completion to after config crc is updated
        Input: atmel_mxt_ts - don't report zero pressure from T9
        Input: atmel_mxt_ts - zero terminate config firmware file
        Input: atmel_mxt_ts - refactor config update code to add context struct
        Input: atmel_mxt_ts - config CRC may start at T71
        Input: atmel_mxt_ts - remove unnecessary debug on ENOMEM
        Input: atmel_mxt_ts - remove duplicate setup of ABS_MT_PRESSURE
        ...
      08b5fa81
    • Linus Torvalds's avatar
      Merge tag 'hwlock-v4.19' of git://github.com/andersson/remoteproc · 7f02e1ce
      Linus Torvalds authored
      Pull hwspinlock updates from Bjorn Andersson:
       "This introduces devres helpers and an API to request a lock by name,
        then migrates the sprd SPI driver to use these"
      
      * tag 'hwlock-v4.19' of git://github.com/andersson/remoteproc:
        hwspinlock: Fix incorrect return pointers
        spi: sprd: Change to use devm_hwspin_lock_request_specific()
        spi: sprd: Replace of_hwspin_lock_get_id() with of_hwspin_lock_get_id_byname()
        hwspinlock: Fix one comment mistake
        hwspinlock: Remove redundant config
        hwspinlock: Add devm_xxx() APIs to register/unregister one hwlock controller
        hwspinlock: Add devm_xxx() APIs to request/free hwlock
        hwspinlock: Add one new API to support getting a specific hwlock by the name
      7f02e1ce
    • Linus Torvalds's avatar
      Merge tag 'rpmsg-v4.19' of git://github.com/andersson/remoteproc · 9a96d63a
      Linus Torvalds authored
      Pull rpmsg updates from Bjorn Andersson:
       "This fixes a few compile and kerneldoc warnings, allows rpmsg devices
        to handle power domains, allow for labeling GLINK edges and supports
        compat for rpmsg_char"
      
      * tag 'rpmsg-v4.19' of git://github.com/andersson/remoteproc:
        rpmsg: Add compat ioctl for rpmsg char driver
        rpmsg: glink: Store edge name for glink device
        dt-bindings: soc: qcom: Add label for GLINK bindings
        rpmsg: core: add support to power domains for devices
        rpmsg: smd: fix kerneldoc warnings
        rpmsg: glink: Fix various kerneldoc warnings.
        rpmsg: glink: correctly annotate intent members
        rpmsg: smd: Add missing include of sizes.h
      9a96d63a
    • Linus Torvalds's avatar
      Merge tag 'rproc-v4.19' of git://github.com/andersson/remoteproc · c54fc865
      Linus Torvalds authored
      Pull remoteproc updates from Bjorn Andersson:
       "This adds support for pre-start and post-shutdown hooks for remoteproc
        subdevices, refactors the Qualcomm Hexagon support to allow reuse
        between several drivers, makes authentication in the MDT file loader
        optional, migrates a few format strings to use %pK and migrates the
        Davinci driver to use the reset framework"
      
      * tag 'rproc-v4.19' of git://github.com/andersson/remoteproc:
        remoteproc/davinci: use the reset framework
        remoteproc/davinci: Mark error recovery as disabled
        remoteproc: st_slim: replace "%p" with "%pK"
        remoteproc: replace "%p" with "%pK"
        remoteproc: qcom: fix Q6V5_WCSS dependencies
        remoteproc: Reset table_ptr in rproc_start() failure paths
        remoteproc: qcom: q6v5-pil: fix modem hang on SDM845 after axis2 clk unvote
        remoteproc: qcom q6v5: fix modular build
        remoteproc: Introduce prepare and unprepare for subdevices
        remoteproc: rename subdev probe and remove functions
        remoteproc: Make client initialize ops in rproc_subdev
        remoteproc: Make start and stop in subdev optional
        remoteproc: Rename subdev functions to start/stop
        remoteproc: qcom: Introduce Hexagon V5 based WCSS driver
        remoteproc: qcom: q6v5-pil: Use common q6v5 helpers
        remoteproc: qcom: adsp: Use common q6v5 helpers
        remoteproc: q6v5: Extract common resource handling
        remoteproc: qcom: mdt_loader: Make the firmware authentication optional
      c54fc865
    • Linus Torvalds's avatar
      Merge tag 'linux-watchdog-4.19-rc1' of git://www.linux-watchdog.org/linux-watchdog · 6eaac34f
      Linus Torvalds authored
      Pull watchdog updates from Wim Van Sebroeck:
      
       - add MEN 16z069 IP-Core driver
      
       - renesas-wdt: add support for the R8A77990 wdt
      
       - stm32_iwdg: Add stm32mp1 support and pclk feature
      
       - sp805_wdt, orion_wdt, sprd_wdt: several improvements
      
       - imx2_wdt, stmp3xxx: switch to SPDX identifier
      
      * tag 'linux-watchdog-4.19-rc1' of git://www.linux-watchdog.org/linux-watchdog:
        watchdog: fix dependencies of menz69_wdt.o
        watchdog: sp805: Add clock-frequency property
        watchdog: add driver for the MEN 16z069 IP-Core
        watchdog: sprd_wdt: Remove redundant dev_err call in sprd_wdt_probe()
        watchdog: stmp3xxx: Switch to SPDX identifier
        watchdog: imx2_wdt: Switch to SPDX identifier
        watchdog: sp805: set WDOG_HW_RUNNING when appropriate
        watchdog: sp805: add 'timeout-sec' DT property support
        dt-bindings: watchdog: Add optional 'timeout-sec' property for sp805
        dt-bindings: watchdog: Consolidate SP805 binding docs
        watchdog: orion_wdt: Mark watchdog as active when running at probe
        watchdog: stm32: add pclk feature for stm32mp1
        dt-bindings: watchdog: add stm32mp1 support
        dt-bindings: watchdog: renesas-wdt: Add support for the R8A77990 wdt
      6eaac34f
    • Linus Torvalds's avatar
      Merge tag 'dmaengine-4.19-rc1' of git://git.infradead.org/users/vkoul/slave-dma · 13bf2cf9
      Linus Torvalds authored
      Pull DMAengine updates from Vinod Koul:
       "This round brings couple of framework changes, a new driver and usual
        driver updates:
      
         - new managed helper for dmaengine framework registration
      
         - split dmaengine pause capability to pause and resume and allow
           drivers to report that individually
      
         - update dma_request_chan_by_mask() to handle deferred probing
      
         - move imx-sdma to use virt-dma
      
         - new driver for Actions Semi Owl family S900 controller
      
         - minor updates to intel, renesas, mv_xor, pl330 etc"
      
      * tag 'dmaengine-4.19-rc1' of git://git.infradead.org/users/vkoul/slave-dma: (46 commits)
        dmaengine: Add Actions Semi Owl family S900 DMA driver
        dt-bindings: dmaengine: Add binding for Actions Semi Owl SoCs
        dmaengine: sh: rcar-dmac: Should not stop the DMAC by rcar_dmac_sync_tcr()
        dmaengine: mic_x100_dma: use the new helper to simplify the code
        dmaengine: add a new helper dmaenginem_async_device_regist...
      13bf2cf9
    • Linus Torvalds's avatar
      Merge tag 'mmc-v4.19' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc · bbd60bff
      Linus Torvalds authored
      Pull MMC updates from Ulf Hansson:
       "Updates for MMC for v4.19.
      
        MMC core:
         - Add some fine-grained hooks to further support HS400 tuning
         - Improve error path for bus width setting for HS400es
         - Use a common method when checking R1 status
      
        MMC host:
         - renesas_sdhi: Add r8a77990 support
         - renesas_sdhi: Add eMMC HS400 mode support
         - tmio/renesas_sdhi: Improve tuning/clock management
         - tmio: Add eMMC HS400 mode support
         - sunxi: Add support for 3.3V eMMC DDR mode
         - mmci: Initial support to manage variant specific callbacks
         - sdhci: Don't try 3.3V I/O voltage if not supported
         - sdhci-pci-dwc-mshc: Add driver to support Synopsys dwc mshc SDHCI PCI
         - sdhci-of-dwcmshc: Add driver to support Synopsys DWC MSHC SDHCI
         - sdhci-msm: Add support for new version sdcc V5
         - sdhci-pci-o2micro: Add support for O2 eMMC HS200 mode
         - sdhci-pci-o2micro: Add support for O2 hardware tuning
         - sdhci-pci-o2micro: Add MSI interrupt support for O2 SD host
         - sdhci-pci: Add support for Intel ICP
         - sdhci-tegra: Prevent ACMD23 and HS200 mode on Tegra 3
         - sdhci-tegra: Fix eMMC DDR52 mode
         - sdhci-tegra: Improve clock management
         - dw_mmc-rockchip: Document compatible string for px30
         - sdhci-esdhc-imx: Add support for 3.3V eMMC DDR mode
         - sdhci-of-esdhc: Set proper DMA mask for ls104x chips
         - sdhci-of-esdhc: Improve clock management
         - sdhci-of-arasan: Add a quirk to manage unstable clocks
         - dw_mmc-exynos: Address potential external abort during system resume
         - pxamci: Add support for common MMC DT bindings
         - pxamci: Several cleanups and improvements
         - pxamci: Merge immutable branch for pxa to switch to DMA slave maps"
      
      * tag 'mmc-v4.19' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc: (56 commits)
        mmc: core: improve reasonableness of bus width setting for HS400es
        mmc: tmio: remove unneeded variable in tmio_mmc_start_command()
        mmc: renesas_sdhi: Fix sampling clock position selecting
        mmc: tmio: Fix tuning flow
        mmc: sunxi: remove output of virtual base address
        dt-bindings: mmc: rockchip-dw-mshc: add description for px30
        mmc: renesas_sdhi: Add r8a77990 support
        mmc: sunxi: allow 3.3V DDR when DDR is available
        mmc: mmci: Add and implement a ->dma_setup() callback for qcom dml
        mmc: mmci: Initial support to manage variant specific callbacks
        mmc: tegra: Force correct divider calculation on DDR50/52
        mmc: sdhci: Add MSI interrupt support for O2 SD host
        mmc: sdhci: Add support for O2 hardware tuning
        mmc: sdhci: Export sdhci tuning function symbol
        mmc: sdhci: Change O2 Host HS200 mode clock frequency to 200MHz
        mmc: sdhci: Add support for O2 eMMC HS200 mode
        mmc: tegra: Add and use tegra_sdhci_get_max_clock()
        mmc: sdhci-esdhc-imx: fix indent
        mmc: sdhci-esdhc-imx: disable clocks before changing frequency
        mmc: tegra: prevent ACMD23 on Tegra 3
        ...
      bbd60bff
    • Haishuang Yan's avatar
      ip6_vti: simplify stats handling in vti6_xmit · bb107456
      Haishuang Yan authored
      
      
      Same as ip_vti, use iptunnel_xmit_stats to updates stats in tunnel xmit
      code path.
      
      Signed-off-by: default avatarHaishuang Yan <yanhaishuang@cmss.chinamobile.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      bb107456