1. 23 Jan, 2015 1 commit
    • Pawel Moll's avatar
      virtio-mmio: Update the device to OASIS spec version · 1862ee22
      Pawel Moll authored
      This patch add a support for second version of the virtio-mmio device,
      which follows OASIS "Virtual I/O Device (VIRTIO) Version 1.0"
      specification.
      
      Main changes:
      
      1. The control register symbolic names use the new device/driver
         nomenclature rather than the old guest/host one.
      
      2. The driver detect the device version (version 1 is the pre-OASIS
         spec, version 2 is compatible with fist revision of the OASIS spec)
         and drives the device accordingly.
      
      3. New version uses direct addressing (64 bit address split into two
         low/high register) instead of the guest page size based one,
         and addresses each part of the queue (descriptors, available, used)
         separately.
      
      4. The device activity is now explicitly triggered by writing to the
         "queue ready" register.
      
      5. Whole 64 bit features are properly handled now (both ways).
      Signed-off-by: default avatarPawel Moll <pawel.moll@arm.com>
      Acked-by: default avatarMichael S. Tsirkin <mst@redhat.com>
      Signed-off-by: default avatarRusty Russell <rusty@rustcorp.com.au>
      1862ee22
  2. 21 Jan, 2015 26 commits
  3. 20 Jan, 2015 6 commits
    • Linus Torvalds's avatar
      Merge branch 'for-3.19-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata · b97f880c
      Linus Torvalds authored
      Pull libata fixes from Tejun Heo:
      
       - Bartlomiej will be co-maintaining PATA portion of libata.  git
         workflow will stay the same.
      
       - sata_sil24 wasn't happy with tag ordered submission.  An option to
         restore the old tag allocation behavior is implemented for sil24.
      
       - a very old race condition in PIO host state machine which can trigger
         BUG fixed.
      
       - other driver-specific changes
      
      * 'for-3.19-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata:
        libata: prevent HSM state change race between ISR and PIO
        libata: allow sata_sil24 to opt-out of tag ordered submission
        ata: pata_at91: depend on !ARCH_MULTIPLATFORM
        ahci: Remove Device ID for Intel Sunrise Point PCH
        ahci: Use dev_info() to inform about the lack of Device Sleep support
        libata: Whitelist SSDs that are known to properly return zeroes after TRIM
        sata_dwc_460ex: fix resource leak on error path
        ata: add MAINTAINERS entry for libata PATA drivers
        libata: clean up MAINTAINERS entries
        libata: export ata_get_cmd_descript()
        ahci_xgene: Fix the DMA state machine lockup for the ATA_CMD_PACKET PIO mode command.
        ahci_xgene: Fix the endianess issue in APM X-Gene SoC AHCI SATA controller driver.
      b97f880c
    • Linus Torvalds's avatar
      Merge branch 'for-3.19-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq · d4b2d006
      Linus Torvalds authored
      Pull workqueue fix from Tejun Heo:
       "The xfs folks have been running into weird and very rare lockups for
        some time now.  I didn't think this could have been from workqueue
        side because no one else was reporting it.  This time, Eric had a
        kdump which we looked into and it turned out this actually was a
        workqueue bug and the bug has been there since the beginning of
        concurrency managed workqueue.
      
        A worker pool ensures forward progress of the workqueues associated
        with it by always having at least one worker reserved from executing
        work items.  When the pool is under contention, the idle one tries to
        create more workers for the pool and if that doesn't succeed quickly
        enough, it calls the rescuers to the pool.
      
        This logic had a subtle race condition in an early exit path.  When a
        worker invokes this manager function, the function may return %false
        indicating that the caller may proceed to executing work items either
        because another worker is already performing the role or conditions
        have changed and the pool is no longer under contention.
      
        The latter part depended on the assumption that whether more workers
        are necessary or not remains stable while the pool is locked; however,
        pool->nr_running (concurrency count) may change asynchronously and it
        getting bumped from zero asynchronously could send off the last idle
        worker to execute work items.
      
        The race window is fairly narrow, and, even when it gets triggered,
        the pool deadlocks iff if all work items get blocked on pending work
        items of the pool, which is highly unlikely but can be triggered by
        xfs.
      
        The patch removes the race window by removing the early exit path,
        which doesn't server any purpose anymore anyway"
      
      * 'for-3.19-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq:
        workqueue: fix subtle pool management issue which can stall whole worker_pool
      d4b2d006
    • Linus Torvalds's avatar
      Merge tag 'pinctrl-v3.19-3' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl · 06efe0e5
      Linus Torvalds authored
      Pull pin control fixes from Linus Walleij:
       "Here is a (hopefully final) slew of pin control fixes for the v3.19
        series.  The deadlock fix is kind of serious and tagged for stable,
        the rest is business as usual.
      
         - Fix two deadlocks around the pin control mutexes, a long-standing
           issue that manifest itself in plug/unplug of pin controllers.
           (Tagged for stable.)
      
         - Handle an error path with zero functions in the Qualcomm pin
           controller.
      
         - Drop a bogus second GPIO chip added in the Lantiq driver.
      
         - Fix sudden IRQ loss on Rockchip pin controllers.
      
         - Register the GIT tree in MAINTAINERS"
      
      * tag 'pinctrl-v3.19-3' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl:
        pinctrl: MAINTAINERS: add git tree reference
        pinctrl: qcom: Don't iterate past end of function array
        pinctrl: lantiq: remove bogus of_gpio_chip_add
        pinctrl: Fix two deadlocks
        pinctrl: rockchip: Avoid losing interrupts when supporting both edges
      06efe0e5
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net · eef8f4c2
      Linus Torvalds authored
      Pull networking fixes from David Miller:
      
       1) Socket addresses returned in the error queue need to be fully
          initialized before being passed on to userspace, fix from Willem de
          Bruijn.
      
       2) Interrupt handling fixes to davinci_emac driver from Tony Lindgren.
      
       3) Fix races between receive packet steering and cpu hotplug, from Eric
          Dumazet.
      
       4) Allowing netlink sockets to subscribe to unknown multicast groups
          leads to crashes, don't allow it.  From Johannes Berg.
      
       5) One to many socket races in SCTP fixed by Daniel Borkmann.
      
       6) Put in a guard against the mis-use of ipv6 atomic fragments, from
          Hagen Paul Pfeifer.
      
       7) Fix promisc mode and ethtool crashes in sh_eth driver, from Ben
          Hutchings.
      
       8) NULL deref and double kfree fix in sxgbe driver from Girish K.S and
          Byungho An.
      
       9) cfg80211 deadlock fix from Arik Nemtsov.
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (36 commits)
        s2io: use snprintf() as a safety feature
        r8152: remove sram_read
        r8152: remove generic_ocp_read before writing
        bgmac: activate irqs only if there is nothing to poll
        bgmac: register napi before the device
        sh_eth: Fix ethtool operation crash when net device is down
        sh_eth: Fix promiscuous mode on chips without TSU
        ipv6: stop sending PTB packets for MTU < 1280
        net: sctp: fix race for one-to-many sockets in sendmsg's auto associate
        genetlink: synchronize socket closing and family removal
        genetlink: disallow subscribing to unknown mcast groups
        genetlink: document parallel_ops
        net: rps: fix cpu unplug
        net: davinci_emac: Add support for emac on dm816x
        net: davinci_emac: Fix ioremap for devices with MDIO within the EMAC address space
        net: davinci_emac: Fix incomplete code for getting the phy from device tree
        net: davinci_emac: Free clock after checking the frequency
        net: davinci_emac: Fix runtime pm calls for davinci_emac
        net: davinci_emac: Fix hangs with interrupts
        ip: zero sockaddr returned on error queue
        ...
      eef8f4c2
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 · 22628890
      Linus Torvalds authored
      Pull crypto fix from Herbert Xu:
       "This fixes a regression that arose from the change to add a crypto
        prefix to module names which was done to prevent the loading of
        arbitrary modules through the Crypto API.
      
        In particular, a number of modules were missing the crypto prefix
        which meant that they could no longer be autoloaded"
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6:
        crypto: add missing crypto module aliases
      22628890
    • Dan Carpenter's avatar
      s2io: use snprintf() as a safety feature · a8c1d28a
      Dan Carpenter authored
      "sp->desc[i]" has 25 characters.  "dev->name" has 15 characters.  If we
      used all 15 characters then the sprintf() would overflow.
      
      I changed the "sprintf(sp->name, "%s Neterion %s"" to snprintf(), as
      well, even though it can't overflow just to be consistent.
      Signed-off-by: default avatarDan Carpenter <dan.carpenter@oracle.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      a8c1d28a
  4. 19 Jan, 2015 7 commits