22 Jul, 2014

26 commits

  • If path events occur the formatting process stucks because path
    events may flush format requests from the queue.

    Kick the format process after path events are handled.

    Signed-off-by: Stefan Haberland
    Signed-off-by: Martin Schwidefsky

    Stefan Haberland
     
  • Formatting of a previously formatted device is slower than newly
    format a device when alias devices are available.
    For already formatted devices the alias devices are not used for
    formatting.

    Fix the alias handling for already formatted devices.

    Signed-off-by: Stefan Haberland
    Signed-off-by: Martin Schwidefsky

    Stefan Haberland
     
  • KMSG_COMPONENT has to be defined instead of COMPONENT.

    Signed-off-by: Gerald Schaefer
    Signed-off-by: Martin Schwidefsky

    Gerald Schaefer
     
  • We only have to check kdump memory for the MEM_GOING_OFFLINE action.
    Therefore skip the test and return NOTIFY_OK for all other memory
    hotplug actions.

    Signed-off-by: Michael Holzheu
    Signed-off-by: Martin Schwidefsky

    Michael Holzheu
     
  • The help text for DIAG288_WATCHDOG in drivers/watchdog/Kconfig
    still mentioned the misleading old module name vmwatchdog.
    This patch changes that to the correct new name diag288_wdt.

    Signed-off-by: Philipp Hachtmann
    Signed-off-by: Martin Schwidefsky

    Philipp Hachtmann
     
  • Fix checkpatch warnings:
    "WARNING: Prefer seq_puts to seq_printf"

    Signed-off-by: Fabian Frederick
    Signed-off-by: Stefan Haberland
    Signed-off-by: Martin Schwidefsky

    Fabian Frederick
     
  • Fix checkpatch warning:
    "WARNING: Prefer pr_warn(... to pr_warning(..."
    + coalesce formats.

    Signed-off-by: Fabian Frederick
    Signed-off-by: Stefan Haberland
    Signed-off-by: Martin Schwidefsky

    Fabian Frederick
     
  • Fix checkpatch warnings:
    "WARNING: EXPORT_SYMBOL(foo); should immediately follow its function/variable"

    Signed-off-by: Fabian Frederick
    Signed-off-by: Stefan Haberland
    Signed-off-by: Martin Schwidefsky

    Fabian Frederick
     
  • This fixes checkpatch warning:
    "WARNING: debugfs_remove(NULL) is safe this check is probably not required"

    Signed-off-by: Fabian Frederick
    Signed-off-by: Stefan Haberland
    Signed-off-by: Martin Schwidefsky

    Fabian Frederick
     
  • Use qdio buffer helpers to manage the buffers used for the request
    and response queues.

    No functional change.

    Reviewed-by: Steffen Maier
    Signed-off-by: Sebastian Ott
    Signed-off-by: Martin Schwidefsky

    Sebastian Ott
     
  • Because of the embedded qdio_buffer array struct qeth_qdio_out_q is
    quite large resulting in an order 4 allocation. This is likely to
    fail at runtime and wastes a lot of memory since the actual size is
    just about 34K.

    Since there is no need for this buffer to be contiguous split it up
    using qdio buffer helpers.

    Reported-by: Neale Ferguson
    Reviewed-by: Ursula Braun
    Signed-off-by: Sebastian Ott
    Signed-off-by: Martin Schwidefsky

    Sebastian Ott
     
  • Because of the embedded qdio_buffer array struct qeth_qdio_q is quite
    large resulting in an order 4 allocation. This is likely to fail at
    runtime and wastes a lot of memory since the actual size is just
    about 36K.

    Since there is no need for this buffer to be contiguous split it up
    using qdio buffer helpers.

    Reported-by: Neale Ferguson
    Reviewed-by: Ursula Braun
    Signed-off-by: Sebastian Ott
    Signed-off-by: Martin Schwidefsky

    Sebastian Ott
     
  • Get rid of duplicated code by introducing some helpers to allocate
    and free qdio queues used by qeth for its input and completion queue.

    No functional change.

    Reviewed-by: Ursula Braun
    Signed-off-by: Sebastian Ott
    Signed-off-by: Martin Schwidefsky

    Sebastian Ott
     
  • Users of qdio buffers employ different strategies to manage these
    buffers. The qeth driver uses huge contiguous buffers which leads
    to high order allocations with all their downsides.

    This patch provides helpers to allocate, free, and reset arrays of
    qdio buffers using non contiguous pages.

    Reviewed-by: Martin Peschke
    Signed-off-by: Sebastian Ott
    Signed-off-by: Martin Schwidefsky

    Sebastian Ott
     
  • Pull networking fixes from David Miller:

    1) Null termination fix in dns_resolver got the pointer dereferncing
    wrong, fix from Ben Hutchings.

    2) ip_options_compile() has a benign but real buffer overflow when
    parsing options. From Eric Dumazet.

    3) Table updates can crash in netfilter's nftables if none of the state
    flags indicate an actual change, from Pablo Neira Ayuso.

    4) Fix race in nf_tables dumping, also from Pablo.

    5) GRE-GRO support broke the forwarding path because the segmentation
    state was not fully initialized in these paths, from Jerry Chu.

    6) sunvnet driver leaks objects and potentially crashes on module
    unload, from Sowmini Varadhan.

    7) We can accidently generate the same handle for several u32
    classifier filters, fix from Cong Wang.

    8) Several edge case bug fixes in fragment handling in xen-netback,
    from Zoltan Kiss.

    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (21 commits)
    ipv4: fix buffer overflow in ip_options_compile()
    batman-adv: fix TT VLAN inconsistency on VLAN re-add
    batman-adv: drop QinQ claim frames in bridge loop avoidance
    dns_resolver: Null-terminate the right string
    xen-netback: Fix pointer incrementation to avoid incorrect logging
    xen-netback: Fix releasing header slot on error path
    xen-netback: Fix releasing frag_list skbs in error path
    xen-netback: Fix handling frag_list on grant op error path
    net_sched: avoid generating same handle for u32 filters
    net: huawei_cdc_ncm: add "subclass 3" devices
    net: qmi_wwan: add two Sierra Wireless/Netgear devices
    wan/x25_asy: integer overflow in x25_asy_change_mtu()
    net: ppp: fix creating PPP pass and active filters
    net/mlx4_en: cq->irq_desc wasn't set in legacy EQ's
    sunvnet: clean up objects created in vnet_new() on vnet_exit()
    r8169: Enable RX_MULTI_EN for RTL_GIGA_MAC_VER_40
    net-gre-gro: Fix a bug that breaks the forwarding path
    netfilter: nf_tables: 64bit stats need some extra synchronization
    netfilter: nf_tables: set NLM_F_DUMP_INTR if netlink dumping is stale
    netfilter: nf_tables: safe RCU iteration on list when dumping
    ...

    Linus Torvalds
     
  • Pull sparc fix from David Miller:
    "Need to hook up the new renameat2 system call"

    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc:
    sparc: Hook up renameat2 syscall.

    Linus Torvalds
     
  • Pull IDE fixes from David Miller:
    - fix interrupt registry for some Atari IDE chipsets.
    - adjust Kconfig dependencies for x86_32 specific chips.

    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide:
    ide: Fix SC1200 dependencies
    ide: Fix CS5520 and CS5530 dependencies
    m68k/atari - ide: do not register interrupt if host->get_lock is set

    Linus Torvalds
     
  • …it/rostedt/linux-trace

    Pull trace fix from Steven Rostedt:
    "Tony Luck found that using the "uptime" trace clock that uses jiffies
    as a counter was converted to nanoseconds (silly), and after 1 hour 11
    minutes and 34 seconds, this monotonic clock would wrap, causing havoc
    with the tracing system and making the clock useless.

    He converted that clock to use jiffies_64 and made it into a counter
    instead of nanosecond conversions, and displayed the clock with the
    straight jiffy count, which works much better than it did in the past"

    * tag 'trace-fixes-v3.16-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace:
    tracing: Fix wraparound problems in "uptime" trace clock

    Linus Torvalds
     
  • Signed-off-by: David S. Miller

    David S. Miller
     
  • Antonio Quartulli says:

    ====================
    pull request [net]: batman-adv 20140721

    here you have two fixes that we have been testing for quite some time
    (this is why they arrived a bit late in the rc cycle).

    Patch 1) ensures that BLA packets get dropped and not forwarded to the
    mesh even if they reach batman-adv within QinQ frames. Forwarding them
    into the mesh means messing up with the TT database of other nodes which
    can generate all kind of unexpected behaviours during route computation.

    Patch 2) avoids a couple of race conditions triggered upon fast VLAN
    deletion-addition. Such race conditions are pretty dangerous because
    they not only create inconsistencies in the TT database of the nodes
    in the network, but such scenario is also unrecoverable (unless
    nodes are rebooted).
    ====================

    Signed-off-by: David S. Miller

    David S. Miller
     
  • There is a benign buffer overflow in ip_options_compile spotted by
    AddressSanitizer[1] :

    Its benign because we always can access one extra byte in skb->head
    (because header is followed by struct skb_shared_info), and in this case
    this byte is not even used.

    [28504.910798] ==================================================================
    [28504.912046] AddressSanitizer: heap-buffer-overflow in ip_options_compile
    [28504.913170] Read of size 1 by thread T15843:
    [28504.914026] [] ip_options_compile+0x121/0x9c0
    [28504.915394] [] ip_options_get_from_user+0xad/0x120
    [28504.916843] [] do_ip_setsockopt.isra.15+0x8df/0x1630
    [28504.918175] [] ip_setsockopt+0x30/0xa0
    [28504.919490] [] tcp_setsockopt+0x5b/0x90
    [28504.920835] [] sock_common_setsockopt+0x5f/0x70
    [28504.922208] [] SyS_setsockopt+0xa2/0x140
    [28504.923459] [] system_call_fastpath+0x16/0x1b
    [28504.924722]
    [28504.925106] Allocated by thread T15843:
    [28504.925815] [] ip_options_get_from_user+0x35/0x120
    [28504.926884] [] do_ip_setsockopt.isra.15+0x8df/0x1630
    [28504.927975] [] ip_setsockopt+0x30/0xa0
    [28504.929175] [] tcp_setsockopt+0x5b/0x90
    [28504.930400] [] sock_common_setsockopt+0x5f/0x70
    [28504.931677] [] SyS_setsockopt+0xa2/0x140
    [28504.932851] [] system_call_fastpath+0x16/0x1b
    [28504.934018]
    [28504.934377] The buggy address ffff880026382828 is located 0 bytes to the right
    [28504.934377] of 40-byte region [ffff880026382800, ffff880026382828)
    [28504.937144]
    [28504.937474] Memory state around the buggy address:
    [28504.938430] ffff880026382300: ........ rrrrrrrr rrrrrrrr rrrrrrrr
    [28504.939884] ffff880026382400: ffffffff rrrrrrrr rrrrrrrr rrrrrrrr
    [28504.941294] ffff880026382500: .....rrr rrrrrrrr rrrrrrrr rrrrrrrr
    [28504.942504] ffff880026382600: ffffffff rrrrrrrr rrrrrrrr rrrrrrrr
    [28504.943483] ffff880026382700: ffffffff rrrrrrrr rrrrrrrr rrrrrrrr
    [28504.944511] >ffff880026382800: .....rrr rrrrrrrr rrrrrrrr rrrrrrrr
    [28504.945573] ^
    [28504.946277] ffff880026382900: ffffffff rrrrrrrr rrrrrrrr rrrrrrrr
    [28505.094949] ffff880026382a00: ffffffff rrrrrrrr rrrrrrrr rrrrrrrr
    [28505.096114] ffff880026382b00: ffffffff rrrrrrrr rrrrrrrr rrrrrrrr
    [28505.097116] ffff880026382c00: ffffffff rrrrrrrr rrrrrrrr rrrrrrrr
    [28505.098472] ffff880026382d00: ffffffff rrrrrrrr rrrrrrrr rrrrrrrr
    [28505.099804] Legend:
    [28505.100269] f - 8 freed bytes
    [28505.100884] r - 8 redzone bytes
    [28505.101649] . - 8 allocated bytes
    [28505.102406] x=1..7 - x allocated bytes + (8-x) redzone bytes
    [28505.103637] ==================================================================

    [1] https://code.google.com/p/address-sanitizer/wiki/AddressSanitizerForKernel

    Signed-off-by: Eric Dumazet
    Signed-off-by: David S. Miller

    Eric Dumazet
     
  • Pull media fixes from Mauro Carvalho Chehab:
    "A series of driver fixes:
    - fix DVB-S tuning with tda1071
    - fix tuner probe on af9035 when the device has a bad eeprom
    - some fixes for the new si2168/2157 drivers
    - one Kconfig build fix (for omap4iss)
    - fixes at vpif error path
    - don't lock saa7134 ioctl at driver's base core level, as it now
    uses V4L2 and VB2 locking schema
    - fix audio at hdpvr driver
    - fix the aspect ratio at the digital timings table
    - one new USB ID (at gspca_pac7302): Genius i-Look 317 webcam"

    * 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media:
    [media] gspca_pac7302: Add new usb-id for Genius i-Look 317
    [media] tda10071: fix returned symbol rate calculation
    [media] tda10071: fix spec inversion reporting
    [media] tda10071: add missing DVB-S2/PSK-8 FEC AUTO
    [media] tda10071: force modulation to QPSK on DVB-S
    [media] hdpvr: fix two audio bugs
    [media] davinci: vpif: missing unlocks on error
    [media] af9035: override tuner id when bad value set into eeprom
    [media] saa7134: use unlocked_ioctl instead of ioctl
    [media] media: v4l2-core: v4l2-dv-timings.c: Cleaning up code wrong value used in aspect ratio
    [media] si2168: firmware download fix
    [media] si2157: add one missing parenthesis
    [media] si2168: add one missing parenthesis
    [media] staging: tighten omap4iss dependencies

    Linus Torvalds
     
  • Pull block fixes from Jens Axboe:
    "Final block fixes for 3.16

    Four small fixes that should go into 3.16, have been queued up for a
    bit and delayed due to vacation and other euro duties. But here they
    are. The pull request contains:

    - Fix for a reported crash with shared tagging on SCSI from Christoph

    - A regression fix for drbd. From Lars Ellenberg.

    - Hooking up the compat ioctl for BLKZEROOUT, which requires no
    translation. From Mikulas.

    - A fix for a regression where we woud crash on queue exit if the
    root_blkg is gone/not there. From Tejun"

    * 'for-linus' of git://git.kernel.dk/linux-block:
    block: provide compat ioctl for BLKZEROOUT
    blkcg: don't call into policy draining if root_blkg is already gone
    drbd: fix regression 'out of mem, failed to invoke fence-peer helper'
    block: don't assume last put of shared tags is for the host

    Linus Torvalds
     
  • Pull libata fixes from Tejun Heo:
    "Late libata fixes.

    The most important one is from Kevin Hao which makes sure that libata
    only allocates tags inside the max tag number the controller supports.
    libata always had this problem but the recent tag allocation change
    and addition of support for sata_fsl which only supports queue depth
    of 16 exposed the issue.

    Hans de Goede agreed to become the maintainer of libahci_platform
    which is under higher than usual development pressure from all the new
    controllers popping up from the ARM world"

    * 'for-3.16-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata:
    ahci: add support for the Promise FastTrak TX8660 SATA HBA (ahci mode)
    drivers/ata/pata_ep93xx.c: use signed int type for result of platform_get_irq()
    libata: EH should handle AMNF error condition as a media error
    libata: support the ata host which implements a queue depth less than 32
    MAINTAINERS: Add Hans de Goede as ahci-platform maintainer

    Linus Torvalds
     
  • Pull kvm fixes from Paolo Bonzini:
    "These are mostly PPC changes for 3.16-new things. However, there is
    an x86 change too and it is a regression from 3.14. As it only
    affects nested virtualization and there were other changes in this
    area in 3.16, I am not nominating it for 3.15-stable"

    * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
    KVM: x86: Check for nested events if there is an injectable interrupt
    KVM: PPC: RTAS: Do byte swaps explicitly
    KVM: PPC: Book3S PR: Fix ABIv2 on LE
    KVM: PPC: Assembly functions exported to modules need _GLOBAL_TOC()
    PPC: Add _GLOBAL_TOC for 32bit
    KVM: PPC: BOOK3S: HV: Use base page size when comparing against slb value
    KVM: PPC: Book3E: Unlock mmu_lock when setting caching atttribute

    Linus Torvalds
     
  • Pull s390 fixes from Martin Schwidefsky:
    "A couple of last minute bug fixes for 3.16, including a fix for ptrace
    to close a hole which allowed a user space program to write to the
    kernel address space"

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux:
    s390: fix restore of invalid floating-point-control
    s390/zcrypt: improve device probing for zcrypt adapter cards
    s390/ptrace: fix PSW mask check
    s390/MSI: Use standard mask and unmask funtions
    s390/3270: correct size detection with the read-partition command
    s390: require mvcos facility, not tod clock steering facility

    Linus Torvalds
     

21 Jul, 2014

14 commits

  • The "uptime" trace clock added in:

    commit 8aacf017b065a805d27467843490c976835eb4a5
    tracing: Add "uptime" trace clock that uses jiffies

    has wraparound problems when the system has been up more
    than 1 hour 11 minutes and 34 seconds. It converts jiffies
    to nanoseconds using:
    (u64)jiffies_to_usecs(jiffy) * 1000ULL
    but since jiffies_to_usecs() only returns a 32-bit value, it
    truncates at 2^32 microseconds. An additional problem on 32-bit
    systems is that the argument is "unsigned long", so fixing the
    return value only helps until 2^32 jiffies (49.7 days on a HZ=1000
    system).

    Avoid these problems by using jiffies_64 as our basis, and
    not converting to nanoseconds (we do convert to clock_t because
    user facing API must not be dependent on internal kernel
    HZ values).

    Link: http://lkml.kernel.org/p/99d63c5bfe9b320a3b428d773825a37095bf6a51.1405708254.git.tony.luck@intel.com

    Cc: stable@vger.kernel.org # 3.10+
    Fixes: 8aacf017b065 "tracing: Add "uptime" trace clock that uses jiffies"
    Signed-off-by: Tony Luck
    Signed-off-by: Steven Rostedt

    Tony Luck
     
  • When a VLAN interface (on top of batX) is removed and
    re-added within a short timeframe TT does not have enough
    time to properly cleanup. This creates an internal TT state
    mismatch as the newly created softif_vlan will be
    initialized from scratch with a TT client count of zero
    (even if TT entries for this VLAN still exist). The
    resulting TT messages are bogus due to the counter / tt
    client listing mismatch, thus creating inconsistencies on
    every node in the network

    To fix this issue destroy_vlan() has to not free the VLAN
    object immediately but it has to be kept alive until all the
    TT entries for this VLAN have been removed. destroy_vlan()
    still removes the sysfs folder so that the user has the
    feeling that everything went fine.

    If the same VLAN is re-added before the old object is free'd,
    then the latter is resurrected and re-used.

    Implement such behaviour by increasing the reference counter
    of a softif_vlan object every time a new local TT entry for
    such VLAN is created and remove the object from the list
    only when all the TT entries have been destroyed.

    Signed-off-by: Antonio Quartulli
    Signed-off-by: Marek Lindner

    Antonio Quartulli
     
  • Since bridge loop avoidance only supports untagged or simple 802.1q
    tagged VLAN claim frames, claim frames with stacked VLAN headers (QinQ)
    should be detected and dropped. Transporting the over the mesh may cause
    problems on the receivers, or create bogus entries in the local tt
    tables.

    Reported-by: Antonio Quartulli
    Signed-off-by: Simon Wunderlich
    Signed-off-by: Marek Lindner
    Signed-off-by: Antonio Quartulli

    Simon Wunderlich
     
  • *_result[len] is parsed as *(_result[len]) which is not at all what we
    want to touch here.

    Signed-off-by: Ben Hutchings
    Fixes: 84a7c0b1db1c ("dns_resolver: assure that dns_query() result is null-terminated")
    Signed-off-by: David S. Miller

    Ben Hutchings
     
  • Linus Torvalds
     
  • Zoltan Kiss says:

    ====================
    xen-netback: Fixing up xenvif_tx_check_gop

    This series fixes a lot of bugs on the error path around this function, which
    were introduced with my grant mapping series in 3.15. They apply to the latest
    net tree, but probably to net-next as well without any modification.
    I'll post an another series which applies to 3.15 stable, as the problem was
    first discovered there. The only difference is that the "queue" variable name is
    replaced to "vif".
    ====================

    Signed-off-by: Zoltan Kiss
    Reported-by: Armin Zentai
    Signed-off-by: David S. Miller

    David S. Miller
     
  • Due to this pointer is increased prematurely, the error log contains rubbish.

    Signed-off-by: Zoltan Kiss
    Reported-by: Armin Zentai
    Cc: netdev@vger.kernel.org
    Cc: linux-kernel@vger.kernel.org
    Cc: xen-devel@lists.xenproject.org
    Signed-off-by: David S. Miller

    Zoltan Kiss
     
  • This patch makes this function aware that the first frag and the header might
    share the same ring slot. That could happen if the first slot is bigger than
    PKT_PROT_LEN. Due to this the error path might release that slot twice or never,
    depending on the error scenario.
    xenvif_idx_release is also removed from xenvif_idx_unmap, and called separately.

    Signed-off-by: Zoltan Kiss
    Reported-by: Armin Zentai
    Cc: netdev@vger.kernel.org
    Cc: linux-kernel@vger.kernel.org
    Cc: xen-devel@lists.xenproject.org
    Signed-off-by: David S. Miller

    Zoltan Kiss
     
  • When the grant operations failed, the skb is freed up eventually, and it tries
    to release the frags, if there is any. For the main skb nr_frags is set to 0 to
    avoid this, but on the frag_list it iterates through the frags array, and tries
    to call put_page on the page pointer which contains garbage at that time.

    Signed-off-by: Zoltan Kiss
    Reported-by: Armin Zentai
    Cc: netdev@vger.kernel.org
    Cc: linux-kernel@vger.kernel.org
    Cc: xen-devel@lists.xenproject.org
    Signed-off-by: David S. Miller

    Zoltan Kiss
     
  • The error handling for skb's with frag_list was completely wrong, it caused
    double unmap attempts to happen if the error was on the first skb. Move it to
    the right place in the loop.

    Signed-off-by: Zoltan Kiss
    Reported-by: Armin Zentai
    Cc: netdev@vger.kernel.org
    Cc: linux-kernel@vger.kernel.org
    Cc: xen-devel@lists.xenproject.org
    Signed-off-by: David S. Miller

    Zoltan Kiss
     
  • When kernel generates a handle for a u32 filter, it tries to start
    from the max in the bucket. So when we have a filter with the max (fff)
    handle, it will cause kernel always generates the same handle for new
    filters. This can be shown by the following command:

    tc qdisc add dev eth0 ingress
    tc filter add dev eth0 parent ffff: protocol ip pref 770 handle 800::fff u32 match ip protocol 1 0xff
    tc filter add dev eth0 parent ffff: protocol ip pref 770 u32 match ip protocol 1 0xff
    ...

    we will get some u32 filters with same handle:

    # tc filter show dev eth0 parent ffff:
    filter protocol ip pref 770 u32
    filter protocol ip pref 770 u32 fh 800: ht divisor 1
    filter protocol ip pref 770 u32 fh 800::fff order 4095 key ht 800 bkt 0
    match 00010000/00ff0000 at 8
    filter protocol ip pref 770 u32 fh 800::fff order 4095 key ht 800 bkt 0
    match 00010000/00ff0000 at 8
    filter protocol ip pref 770 u32 fh 800::fff order 4095 key ht 800 bkt 0
    match 00010000/00ff0000 at 8
    filter protocol ip pref 770 u32 fh 800::fff order 4095 key ht 800 bkt 0
    match 00010000/00ff0000 at 8

    handles should be unique. This patch fixes it by looking up a bitmap,
    so that can guarantee the handle is as unique as possible. For compatibility,
    we still start from 0x800.

    Cc: "David S. Miller"
    Signed-off-by: Cong Wang
    Signed-off-by: Cong Wang
    Signed-off-by: Jamal Hadi Salim
    Signed-off-by: David S. Miller

    Cong Wang
     
  • Pull more IIO driver fixes from Greg KH:
    "Here are two IIO driver fixes for 3.16-rc6 that resolve some reported
    issues"

    * tag 'staging-3.16-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging:
    iio: mma8452: Use correct acceleration units.
    iio:core: Handle error when mask type is not separate

    Linus Torvalds
     
  • Pull USB fixes from Greg KH:
    "Here are two USB patches that resolve some reported issues, one with
    an odd HUB, and one in the chipidea driver"

    * tag 'usb-3.16-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb:
    usb: Check if port status is equal to RxDetect
    usb: chipidea: udc: Disable auto ZLP generation on ep0

    Linus Torvalds
     
  • Pull driver core fix from Greg KH:
    "Here is a single driver core fix that reverts an older patch that has
    been causing a number of reported problems with the platform devices.

    This revert has been in linux-next for a while with no reported issues"

    * tag 'driver-core-3.16-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core:
    platform_get_irq: Revert to platform_get_resource if of_irq_get fails

    Linus Torvalds