1. 20 May, 2016 11 commits
  2. 19 May, 2016 23 commits
    • David S. Miller's avatar
      Merge tag 'batman-adv-fix-for-davem' of git://git.open-mesh.org/linux-merge · e22cb5e7
      David S. Miller authored
      Antonio Quartulli says:
      During the Wireless Battle Mesh v9 in Porto (PT) at the beginning of
      May, we managed to uncover and fix some important bugs in our
      new B.A.T.M.A.N. V algorithm. These are the fixes we came up with
      together with others that I collected in the past weeks:
      - avoid potential crash due to NULL pointer dereference in
        B.A.T.M.A.N. V routine when a neigh_ifinfo object is not found, by
        Sven Eckelmann
      - avoid use-after-free of skb when counting outgoing bytes, by Florian
      - fix neigh_ifinfo object reference counting imbalance when using
        B.A.T.M.A.N. V, by Sven Eckelmann. Such imbalance may lead to the
        impossibility of releasing the related netdev object on shutdown
      - avoid invalid memory access in case of error while allocating
        bcast_own_sum when a new hard-interface is added, by Sven Eckelmann
      - ensure originator address is updated in OMG/ELP packet content upon
        primary interface address change, by Antonio Quartulli
      - fix integer overflow when computing TQ metric (B.A.T.M.A.N. IV), by
        Sven Eckelmann
      - avoid race condition while adding new neigh_node which would result
        in having two objects mapping to the same physical neighbour, by
        Linus Lüssing
      - ensure originator address is initialized in ELP packet content on
        secondary interfaces, by Marek Lindner
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    • Amit Ghadge's avatar
      net: Fix coding style warnings and errors. · 6104503c
      Amit Ghadge authored
      This is a patch to clean checkpatch warnings and errors
      in the Space.c file.
      Clean up the following warnings and errors.
      WARNING :
      * Block comments use * on subsequent lines
      * Missing a blank line after declarations
      * networking block comments don't use an empty /* line, use /*
      * please, no space before tabs
      * please, no spaces at the start of a line
      * line over 80 characters
      ERROR :
      * code indent should use tabs where possible
      * space prohibited after that open parenthesis '('
      Signed-off-by: default avatarAmit Ghadge <amitg.b14@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    • David S. Miller's avatar
      Merge branch 'tcp_bh_fixes' · 87553aa5
      David S. Miller authored
      Eric Dumazet says:
      net: block BH in TCP callbacks
      Four layers using TCP stack were assuming sk_callback_lock could
      be locked using read_lock() in their handlers because TCP stack
      was running with BH disabled.
      This is no longer the case. Since presumably the rest could
      also depend on BH being disabled, just use read_lock_bh().
      Then each layer might consider switching to RCU protection
      and no longer depend on BH.
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    • Eric Dumazet's avatar
      tipc: block BH in TCP callbacks · b91083a4
      Eric Dumazet authored
      TCP stack can now run from process context.
      Use read_lock_bh(&sk->sk_callback_lock) variant to restore previous
      Fixes: 5413d1ba ("net: do not block BH while processing socket backlog")
      Fixes: d41a69f1
       ("tcp: make tcp_sendmsg() aware of socket backlog")
      Signed-off-by: default avatarEric Dumazet <edumazet@google.com>
      Cc: Jon Maloy <jon.maloy@ericsson.com>
      Cc: Ying Xue <ying.xue@windriver.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    • Eric Dumazet's avatar
      rds: tcp: block BH in TCP callbacks · 38036629
      Eric Dumazet authored
      TCP stack can now run from process context.
      Use read_lock_bh(&sk->sk_callback_lock) variant to restore previous
      Fixes: 5413d1ba ("net: do not block BH while processing socket backlog")
      Fixes: d41a69f1
       ("tcp: make tcp_sendmsg() aware of socket backlog")
      Signed-off-by: default avatarEric Dumazet <edumazet@google.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    • Eric Dumazet's avatar
      ocfs2/cluster: block BH in TCP callbacks · e1daca28
      Eric Dumazet authored
      TCP stack can now run from process context.
      Use read_lock_bh() variant to restore previous assumption.
      Fixes: 5413d1ba ("net: do not block BH while processing socket backlog")
      Fixes: d41a69f1
       ("tcp: make tcp_sendmsg() aware of socket backlog")
      Signed-off-by: default avatarEric Dumazet <edumazet@google.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    • Eric Dumazet's avatar
      scsi_tcp: block BH in TCP callbacks · 7cb001d4
      Eric Dumazet authored
      iscsi_sw_tcp_data_ready() and iscsi_sw_tcp_state_change() were
      using read_lock(&sk->sk_callback_lock) which is fine if caller
      disabled BH.
      TCP stack no longer has this requirement and can run from
      process context.
      Use read_lock_bh() variant to restore previous assumption.
      Ideally this code could use RCU instead...
      Fixes: 5413d1ba ("net: do not block BH while processing socket backlog")
      Fixes: d41a69f1
       ("tcp: make tcp_sendmsg() aware of socket backlog")
      Signed-off-by: default avatarEric Dumazet <edumazet@google.com>
      Cc: Mike Christie <michaelc@cs.wisc.edu>
      Cc: Venkatesh Srinivas <venkateshs@google.com>
      Acked-by: default avatarMike Christie <michaelc@cs.wisc.edu>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    • Heinrich Schuchardt's avatar
      net: pegasus: remove dead coding · e00be9e4
      Heinrich Schuchardt authored
      (!count || count < 4) is always true.
      So let's remove the coding which is dead at least since 2005.
      Signed-off-by: Heinrich Schuchardt's avatarHeinrich Schuchardt <xypron.glpk@gmx.de>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    • Heinrich Schuchardt's avatar
      net: au1000 eth: simplify logical expression · 074ba1e2
      Heinrich Schuchardt authored
      (a && a > 0) is equivalent to (a > 0).
      Signed-off-by: Heinrich Schuchardt's avatarHeinrich Schuchardt <xypron.glpk@gmx.de>
      Acked-by: default avatarFlorian Fainelli <f.fainelli@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    • Heinrich Schuchardt's avatar
      net: irda: avoid null pointer dereference · 30119059
      Heinrich Schuchardt authored
      Only dereference variable self after checking it is not NULL.
      Signed-off-by: Heinrich Schuchardt's avatarHeinrich Schuchardt <xypron.glpk@gmx.de>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    • Heinrich Schuchardt's avatar
      net: ieee802154/adf7242: syntax error ifdef DEBUG · d1134128
      Heinrich Schuchardt authored
      If DEBUG is defined, a superfluous closing brace
      is introduced.
      Signed-off-by: Heinrich Schuchardt's avatarHeinrich Schuchardt <xypron.glpk@gmx.de>
      Acked-by: default avatarMichael Hennerich <michael.hennerich@analog.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    • WANG Cong's avatar
      kcm: fix a signedness in kcm_splice_read() · f1971a2e
      WANG Cong authored
      skb_splice_bits() returns int, kcm_splice_read() returns ssize_t,
      both are signed.
      We may need another patch to make them all ssize_t, but that
      deserves a separated patch.
      Fixes: 91687355
       ("kcm: Splice support")
      Reported-by: default avatarDavid Binderman <linuxdev.baldrick@gmail.com>
      Cc: Tom Herbert <tom@herbertland.com>
      Signed-off-by: default avatarCong Wang <xiyou.wangcong@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    • Heinrich Schuchardt's avatar
      net: ehea: avoid null pointer dereference · 1740c29a
      Heinrich Schuchardt authored
      ehea_get_port may return NULL. Do not dereference NULL value.
      Fixes: 8c4877a4
       ("ehea: Use the standard logging functions")
      Signed-off-by: Heinrich Schuchardt's avatarHeinrich Schuchardt <xypron.glpk@gmx.de>
      Acked-by: default avatarThadeu Lima de Souza Cascardo <cascardo@debian.org>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    • Heinrich Schuchardt's avatar
      net: thunderx: avoid null pointer dereference · 099a728d
      Heinrich Schuchardt authored
      In function bgx_lmac_handler only use a member of
      lmac after checking it is not null.
      Signed-off-by: Heinrich Schuchardt's avatarHeinrich Schuchardt <xypron.glpk@gmx.de>
      Acked-by: default avatarDavid Daney <david.daney@cavium.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    • Linus Torvalds's avatar
      Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus · 07b75260
      Linus Torvalds authored
      Pull MIPS updates from Ralf Baechle:
       "This is the main pull request for MIPS for 4.7.  Here's the summary of
        the changes:
         - ATH79: Support for DTB passuing using the UHI boot protocol
         - ATH79: Remove support for builtin DTB.
         - ATH79: Add zboot debug serial support.
         - ATH79: Add initial support for Dragino MS14 (Dragine 2), Onion Omega
                  and DPT-Module.
         - ATH79: Update devicetree clock support for AR9132 and AR9331.
         - ATH79: Cleanup the DT code.
         - ATH79: Support newer SOCs in ath79_ddr_ctrl_init.
         - ATH79: Fix regression in PCI window initialization.
         - BCM47xx: Move SPROM driver to drivers/firmware/
         - BCM63xx: Enable partition parser in defconfig.
         - BMIPS: BMIPS5000 has I cache filing from D cache
         - BMIPS: BMIPS: Add cpu-feature-overrides.h
         - BMIPS: Add Whirlwind support
         - BMIPS: Adjust mips-hpt-frequency for BCM7435
         - BMIPS: Remove maxcpus from BCM97435SVMB DTS
         - BMIPS: Add missing 7038 L1 register cells to BCM7435
         - BMIPS: Various tweaks to initialization code.
         - BMIPS: Enable partition parser in defconfig.
         - BMIPS: Cache tweaks.
         - BMIPS: Add UART, I2C and SATA devices to DT.
         - BMIPS: Add BCM6358 and BCM63268support
         - BMIPS: Add device tree example for BCM6358.
         - BMIPS: Improve Improve BCM6328 and BCM6368 device trees
         - Lantiq: Add support for device tree file from boot loader
         - Lantiq: Allow build with no built-in DT.
         - Loongson 3: Reserve 32MB for RS780E integrated GPU.
         - Loongson 3: Fix build error after ld-version.sh modification
         - Loongson 3: Move chipset ACPI code from drivers to arch.
         - Loongson 3: Speedup irq processing.
         - Loongson 3: Add basic Loongson 3A support.
         - Loongson 3: Set cache flush handlers to nop.
         - Loongson 3: Invalidate special TLBs when needed.
         - Loongson 3: Fast TLB refill handler.
         - MT7620: Fallback strategy for invalid syscfg0.
         - Netlogic: Fix CP0_EBASE redefinition warnings
         - Octeon: Initialization fixes
         - Octeon: Add DTS files for the D-Link DSR-1000N and EdgeRouter Lite
         - Octeon: Enable add Octeon-drivers in cavium_octeon_defconfig
         - Octeon: Correctly handle endian-swapped initramfs images.
         - Octeon: Support CN73xx, CN75xx and CN78xx.
         - Octeon: Remove dead code from cvmx-sysinfo.
         - Octeon: Extend number of supported CPUs past 32.
         - Octeon: Remove some code limiting NR_IRQS to 255.
         - Octeon: Simplify octeon_irq_ciu_gpio_set_type.
         - Octeon: Mark some functions __init in smp.c
         - Octeon: Octeon: Add Octeon III CN7xxx interface detection
         - PIC32: Add serial driver and bindings for it.
         - PIC32: Add PIC32 deadman timer driver and bindings.
         - PIC32: Add PIC32 clock timer driver and bindings.
         - Pistachio: Determine SoC revision during boot
         - Sibyte: Fix Kconfig dependencies of SIBYTE_BUS_WATCHER.
         - Sibyte: Strip redundant comments from bcm1480_regs.h.
         - Panic immediately if panic_on_oops is set.
         - module: fix incorrect IS_ERR_VALUE macro usage.
         - module: Make consistent use of pr_*
         - Remove no longer needed work_on_cpu() call.
         - Remove CONFIG_IPV6_PRIVACY from defconfigs.
         - Fix registers of non-crashing CPUs in dumps.
         - Handle MIPSisms in new vmcore_elf32_check_arch.
         - Select CONFIG_HANDLE_DOMAIN_IRQ and make it work.
         - Allow RIXI to be used on non-R2 or R6 cores.
         - Reserve nosave data for hibernation
         - Fix siginfo.h to use strict POSIX types.
         - Don't unwind user mode with EVA.
         - Fix watchpoint restoration
         - Ptrace watchpoints for R6.
         - Sync icache when it fills from dcache
         - I6400 I-cache fills from dcache.
         - Various MSA fixes.
         - Cleanup MIPS_CPU_* definitions.
         - Signal: Move generic copy_siginfo to signal.h
         - Signal: Fix uapi include in exported asm/siginfo.h
         - Timer fixes for sake of KVM.
         - XPA TLB refill fixes.
         - Treat perf counter feature
         - Update John Crispin's email address
         - Add PIC32 watchdog and bindings.
         - Handle R10000 LL/SC bug in set_pte()
         - cpufreq: Various fixes for Longson1.
         - R6: Fix R2 emulation.
         - mathemu: Cosmetic fix to ADDIUPC emulation, plenty of other small fixes
         - ELF: ABI and FP fixes.
         - Allow for relocatable kernel and use that to support KASLR.
         - Fix CPC_BASE_ADDR mask
         - Plenty fo smp-cps, CM, R6 and M6250 fixes.
         - Make reset_control_ops const.
         - Fix kernel command line handling of leading whitespace.
         - Cleanups to cache handling.
         - Add brcm, bcm6345-l1-intc device tree bindings.
         - Use generic clkdev.h header
         - Remove CLK_IS_ROOT usage.
         - Misc small cleanups.
         - CM: Fix compilation error when !MIPS_CM
         - oprofile: Fix a preemption issue
         - Detect DSP ASE v3 support:1"
      * 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus: (275 commits)
        MIPS: pic32mzda: fix getting timer clock rate.
        MIPS: ath79: fix regression in PCI window initialization
        MIPS: ath79: make ath79_ddr_ctrl_init() compatible for newer SoCs
        MIPS: Fix VZ probe gas errors with binutils <2.24
        MIPS: perf: Fix I6400 event numbers
        MIPS: DEC: Export `ioasic_ssr_lock' to modules
        MIPS: MSA: Fix a link error on `_init_msa_upper' with older GCC
        MIPS: CM: Fix compilation error when !MIPS_CM
        MIPS: Fix genvdso error on rebuild
        USB: ohci-jz4740: Remove obsolete driver
        MIPS: JZ4740: Probe OHCI platform device via DT
        MIPS: JZ4740: Qi LB60: Remove support for AVT2 variant
        MIPS: pistachio: Determine SoC revision during boot
        MIPS: BMIPS: Adjust mips-hpt-frequency for BCM7435
        mips: mt7620: fallback to SDRAM when syscfg0 does not have a valid value for the memory type
        MIPS: Prevent "restoration" of MSA context in non-MSA kernels
        MIPS: cevt-r4k: Dynamically calculate min_delta_ns
        MIPS: malta-time: Take seconds into account
        MIPS: malta-time: Start GIC count before syncing to RTC
        MIPS: Force CPUs to lose FP context during mode switches
    • Linus Torvalds's avatar
      Merge tag 'arc-4.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc · 0efacbba
      Linus Torvalds authored
      Pull ARC updates from Vineet Gupta:
       "We have a relatively big changeset for ARC for 4.7.
        The highlight is support for EZChip (now Mellanox) NPS-400 network
        processor, a 400-Gb throughput C-programmable packet processor based
        on ARC700 cores from Synopsys. See
        Also present are irqchip and clocksource drivers for NPS as agreed
        with respective maintainers to go via ARC tree due to an soc header
        dependency.  I have the needed ACKs from Jason, Marc, Daniel.  You
        might run into a trivial merge conflict in drivers/irqchip/*
        This EZChip platform support required some deep changes in ARC
        architecture code and also opportunity to cleanup past sins (legacy
        irq domains, missing irq domain lookup, hard coded timer irqs...)
         - Support for EZChip (now Mellanox) NPS-400 Network processor based
           on ARC700
         - NPS interrupt controller and clocksource drivers
         - ARC timers probed off DT
         - ARC iqrchips switching to linear domain (upgrade from legacy
      * tag 'arc-4.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc: (37 commits)
        arc: axs103_smp: Fix CPU frequency to 100MHz for dual-core
        arc: axs10x: Add DT bindings for I2S PLL Clock
        ARC: pae: STRICT_MM_TYPECHECKS was broken
        ARC: Add eznps platform to Kconfig and Makefile
        ARC: [plat-eznps] Use dedicated COMMAND_LINE_SIZE
        ARC: [plat-eznps] Use dedicated cpu_relax()
        ARC: [plat-eznps] Use dedicated identity auxiliary register.
        ARC: [plat-eznps] Use dedicated SMP barriers
        ARC: [plat-eznps] Use dedicated atomic/bitops/cmpxchg
        ARC: [plat-eznps] Use dedicated user stack top
        ARC: [plat-eznps] Add eznps platform
        ARC: [plat-eznps] Add eznps board defconfig and dts
        ARC: Mark secondary cpu online only after all HW setup is done
        ARC: rwlock: disable interrupts in !LLSC variant
        ARC: Make vmalloc size configurable
        ARC: clean out UAPI byteorder.h clean off Kconfig symbol
        irqchip: add nps Internal and external irqchips
        clocksource: Add NPS400 timers driver
        soc: Support for EZchip SoC
        Documentation: Add EZchip vendor to binding list
    • Linus Torvalds's avatar
      Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security · f4f27d00
      Linus Torvalds authored
      Pull security subsystem updates from James Morris:
         - A new LSM, "LoadPin", from Kees Cook is added, which allows forcing
           of modules and firmware to be loaded from a specific device (this
           is from ChromeOS, where the device as a whole is verified
           cryptographically via dm-verity).
           This is disabled by default but can be configured to be enabled by
           default (don't do this if you don't know what you're doing).
         - Keys: allow authentication data to be stored in an asymmetric key.
           Lots of general fixes and updates.
         - SELinux: add restrictions for loading of kernel modules via
           finit_module().  Distinguish non-init user namespace capability
           checks.  Apply execstack check on thread stacks"
      * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security: (48 commits)
        LSM: LoadPin: provide enablement CONFIG
        Yama: use atomic allocations when reporting
        seccomp: Fix comment typo
        ima: add support for creating files using the mknodat syscall
        ima: fix ima_inode_post_setattr
        vfs: forbid write access when reading a file into memory
        fs: fix over-zealous use of "const"
        selinux: apply execstack check on thread stacks
        selinux: distinguish non-init user namespace capability checks
        LSM: LoadPin for kernel file loading restrictions
        fs: define a string representation of the kernel_read_file_id enumeration
        Yama: consolidate error reporting
        string_helpers: add kstrdup_quotable_file
        string_helpers: add kstrdup_quotable_cmdline
        string_helpers: add kstrdup_quotable
        selinux: check ss_initialized before revalidating an inode label
        selinux: delay inode label lookup as long as possible
        selinux: don't revalidate an inode's label when explicitly setting it
        selinux: Change bool variable name to index.
        KEYS: Add KEYCTL_DH_COMPUTE command
    • Linus Torvalds's avatar
      Merge tag 'trace-v4.7' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace · 2600a46e
      Linus Torvalds authored
      Pull tracing updates from Steven Rostedt:
       "This includes two new updates for the ftrace infrastructure.
         - With the changing of the code for filtering events by pid, from a
           list of pids to a bitmask, we can now easily implement following
           forks.  With a new tracing option "event-fork" which, when set,
           will have tasks with pids in set_event_pid, when they fork, to have
           their child pids added to set_event_pid and the child will be
           traced as well.
           Note, if "event-fork" is set and a task with its pid in
           set_event_pid exits, its pid will be removed from set_event_pid
         - The addition of Tom Zanussi's hist triggers.  This includes a very
           thorough documentatino on how to use the hist triggers with events.
           This introduces a quick and easy way to get histogram data from
           events and their fields.
        Some other cleanups and updates were added as well.  Like Masami
        Hiramatsu added test cases for the event trigger and hist triggers.
        Also I added a speed up of filtering by using a temp buffer when
        filters are set"
      * tag 'trace-v4.7' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace: (45 commits)
        tracing: Use temp buffer when filtering events
        tracing: Remove TRACE_EVENT_FL_USE_CALL_FILTER logic
        tracing: Remove unused function trace_current_buffer_lock_reserve()
        tracing: Remove one use of trace_current_buffer_lock_reserve()
        tracing: Have trace_buffer_unlock_commit() call the _regs version with NULL
        tracing: Remove unused function trace_current_buffer_discard_commit()
        tracing: Move trace_buffer_unlock_commit{_regs}() to local header
        tracing: Fold filter_check_discard() into its only user
        tracing: Make filter_check_discard() local
        tracing: Move event_trigger_unlock_commit{_regs}() to local header
        tracing: Don't use the address of the buffer array name in copy_from_user
        tracing: Handle tracing_map_alloc_elts() error path correctly
        tracing: Add check for NULL event field when creating hist field
        tracing: checking for NULL instead of IS_ERR()
        tracing: Do not inherit event-fork option for instances
        tracing: Fix unsigned comparison to zero in hist trigger code
        kselftests/ftrace: Add a test for log2 modifier of hist trigger
        tracing: Add hist trigger 'log2' modifier
        kselftests/ftrace: Add hist trigger testcases
        kselftests/ftrace : Add event trigger testcases
    • Linus Torvalds's avatar
      Merge branch 'stable-4.7' of git://git.infradead.org/users/pcmoore/audit · 03e1aa1c
      Linus Torvalds authored
      Pull audit updates from Paul Moore:
       "Four small audit patches for 4.7.
        Two are simple cleanups around the audit thread management code, one
        adds a tty field to AUDIT_LOGIN events, and the final patch makes
        tty_name() usable regardless of CONFIG_TTY.
        Nothing controversial, and it all passes our regression test"
      * 'stable-4.7' of git://git.infradead.org/users/pcmoore/audit:
        tty: provide tty_name() even without CONFIG_TTY
        audit: add tty field to LOGIN event
        audit: we don't need to __set_current_state(TASK_RUNNING)
        audit: cleanup prune_tree_thread
    • Linus Torvalds's avatar
      Merge tag 'rproc-v4.7' of git://github.com/andersson/remoteproc · 97f00905
      Linus Torvalds authored
      Pull remoteproc updates from Bjorn Andersson:
       "Introduce a synchronization point between the async firmware loading
        and clients requesting the remote processor to boot, as well as
        support for remote processors that are not interested in the resource
        table information"
      * tag 'rproc-v4.7' of git://github.com/andersson/remoteproc:
        remoteproc: Add additional crash reasons
        remoteproc: core: Make the loaded resource table optional
        remoteproc: core: Task sync during rproc_fw_boot()
    • Linus Torvalds's avatar
      Merge tag 'rpmsg-v4.7' of git://github.com/andersson/remoteproc · 676d9735
      Linus Torvalds authored
      Pull rpmsg updates from Bjorn Andersson:
       "Refactor rpmsg module registration to follow other subsystems; by
        introduction of module_rpmsg_driver and hiding of THIS_MODULE from
      * tag 'rpmsg-v4.7' of git://github.com/andersson/remoteproc:
        rpmsg: use module_rpmsg_driver in existing drivers and examples
        rpmsg: add helper macro module_rpmsg_driver
        rpmsg: drop owner assignment from rpmsg_drivers
        rpmsg: add THIS_MODULE to rpmsg_driver in rpmsg core
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input · 888dae53
      Linus Torvalds authored
      Pull input updates from Dmitry Torokhov:
       "First round of updates for the input subsystem.  No new drivers here,
        just some driver fixes"
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
        Input: rotary-encoder - fix bare use of 'unsigned'
        Input: cm109 - spin_lock in complete() cleanup
        Input: cm109 - fix handling of volume and mute buttons
        Input: byd - don't wipe dynamically allocated memory twice
        Input: twl4030 - fix unsafe macro definition
        Input: twl6040-vibra - remove mutex
        Input: bcm_iproc_tsc - DT spelling s/clock-name/clock-names/
        Input: bcm_iproc_tsc - use syscon to access shared registers
        Input: ti_am335x_tsc - use SIMPLE_DEV_PM_OPS
        Input: omap-keypad - remove set_col_gpio_val() and get_row_gpio_val()
        Input: omap-keypad - drop empty PM stubs
        Input: omap-keypad - remove adjusting of scan delay
        Input: gpio-keys - clean up device tree binding example
        Input: kbtab - stop saving struct usb_device
        Input: gtco - stop saving struct usb_device
        Input: aiptek - stop saving struct usb_device
        Input: acecad - stop saving struct usb_device
    • Linus Torvalds's avatar
      Merge tag 'media/v4.7-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media · 19c5abcb
      Linus Torvalds authored
      Pull media updates from Mauro Carvalho Chehab:
       - added support for Intersil/Techwell TW686x-based video capture cards
       - v4l PCI skeleton driver moved to samples directory
       - Documentation cleanups and improvements
       - RC: reduced the memory footprint for IR raw events
       - tpg: Export the tpg code from vivid as a module
       - adv7180: Add device tree binding documentation
       - lots of driver improvements and fixes
      * tag 'media/v4.7-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (173 commits)
        [media] exynos-gsc: avoid build warning without CONFIG_OF
        [media] samples: v4l: from Documentation to samples directory
        [media] dib0700: add USB ID for another STK8096-PVR ref design based card
        [media] tvp5150: propagate I2C write error in .s_register callback
        [media] tvp5150: return I2C write operation failure to callers
        [media] em28xx: add support for Hauppauge WinTV-dualHD DVB tuner
        [media] em28xx: add missing USB IDs
        [media] update cx23885 and em28xx cardlists
        [media] media: au0828 fix au0828_v4l2_device_register() to not unlock and free
        [media] c8sectpfe: Rework firmware loading mechanism
        [media] c8sectpfe: Demote print to dev_dbg
        [media] c8sectpfe: Fix broken circular buffer wp management
        [media] media-device: Simplify compat32 logic
        [media] media: i2c: ths7303: remove redundant assignment on bt
        [media] dvb-usb: hide unused functions
        [media] xilinx-vipp: remove unnecessary of_node_put
        [media] drivers/media/media-devnode: clear private_data before put_device()
        [media] drivers/media/media-device: move debug log before _devnode_unregister()
        [media] drivers/media/rc: postpone kfree(rc_dev)
        [media] media/dvb-core: forward media_create_pad_links() return value
  3. 18 May, 2016 6 commits
    • Linus Torvalds's avatar
      Merge tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · 675e0655
      Linus Torvalds authored
      Pull SCSI updates from James Bottomley:
       "First round of SCSI updates for the 4.6+ merge window.
        This batch includes the usual quota of driver updates (bnx2fc, mp3sas,
        hpsa, ncr5380, lpfc, hisi_sas, snic, aacraid, megaraid_sas).  There's
        also a multiqueue update for scsi_debug, assorted bug fixes and a few
        other minor updates (refactor of scsi_sg_pools into generic code, alua
        and VPD updates, and struct timeval conversions)"
      * tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (138 commits)
        mpt3sas: Used "synchronize_irq()"API to synchronize timed-out IO & TMs
        mpt3sas: Set maximum transfer length per IO to 4MB for VDs
        mpt3sas: Updating mpt3sas driver version to
        mpt3sas: Fix initial Reference tag field for 4K PI drives.
        mpt3sas: Handle active cable exception event
        mpt3sas: Update MPI header to 2.00.42
        Revert "lpfc: Delete unnecessary checks before the function call mempool_destroy"
        eata_pio: missing break statement
        hpsa: Fix type ZBC conditional checks
        scsi_lib: Decode T10 vendor IDs
        scsi_dh_alua: do not fail for unknown VPD identification
        scsi_debug: use locally assigned naa
        scsi_debug: uuid for lu name
        scsi_debug: vpd and mode page work
        scsi_debug: add multiple queue support
        bfa: fix bfa_fcb_itnim_alloc() error handling
        megaraid_sas: Downgrade two success messages to info
        cxlflash: Fix to resolve dead-lock during EEH recovery
        scsi_debug: rework resp_report_luns
        scsi_debug: use pdt constants
    • Linus Torvalds's avatar
      Merge branch 'stable/for-linus-4.7' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/ibft · d974f09e
      Linus Torvalds authored
      Pull iscsi_ibft updates from Konrad Rzeszutek Wilk:
       "The pull has two features - both of them expand the SysFS entries:
         - 'prefix-len' - which is subnet_mask_prefix of the iBFT header.
         - 'acpi_header' dir with: 'iBFT', OEM-ID (whatever it extracts from
           the iBFT header) and OEM_TABLE_ID (also whatever it extracts from
           the iBFT header).  This is to help NIC drivers to figure out during
           bootup how to deal with BIOS created iBFT tables (like by TianoCore
           UEFI implemenation)"
      * 'stable/for-linus-4.7' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/ibft:
        ibft: Expose iBFT acpi header via sysfs
        iscsi_ibft: Add prefix-len attr and display netmask
    • Linus Torvalds's avatar
      Merge tag 'armsoc-drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 4a5219ed
      Linus Torvalds authored
      Pull ARM SoC driver updates from Arnd Bergmann:
       "Driver updates for ARM SoCs, these contain various things that touch
        the drivers/ directory but got merged through arm-soc for practical
        For the most part, this is now related to power management
        controllers, which have not yet been abstracted into a separate
        subsystem, and typically require some code in drivers/soc or arch/arm
        to control the power domains.
        Another large chunk here is a rework of the NVIDIA Tegra USB3.0
        support, which was surprisingly tricky and took a long time to get
        Finally, reset controller handling as always gets merged through here
        as well"
      * tag 'armsoc-drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (97 commits)
        arm-ccn: Enable building as module
        soc/tegra: pmc: Add generic PM domain support
        usb: xhci: tegra: Add Tegra210 support
        usb: xhci: Add NVIDIA Tegra XUSB controller driver
        dt-bindings: usb: xhci-tegra: Add Tegra210 XUSB controller support
        dt-bindings: usb: Add NVIDIA Tegra XUSB controller binding
        PCI: tegra: Support per-lane PHYs
        dt-bindings: pci: tegra: Update for per-lane PHYs
        phy: tegra: Add Tegra210 support
        phy: Add Tegra XUSB pad controller support
        dt-bindings: phy: tegra-xusb-padctl: Add Tegra210 support
        dt-bindings: phy: Add NVIDIA Tegra XUSB pad controller binding
        phy: core: Allow children node to be overridden
        clk: tegra: Add interface to enable hardware control of SATA/XUSB PLLs
        drivers: firmware: psci: make two helper functions inline
        soc: renesas: rcar-sysc: Add support for R-Car H3 power areas
        soc: renesas: rcar-sysc: Add support for R-Car E2 power areas
        soc: renesas: rcar-sysc: Add support for R-Car M2-N power areas
        soc: renesas: rcar-sysc: Add support for R-Car M2-W power areas
        soc: renesas: rcar-sysc: Add support for R-Car H2 power areas
    • Linus Torvalds's avatar
      Merge tag 'armsoc-defconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 9797f6b0
      Linus Torvalds authored
      Pull ARM SoC defconfig updates from Arnd Bergmann:
       "As usual, a bunch of commits, mostly adding drivers and other options
        to defconfigs.
        We are adding three new defconfig files for the newly added 32-bit
        machines (aspeed and mps2), the rest is mainly housekeeping.
        The changes outside of arch/arm/config/ are for a Kconfig symbol that
        got renamed"
      * tag 'armsoc-defconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (63 commits)
        ARM: aspeed: adapt defconfigs for new CONFIG_PRINTK_TIME
        ARM: u8500_defconfig: update sensor config
        ARM: u8500_defconfig: remove staging from defconfig
        ARM: multi_v7_defconfig: Remove unused Kconfig option MACH_UX500_DT
        ARM: at91/defconfig: sama5: add CONFIG_FHANDLE
        arm/configs: Add Aspeed defconfig
        arm/configs/multi_v5: Add Aspeed ast2400
        ARM: at91: sama5: Update defconfig
        ARM: imx_v6_v7_defconfig: add CONFIG_MICREL_PHY
        ARM: imx_v6_v7_defconfig: add CONFIG_I2C_GPIO
        ARM: multi_v7: Enable Tegra XUSB controller in defconfig
        ARM: tegra: Enable XUSB controller in defconfig
        ARM: omap2plus_defconfig: Enable PWM and ir-rx51 as loadable modules
        ARM: multi_v7_defconfig: add the Atmel sama5d2-compatible ADC driver
        ARM: multi_v7_defconfig: add the Atmel Audio microphone interface PDMIC
        ARM: multi_v7_defconfig: add Atmel ISI (Image Sensor Interface) driver
        ARM: multi_v7_defconfig: add Atmel watchdog timers
        ARM: multi_v7_defconfig: add HLCDC drivers as modules
        ARM: at91/defconfig: add PDMIC driver to sama5_defconfig
        ARM: at91/defconfig: add HLCDC driver to sama5_defconfig
    • Linus Torvalds's avatar
      Merge tag 'armsoc-dt64' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 2ec3240f
      Linus Torvalds authored
      Pull ARM 64-bit DT updates from Arnd Bergmann:
       "We continue ramping up platform support for 64-bit ARM machines, with
        111 individual non-merge changesets touching 21 platforms.
        The LG1312 platform is completely new and is the first ARM platform by
        LG that we support in the mainline kernel.  Two other SoCs got added
        that are updated versions of existing SoC families, so the port mainly
        consists of new dts files:
         - The Hisilicon Hip06/D03 is the latest server platform from
           Huawei/Hisilicon, and follows the Hip05/D02 platform.
         - Rockchip RK3399 follows the 32-bit RK3288 that is popular in
           low-end Chromebooks and the 64-bit RK3368 that is mainly found in
           chinese Android TV boxes.
        The 96Boards HiKey based on the Hisilicon Hi6220 (Kirin 620) gets a
        long-awaited overhaul with a lot of devices enabled in the DT, so it
        should be much more usable with a mainline kernel now.  See also
        A lot of work went into enabling new device drivers on existing
        machines, but we also have a couple of new commercially available
         - Google Pixel C laptop based on Tegra210
         - Hardkernel Odroid C2 Based on Amlogic Meson GXBB (S905)
         - Geekbuying GeekBox based on Rockchip RK3368
        And finally, a couple of reference or development platforms that are
        not end-user platforms but are used for trying out the respective SoC
         - Amlogic Meson GXBB P200 and P201 development systems
         - NXP Layerscape 1043A QDS development board
         - Hisilicon Hip06 D03 server board, as mentioned above
         - LG1312 Reference Design
         - RK3399 Evaluation Board"
      * tag 'armsoc-dt64' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (104 commits)
        arm64: dts: marvell: add XOR node for Armada 3700 SoC
        dt-bindings: document rockchip rk3399-evb board
        arm64: dts: rockchip: add dts file for RK3399 evaluation board
        arm64: dts: rockchip: add core dtsi file for RK3399 SoCs
        dt-bindings: rockchip-dw-mshc: add description for rk3399
        arm64: dts: marvell: Use a SoC-specific compatible for xHCI on Armada37xx
        arm64: dts: marvell: Rename armada-37xx USB node
        arm64: dts: marvell: Clean up armada-3720-db
        Documentation: arm64: Add Hisilicon Hip06 D03 dts binding
        arm64: dts: Add initial dts for Hisilicon Hip06 D03 board
        arm64: dts: hip05: Add nor flash support
        arm64: dts: hip05: fix its node without msi-cells
        arm64: dts: r8a7795: Don't disable referenced optional clocks
        arm64: dts: salvator-x: populate EXTALR
        arm64: dts: r8a7795: enable PCIe on Salvator-X
        arm64: dts: r8a7795: Add PCIe nodes
        arm64: tegra: Add IOMMU node to GM20B on Tegra210
        arm64: tegra: Add reference clock to GM20B on Tegra210
        dt-bindings: Add documentation for GM20B GPU
        dt-bindings: gk20a: Document iommus property
    • Linus Torvalds's avatar
      Merge tag 'armsoc-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · f7df9be0
      Linus Torvalds authored
      Pull ARM DT updates from Arnd Bergmann:
       "These are all the updates to device tree files for 32-bit platforms,
        which as usual makes up the bulk of the ARM SoC changes: 462 non-merge
        changesets, 450 files changed, 23340 insertions, 5216 deletions.
        The three platforms that are added with the "soc" branch are here as
        well, and we add some related machine files:
         - For Aspeed AST2400/AST2500, we get the evaluation platform and the
           Tyan Palmetto POWER8 mainboard that uses the AST2400 BMC
         - For Oxnas 810SE, the Western Digital "My Book World Edition" is
           added as the only platform at the moment.
         - For ARM MPS2, the AN385 (Cortex-M3) and AN399 (Cortex-M7) are
        On the ARM Realview development platform, we now support all machines
        with device tree, previously only the board files were supported,
        which in turn will likely be removed soon.
        Qualcomm IPQ4019 is the second generation ARM based "Internet
        Processor", following the IPQ806x that is used in many high-end WiFi
        routers.  This one integrates two ath10k wifi radios that were
        previously on separate chips.
        Other boards that got added for existing chips are:
        Ti OMAP family:
           - Amazon Kindle Fire, first generation, tablet and ebook reader
           - OnRISC Baltos iR 2110 and 3220 embedded industrial PCs
           - TI AM5728 IDK, TI AM3359 ICE-V2, and TI DRA722 Rev C EVM
             development systems
        Samsung EXYNOS platform:
           - Samsung ARTIK5 evaluation board, see
        NXP i.MX platforms:
           - Ka-Ro electronics TX6S-8034, TX6S-8035, TX6U-8033, TX6U-81xx,
             TX6Q-1036, TX6Q-1110/-1130, TXUL-0010 and TXUL-0011 industrial
             SoM modules
           - Embest MarS Board i.MX6Dual DIY platform
           - Boundary Devices i.MX6 Quad Plus Nitrogen6_MAX and SoloX
             Nitrogen6sx embedded boards
           - Technexion Pico i.MX6UL compute module
           - ZII VF610 Development Board
        Marvell embedded (mvebu, orion, kirkwood) platforms:
           - Linksys Viper (E4200v2 / EA4500) WiFi router
           - Buffalo Kurobox Pro NAS
        Qualcomm Snapdragon:
           - Arrow DragonBoard 600c (96boards) with APQ8064 Snapdragon 600
        Rockchips platform:
           - mqmaker MiQi single-board computer
        Altera SoCFPGA:
           - samtec VIN|ING 1000 vehicle communication interface
        Allwinner Sunxi platforms:
           - Dserve DSRV9703C tablet
           - Difrnce DIT4350 tablet
           - Colorfly E708 Q1 tablet
           - Polaroid MID2809PXE04 tablet
           - Olimex A20 OLinuXino LIME2 single board computer
           - Xunlong Orange Pi 2, Orange Pi One, and Orange Pi PC single board
        Across many platforms, bug fixes went in to address warnings that dtc
        now emits with 'make dtbs W=1'.  Further changes for device enablement
        went into Ti OMAP, bcm283x (Raspberry Pi), bcm47xx (wifi router), Ti
        Davinci, Samsung EXYNOS, Marvell mvebu/kirkwood/orion, NXP i.MX/Vybrid
        NXP LPC18xx, NXP LPC32xx, Renesas shmobile/r-mobile/r-car, Rockchips
        rk3xxx, ST Ux500, ST STi, Atmel AT91/SAMA5, Altera SoCFPGA, Allwinner
        Sunxi, Sigma Designs Tango, NVIDIA Tegra, Socionext Uniphier and ARM
        Versatile Express"
      * tag 'armsoc-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (458 commits)
        ARM: dts: tango4: Import watchdog node
        ARM: dts: tango4: Update cpus node for cpufreq
        ARM: dts: tango4: Update DT to match clk driver
        ARM: dts: tango4: Initial thermal support
        arm/dst: Add Aspeed ast2500 device tree
        arm/dts: Add Aspeed ast2400 device tree
        ARM: sun7i: dt: Add pll3 and pll7 clocks
        ARM: dts: sunxi: Add a olinuxino-lime2-emmc
        ARM: dts: at91: sama5d4: add trng node
        ARM: dts: at91: sama5d3: add trng node
        ARM: dts: at91: sama5d2: add trng node
        ARM: dts: at91: at91sam9g45 family: reduce the trng register map size
        ARM: sun4i: dt: Add pll3 and pll7 clocks
        ARM: sun5i: chip: Enable the TV Encoder
        ARM: sun5i: r8: Add display blocks to the DTSI
        ARM: sun5i: a13: Add display and TCON clocks
        ARM: dts: ux500: configure the accelerometers open drain
        ARM: mx5: dts: Enable USB OTG on M53EVK
        ARM: dts: imx6ul-14x14-evk: Add audio support
        ARM: dts: imx6qdl: Remove unneeded unit-addresses