Skip to content
  1. Jun 28, 2014
    • Linus Torvalds's avatar
      Merge tag 'stable/for-linus-3.16-rc1-tag' of... · 772205d8
      Linus Torvalds authored
      Merge tag 'stable/for-linus-3.16-rc1-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/swiotlb
      
      Pull swiotlb bugfix from Konrad Rzeszutek Wilk:
       "One bug-fix that had been in tree for quite some time.  We had assumed
        that the physical address zero was invalid and would fail it.  But
        that is not true and on some architectures it is not reserved and
        valid.  This fixes it"
      
      * tag 'stable/for-linus-3.16-rc1-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/swiotlb:
        swiotlb: don't assume PA 0 is invalid
      772205d8
    • Linus Torvalds's avatar
      Merge tag 'sound-3.16-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · cf0d1356
      Linus Torvalds authored
      Pull sound fixes from Takashi Iwai:
       "Here includes a few patchset for fixing mostly HD-audio issues in
        addition to a patch assuring the compress API bytes alignment and a
        fix for the die-hard existing race condition at USB-audio
        disconnection.  The volume looks big in Realtek HD-audio code, but
        it's just a translation of the fixup tables, and the actual changes
        are rather trivial"
      
      * tag 'sound-3.16-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
        ALSA: hda - restore BCLK M/N values when resuming HSW/BDW display controller
        ALSA: usb-audio: Fix races at disconnection and PCM closing
        ALSA: hda - Adjust speaker HPF and add LED support for HP Spectre 13
        ALSA: hda - Make the pin quirk tables use the SND_HDA_PIN_QUIRK macro
        ALSA: hda - Make a SND_HDA_PIN_QUIRK macro
        ALSA: hda - Add pin quirk for Dell XPS 15
        ALSA: hda - hdmi: call overridden init on resume
        ALSA: hda - Fix usage of "model" module parameter
        ALSA: compress: fix the struct alignment to 4 bytes
      cf0d1356
    • Linus Torvalds's avatar
      Merge tag 'mfd-fixes-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd · 5ded6ea4
      Linus Torvalds authored
      Pull MFD fixes from Lee Jones:
       "Couple of simple fixes due for the v3.16 -rcs"
      
      * tag 'mfd-fixes-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd:
        mfd: ab8500: Fix dt irq mapping
        mfd: davinci: Voicecodec needs regmap_mmio
        mfd: STw481x: Allow modular build
        mfd: UCB1x00: Enable modular build
      5ded6ea4
    • Linus Torvalds's avatar
      Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux · c163b524
      Linus Torvalds authored
      Pull drm fixes from Dave Airlie:
       "Exynos, i915 and msm fixes and one core fix.
      
        exynos:
           hdmi power off and mixer issues
      
        msm:
           iommu, build fixes,
      
        i915:
           regression races and warning fixes"
      
      * 'drm-fixes' of git://people.freedesktop.org/~airlied/linux: (22 commits)
        drm/i915: vlv_prepare_pll is only needed in case of non DSI interfaces
        drm: fix NULL pointer access by wrong ioctl
        drm/exynos: enable vsync interrupt while waiting for vblank
        drm/exynos: soft reset mixer before reconfigure after power-on
        drm/exynos: allow multiple layer updates per vsync for mixer
        drm/i915: Hold the table lock whilst walking the file's idr and counting the objects in debugfs
        drm/i915: BDW: Adding Reserved PCI IDs.
        drm/i915: Only mark the ctx as initialised after a SET_CONTEXT operation
        drm/exynos: stop mixer before gating clocks during poweroff
        drm/exynos: set power state variable after enabling clocks and power
        drm/exynos: disable unused windows on apply
        drm/exynos: Fix de-registration ordering
        drm/exynos: change zero to NULL for sparse
        drm/exynos: dpi: Fix NULL pointer dereference with legacy bindings
        drm/exynos: hdmi: fix power order issue
        drm/i915: default to having backlight if VBT not available
        drm/i915: cache hw power well enabled state
        drm/msm: fix IOMMU cleanup for -EPROBE_DEFER
        drm/msm: use PAGE_ALIGNED instead of IS_ALIGNED(PAGE_SIZE)
        drm/msm/hdmi: set hdp clock rate before prepare_enable
        ...
      c163b524
  2. Jun 27, 2014
    • Dave Airlie's avatar
      Merge tag 'drm-intel-fixes-2014-06-26' of git://anongit.freedesktop.org/drm-intel into drm-fixes · 0fcb70c3
      Dave Airlie authored
      Fixes for 3.16-rc2; regressions, races, and warns; Broadwell PCI IDs.
      
      * tag 'drm-intel-fixes-2014-06-26' of git://anongit.freedesktop.org/drm-intel:
        drm/i915: vlv_prepare_pll is only needed in case of non DSI interfaces
        drm/i915: Hold the table lock whilst walking the file's idr and counting the objects in debugfs
        drm/i915: BDW: Adding Reserved PCI IDs.
        drm/i915: Only mark the ctx as initialised after a SET_CONTEXT operation
        drm/i915: default to having backlight if VBT not available
        drm/i915: cache hw power well enabled state
      0fcb70c3
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.dk/linux-block · 3493860c
      Linus Torvalds authored
      Pull block fixes from Jens Axboe:
       "A small collection of fixes/changes for the current series.  This
        contains:
      
         - Removal of dead code from Gu Zheng.
      
         - Revert of two bad fixes that went in earlier in this round, marking
           things as __init that were not purely used from init.
      
         - A fix for blk_mq_start_hw_queue() using the __blk_mq_run_hw_queue(),
           which could place us wrongly.  Make it use the non __ variant,
           which handles cases where we are called from the wrong CPU set.
           From me.
      
         - A fix for drbd, which allocates discard requests without room for
           the SCSI payload.  From Lars Ellenberg.
      
         - A fix for user-after-free in the blkcg code from Tejun.
      
         - Addition of limiting gaps in SG lists, if the hardware needs it.
           This is the last pre-req patch for blk-mq to enable the full NVMe
           conversion.  Could wait until 3.17, but it's simple enough so would
           be nice to have everything we need for the NVMe port in the 3.17
           release.  From me"
      
      * 'for-linus' of git://git.kernel.dk/linux-block:
        drbd: fix NULL pointer deref in blk_add_request_payload
        blk-mq: blk_mq_start_hw_queue() should use blk_mq_run_hw_queue()
        block: add support for limiting gaps in SG lists
        bio: remove unused macro bip_vec_idx()
        Revert "block: add __init to elv_register"
        Revert "block: add __init to blkcg_policy_register"
        blkcg: fix use-after-free in __blkg_release_rcu() by making blkcg_gq refcnt an atomic_t
        floppy: format block0 read error message properly
      3493860c
    • Al Viro's avatar
      Fix 32-bit regression in block device read(2) · 0b86dbf6
      Al Viro authored
      
      
      blkdev_read_iter() wants to cap the iov_iter by the amount of data
      remaining to the end of device.  That's what iov_iter_truncate() is for
      (trim iter->count if it's above the given limit).  So far, so good, but
      the argument of iov_iter_truncate() is size_t, so on 32bit boxen (in
      case of a large device) we end up with that upper limit truncated down
      to 32 bits *before* comparing it with iter->count.
      
      Easily fixed by making iov_iter_truncate() take 64bit argument - it does
      the right thing after such change (we only reach the assignment in there
      when the current value of iter->count is greater than the limit, i.e.
      for anything that would get truncated we don't reach the assignment at
      all) and that argument is not the new value of iter->count - it's an
      upper limit for such.
      
      The overhead of passing u64 is not an issue - the thing is inlined, so
      callers passing size_t won't pay any penalty.
      
      Reported-and-tested-by: default avatarTheodore Tso <tytso@mit.edu>
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      Tested-by: default avatarAlan Cox <gnomes@lxorguk.ukuu.org.uk>
      Tested-by: default avatarBruno Wolff III <bruno@wolff.to>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      0b86dbf6
  3. Jun 26, 2014
    • Mengdong Lin's avatar
      ALSA: hda - restore BCLK M/N values when resuming HSW/BDW display controller · a07187c9
      Mengdong Lin authored
      
      
      For Intel Haswell/Broadwell display HD-A controller, the 24MHz HD-A link BCLK
      is converted from Core Display Clock (CDCLK): BCLK = CDCLK * M / N
      And there are two registers EM4 and EM5 to program M, N value respectively.
      The EM4/EM5 values will be lost and when the display power well is disabled.
      
      BIOS programs CDCLK selected by OEM and EM4/EM5, but BIOS has no idea about
      display power well on/off at runtime. So the M/N can be wrong if non-default
      CDCLK is used when the audio controller resumes, which results in an invalid
      BCLK and abnormal audio playback rate. So this patch saves and restores valid
      M/N values on controller suspend/resume.
      
      And 'struct hda_intel' is defined to contain standard HD-A 'struct azx' and
      Intel specific fields, as Takashi suggested.
      
      Signed-off-by: default avatarMengdong Lin <mengdong.lin@intel.com>
      Cc: <stable@vger.kernel.org>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      a07187c9
    • Grygorii Strashko's avatar
      mfd: ab8500: Fix dt irq mapping · 7602e05d
      Grygorii Strashko authored
      The AD8500 defines itself as interrupt-controller in DT,
      but it doesn't assign DT node to IRQ domain when creates it.
      As result, of_irq_xx() helpers don't work because they can't
      find necessary IRQ domain.
      
      Hence, fix it by assigning AD8500 core device DT node to IRQ
      domain when it's created.
      
      This patch fixes STE u8500 Snowball boot failure reported by Kevin Hilman
      https://lkml.org/lkml/2014/5/27/624
      
      
      
      Reported-and-tested-by: default avatarKevin Hilman <khilman@linaro.org>
      Signed-off-by: default avatarGrygorii Strashko <grygorii.strashko@ti.com>
      Reviewed-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
      7602e05d
    • Arnd Bergmann's avatar
      mfd: davinci: Voicecodec needs regmap_mmio · 9e888487
      Arnd Bergmann authored
      
      
      Without REGMAP_MMIO, building that driver results in a link error:
      
      drivers/built-in.o: In function `davinci_vc_probe':
      :(.init.text+0x3c1c): undefined reference to `devm_regmap_init_mmio_clk'
      
      This adds a Kconfig 'select' statement as the usual way to ensure
      that REGMAP_MMIO is enabled.
      
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
      9e888487
    • Arnd Bergmann's avatar
      mfd: STw481x: Allow modular build · f41716dc
      Arnd Bergmann authored
      
      
      This driver depends on I2C, which may be a loadable module.
      While you'd probably want both to be built-in in practice,
      allowing a modular build avoids possible randconfig link
      errors.
      
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
      f41716dc
    • Arnd Bergmann's avatar
      mfd: UCB1x00: Enable modular build · 1c93c725
      Arnd Bergmann authored
      
      
      The UCB1200 / UCB1300 driver uses the MCP_SA11X0 driver, which
      can be a loadable module, but this results in a link error
      when UCB1200 itself is built-in:
      
      drivers/built-in.o: In function `ucb1x00_io_set_dir':
      :(.text+0x4a364): undefined reference to `mcp_reg_write'
      drivers/built-in.o: In function `ucb1x00_io_write':
      :(.text+0x4a3dc): undefined reference to `mcp_reg_write'
      drivers/built-in.o: In function `ucb1x00_io_read':
      :(.text+0x4a400): undefined reference to `mcp_reg_read'
      drivers/built-in.o: In function `ucb1x00_adc_enable':
      :(.text+0x4a460): undefined reference to `mcp_enable'
      ...
      
      This can easily be resolved by making CONFIG_MCP_UCB1200 itself
      a tristate option, since that causes Kconfig to track the
      dependency correctly.
      
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
      1c93c725
    • Takashi Iwai's avatar
      ALSA: usb-audio: Fix races at disconnection and PCM closing · 92a586bd
      Takashi Iwai authored
      
      
      When a USB-audio device is disconnected while PCM is still running, we
      still see some race: the disconnect callback calls
      snd_usb_endpoint_free() that calls release_urbs() and then kfree()
      while a PCM stream would be closed at the same time and calls
      stop_endpoints() that leads to wait_clear_urbs().  That is, the EP
      object might be deallocated while a PCM stream is syncing with
      wait_clear_urbs() with the same EP.
      
      Basically calling multiple wait_clear_urbs() would work fine, also
      calling wait_clear_urbs() and release_urbs() would work, too, as
      wait_clear_urbs() just reads some fields in ep.  The problem is the
      succeeding kfree() in snd_pcm_endpoint_free().
      
      This patch moves out the EP deallocation into the later point, the
      destructor callback.  At this stage, all PCMs must have been already
      closed, so it's safe to free the objects.
      
      Reported-by: default avatarAlan Stern <stern@rowland.harvard.edu>
      Cc: <stable@vger.kernel.org>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      92a586bd
    • Linus Torvalds's avatar
      Merge branch 'for-next' of git://git.samba.org/sfrench/cifs-2.6 · d7933ab7
      Linus Torvalds authored
      Pull CIFS fixes from Steve French:
       "Small set of misc cifs/smb3 fixes"
      
      * 'for-next' of git://git.samba.org/sfrench/cifs-2.6:
        [CIFS] fix mount failure with broken pathnames when smb3 mount with mapchars option
        cifs: revalidate mapping prior to satisfying read_iter request with cache=loose
        fs/cifs: fix regression in cifs_create_mf_symlink()
      d7933ab7
    • Linus Torvalds's avatar
      Merge tag 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging · 2a80ff86
      Linus Torvalds authored
      Pull hwmon fixes from Guenter Roeck:
       "Various minor fixes"
      
      * tag 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging:
        hwmon: (gpio-fan) Change name used in hwmon_device_register_with_groups
        hwmon: (emc1403) Fix missing 'select REGMAP_I2C' in Kconfig
        hwmon: (ntc_thermistor) Use the manufacturer name properly
        devicetree: bindings: Document murata vendor prefix
        hwmon: (w83l786ng) Report correct minimum fan speed
      2a80ff86
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net · f40ede39
      Linus Torvalds authored
      Pull networking fixes from David Miller:
      
       1) Fix crash in ipvs tot_stats estimator, from Julian Anastasov.
      
       2) Fix OOPS in nf_nat on netns removal, from Florian Westphal.
      
       3) Really really really fix locking issues in slip and slcan tty write
          wakeups, from Tyler Hall.
      
       4) Fix checksum offloading in fec driver, from Fugang Duan.
      
       5) Off by one in BPF instruction limit test, from Kees Cook.
      
       6) Need to clear all TSO capability flags when doing software TSO in
          tg3 driver, from Prashant Sreedharan.
      
       7) Fix memory leak in vlan_reorder_header() error path, from Li
          RongQing.
      
       8) Fix various bugs in xen-netfront and xen-netback multiqueue support,
          from David Vrabel and Wei Liu.
      
       9) Fix deadlock in cxgb4 driver, from Li RongQing.
      
      10) Prevent double free of no-cache DST entries, from Eric Dumazet.
      
      11) Bad csum_start handling in skb_segment() leads to crashes when
          forwarding, from Tom Herbert.
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (76 commits)
        net: fix setting csum_start in skb_segment()
        ipv4: fix dst race in sk_dst_get()
        net: filter: Use kcalloc/kmalloc_array to allocate arrays
        trivial: net: filter: Change kerneldoc parameter order
        trivial: net: filter: Fix typo in comment
        net: allwinner: emac: Add missing free_irq
        cxgb4: use dev_port to identify ports
        xen-netback: bookkeep number of active queues in our own module
        tg3: Change nvram command timeout value to 50ms
        cxgb4: Not need to hold the adap_rcu_lock lock when read adap_rcu_list
        be2net: fix qnq mode detection on VFs
        of: mdio: fixup of_phy_register_fixed_link parsing of new bindings
        at86rf230: fix irq setup
        net: phy: at803x: fix coccinelle warnings
        net/mlx4_core: Fix the error flow when probing with invalid VF configuration
        tulip: Poll link status more frequently for Comet chips
        net: huawei_cdc_ncm: increase command buffer size
        drivers: net: cpsw: fix dual EMAC stall when connected to same switch
        xen-netfront: recreate queues correctly when reconnecting
        xen-netfront: fix oops when disconnected from backend
        ...
      f40ede39
    • Tom Herbert's avatar
      net: fix setting csum_start in skb_segment() · de843723
      Tom Herbert authored
      
      
      Dave Jones reported that a crash is occurring in
      
      csum_partial
      tcp_gso_segment
      inet_gso_segment
      ? update_dl_migration
      skb_mac_gso_segment
      __skb_gso_segment
      dev_hard_start_xmit
      sch_direct_xmit
      __dev_queue_xmit
      ? dev_hard_start_xmit
      dev_queue_xmit
      ip_finish_output
      ? ip_output
      ip_output
      ip_forward_finish
      ip_forward
      ip_rcv_finish
      ip_rcv
      __netif_receive_skb_core
      ? __netif_receive_skb_core
      ? trace_hardirqs_on
      __netif_receive_skb
      netif_receive_skb_internal
      napi_gro_complete
      ? napi_gro_complete
      dev_gro_receive
      ? dev_gro_receive
      napi_gro_receive
      
      It looks like a likely culprit is that SKB_GSO_CB()->csum_start is
      not set correctly when doing non-scatter gather. We are using
      offset as opposed to doffset.
      
      Reported-by: default avatarDave Jones <davej@redhat.com>
      Tested-by: default avatarDave Jones <davej@redhat.com>
      Signed-off-by: default avatarTom Herbert <therbert@google.com>
      Signed-off-by: default avatarEric Dumazet <edumazet@google.com>
      Fixes: 7e2b10c1
      
       ("net: Support for multiple checksums with gso")
      Acked-by: default avatarTom Herbert <therbert@google.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      de843723
    • Linus Torvalds's avatar
      Merge tag 'nfs-for-3.16-2' of git://git.linux-nfs.org/projects/trondmy/linux-nfs · ec71feae
      Linus Torvalds authored
      Pull NFS client fixes from Trond Myklebust:
       "Highlights include:
      
         - Stable fix for a data corruption case due to incorrect cache
           validation
         - Fix a couple of false positive cache invalidations
         - Fix NFSv4 security negotiation issues"
      
      * tag 'nfs-for-3.16-2' of git://git.linux-nfs.org/projects/trondmy/linux-nfs:
        NFSv4: test SECINFO RPC_AUTH_GSS pseudoflavors for support
        NFS Return -EPERM if no supported or matching SECINFO flavor
        NFS check the return of nfs4_negotiate_security in nfs4_submount
        NFS: Don't mark the data cache as invalid if it has been flushed
        NFS: Clear NFS_INO_REVAL_PAGECACHE when we update the file size
        nfs: Fix cache_validity check in nfs_write_pageuptodate()
      ec71feae
    • Eric Dumazet's avatar
      ipv4: fix dst race in sk_dst_get() · f8864972
      Eric Dumazet authored
      
      
      When IP route cache had been removed in linux-3.6, we broke assumption
      that dst entries were all freed after rcu grace period. DST_NOCACHE
      dst were supposed to be freed from dst_release(). But it appears
      we want to keep such dst around, either in UDP sockets or tunnels.
      
      In sk_dst_get() we need to make sure dst refcount is not 0
      before incrementing it, or else we might end up freeing a dst
      twice.
      
      DST_NOCACHE set on a dst does not mean this dst can not be attached
      to a socket or a tunnel.
      
      Then, before actual freeing, we need to observe a rcu grace period
      to make sure all other cpus can catch the fact the dst is no longer
      usable.
      
      Signed-off-by: default avatarEric Dumazet <edumazet@google.com>
      Reported-by: default avatarDormando <dormando@rydia.net>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      f8864972
    • Tobias Klauser's avatar
      net: filter: Use kcalloc/kmalloc_array to allocate arrays · 99e72a0f
      Tobias Klauser authored
      
      
      Use kcalloc/kmalloc_array to make it clear we're allocating arrays. No
      integer overflow can actually happen here, since len/flen is guaranteed
      to be less than BPF_MAXINSNS (4096). However, this changed makes sure
      we're not going to get one if BPF_MAXINSNS were ever increased.
      
      Signed-off-by: default avatarTobias Klauser <tklauser@distanz.ch>
      Acked-by: default avatarDaniel Borkmann <dborkman@redhat.com>
      Acked-by: default avatarAlexei Starovoitov <ast@plumgrid.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      99e72a0f
    • Tobias Klauser's avatar
      trivial: net: filter: Change kerneldoc parameter order · 677a9fd3
      Tobias Klauser authored
      
      
      Change the order of the parameters to sk_unattached_filter_create() in
      the kerneldoc to reflect the order they appear in the actual function.
      
      This fix is only cosmetic, in the generated doc they still appear in the
      correct order without the fix.
      
      Signed-off-by: default avatarTobias Klauser <tklauser@distanz.ch>
      Acked-by: default avatarDaniel Borkmann <dborkman@redhat.com>
      Acked-by: default avatarAlexei Starovoitov <ast@plumgrid.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      677a9fd3
    • Tobias Klauser's avatar
    • Maxime Ripard's avatar
      net: allwinner: emac: Add missing free_irq · b9111328
      Maxime Ripard authored
      
      
      If the mdio probe function fails in emac_open, the interrupt we just requested
      isn't freed. If emac_open is called again, for example because we try to set up
      the interface again, the kernel will oops because the interrupt wasn't properly
      released.
      
      Signed-off-by: default avatarMaxime Ripard <maxime.ripard@free-electrons.com>
      Cc: <stable@vger.kernel.org> # 3.11+
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      b9111328
    • Thadeu Lima de Souza Cascardo's avatar
      cxgb4: use dev_port to identify ports · 40c9f8ab
      Thadeu Lima de Souza Cascardo authored
      Commit 3f85944f ("net: Add sysfs file
      for port number") introduce dev_port to network devices. cxgb4 adapters
      have multiple ports on the same PCI function, and used dev_id to
      identify those ports. That use was removed by commit
      8c367fcb
      
       ("cxgb4: Do not set
      net_device::dev_id to VI index"), since dev_id should be used only when
      devices share the same MAC address.
      
      Using dev_port for cxgb4 allows different ports on the same PCI function
      to be identified.
      
      Signed-off-by: default avatarThadeu Lima de Souza Cascardo <cascardo@linux.vnet.ibm.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      40c9f8ab
    • Wei Liu's avatar
      xen-netback: bookkeep number of active queues in our own module · f7b50c4e
      Wei Liu authored
      
      
      The original code uses netdev->real_num_tx_queues to bookkeep number of
      queues and invokes netif_set_real_num_tx_queues to set the number of
      queues. However, netif_set_real_num_tx_queues doesn't allow
      real_num_tx_queues to be smaller than 1, which means setting the number
      to 0 will not work and real_num_tx_queues is untouched.
      
      This is bogus when xenvif_free is invoked before any number of queues is
      allocated. That function needs to iterate through all queues to free
      resources. Using the wrong number of queues results in NULL pointer
      dereference.
      
      So we bookkeep the number of queues in xen-netback to solve this
      problem. This fixes a regression introduced by multiqueue patchset in
      3.16-rc1.
      
      There's another bug in original code that the real number of RX queues
      is never set. In current Xen multiqueue design, the number of TX queues
      and RX queues are in fact the same. We need to set the numbers of TX and
      RX queues to the same value.
      
      Also remove xenvif_select_queue and leave queue selection to core
      driver, as suggested by David Miller.
      
      Reported-by: default avatarBoris Ostrovsky <boris.ostrovsky@oracle.com>
      Signed-off-by: default avatarWei Liu <wei.liu2@citrix.com>
      CC: Ian Campbell <ian.campbell@citrix.com>
      CC: Paul Durrant <paul.durrant@citrix.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      f7b50c4e
    • Prashant Sreedharan's avatar
      tg3: Change nvram command timeout value to 50ms · 66c965f5
      Prashant Sreedharan authored
      Commit 506724c4
      
       "tg3: Override clock,
      link aware and link idle mode during NVRAM dump" changed the timeout
      value for nvram command execution from 100ms to 1ms. But the 1ms
      timeout value was only sufficient for nvram read operations but not
      write operations for most of the devices supported by tg3 driver.
      This patch sets the MAX to 50ms. Also it uses usleep_range instead
      of udelay.
      
      Signed-off-by: default avatarPrashant Sreedharan <prashant@broadcom.com>
      Signed-off-by: default avatarMichael Chan <mchan@broadcom.com>
      Suggested-by: default avatarDavid Miller <davem@davemloft.net>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      66c965f5
    • Julien D'Ascenzio's avatar
      hwmon: (gpio-fan) Change name used in hwmon_device_register_with_groups · d26e0da7
      Julien D'Ascenzio authored
      Since commit 648cd48c
      
      
      The hwmon name attributes must not include '-' so the name must be
      rename from gpio-fan to gpio_fan
      
      Signed-off-by: default avatarJulien D'Ascenzio <jdascenzio@yahoo.fr>
      Reviewed-by: default avatarJean Delvare <jdelvare@suse.de>
      Signed-off-by: default avatarGuenter Roeck <linux@roeck-us.net>
      d26e0da7
    • Linus Torvalds's avatar
      Merge tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 456febd2
      Linus Torvalds authored
      Pull ARM SoC fixes from Arnd Bergmann:
       "A new set of bug fixes for 3.16, containing patches for seven
        platforms:
      
        at91:
          - drivers/misc fix for Kconfig PWM symbol
          - correction of several values in DT after conversion to CCF
          - fix at91sam9261/at91sam9261ek mistake in slow crystal vs. slow RC osc
      
        imx:
          - Use GPIO for card CD/WP on imx51-babbage and eukrea-mbimxsd51,
            because controller base CD/WP is not working in esdhc driver due to
            runtime PM support
          - A couple of random ventana gw5xxx board fixes
          - Add IMX_IPUV3_CORE back to defconfig, which gets lost when moving
            IPUv3 driver out of staging tree
          - Fix enet/fec clock selection on imx6sl
          - Fix display node on imx53-m53evk board
          - A couple of Cubox-i updates from Russell, which were omitted from
            the merge window due to dependency
      
        integrator:
          - fix an OF-related regression against 3.15
      
        mvebu:
          - mvebu (v7)
             - Fix broken SoC ID detection
             - Select ARM_CPU_SUSPEND for v7
             - Remove armada38x compatible string (no users yet)
             - Enable Dove SoC in mvebu_v7_defconfig
          - kirkwood
             - Fix phy-connection-type on GuruPlug board
      
        qcom:
          - enable gsbi driver in defconfig
          - fix section mismatch warning in serial driver
      
        samsung:
          - use WFI macro in platform_do_lowpower because exynos cpuhotplug
            includes a hardcoded WFI instruction and it causes compile error
            in Thumb-2 mode.
          - fix GIC reg sizes for exynos4 SoCs
          - remove reset timer counter value during boot and resume for mct
            to fix a big jump in printk timestamps
          - fix pm code to check cortex-A9 for another exynos SoCs
          - don't rely on firmware's secondary_cpu_start for mcpm
      
        sti:
          - Ethernet clocks were wrongly defined for STiH415/416 platforms
          - STiH416 B2020 revision E DTS file name contained uppercase, change to
            lowercase"
      
      * tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (33 commits)
        ARM: at91/dt: sam9261: remove slow RC osc
        ARM: at91/dt: define sam9261ek slow crystal frequency
        ARM: at91/dt: sam9261: correctly define mainck
        ARM: at91/dt: sam9n12: correct PLLA ICPLL and OUT values
        ARM: at91/dt: sam9x5: correct PLLA ICPLL and OUT values
        misc: atmel_pwm: fix Kconfig symbols
        ARM: integrator: fix OF-related regression
        ARM: mvebu: Fix the improper use of the compatible string armada38x using a wildcard
        ARM: dts: kirkwood: fix phy-connection-type for Guruplug
        ARM: EXYNOS: Don't rely on firmware's secondary_cpu_start for mcpm
        ARM: dts: imx51-eukrea-mbimxsd51-baseboard: unbreak esdhc.
        ARM: dts: imx51-babbage: Fix esdhc setup
        ARM: dts: mx5: Move the display out of soc {} node
        ARM: dts: mx5: Fix IPU port node placement
        ARM: mvebu: select ARM_CPU_SUSPEND for Marvell EBU v7 platforms
        ARM: mvebu: Fix broken SoC ID detection
        ARM: imx_v6_v7_defconfig: Enable CONFIG_IMX_IPUV3_CORE
        ARM: multi_v7_defconfig: Add QCOM GSBI driver
        ARM: stih41x: Rename stih416-b2020-revE.dts to stih416-b2020e.dts
        tty: serial: msm: Fix section mismatch warning
        ...
      456febd2
    • Arnd Bergmann's avatar
      Merge tag 'at91-fixes' of git://github.com/at91linux/linux-at91 into fixes · 6c9d1617
      Arnd Bergmann authored
      Merge "First AT91 fixes batch for 3.16" from Nicolas Ferre:
      
      - drivers/misc fix for Kconfig PWM symbol
      - correction of several values in DT after conversion to CCF
      - fix at91sam9261/at91sam9261ek mistake in slow crystal vs. slow RC osc
      
      * tag 'at91-fixes' of git://github.com/at91linux/linux-at91:
        ARM: at91/dt: sam9261: remove slow RC osc
        ARM: at91/dt: define sam9261ek slow crystal frequency
        ARM: at91/dt: sam9261: correctly define mainck
        ARM: at91/dt: sam9n12: correct PLLA ICPLL and OUT values
        ARM: at91/dt: sam9x5: correct PLLA ICPLL and OUT values
        misc: atmel_pwm: fix Kconfig symbols
      6c9d1617
    • Arnd Bergmann's avatar
      Merge tag 'mvebu-fixes-3.16' of git://git.infradead.org/linux-mvebu into fixes · 6d12e796
      Arnd Bergmann authored
      Merge "mvebu fixes for v3.16" from Jason Cooper:
      
       - mvebu
          - Fix broken SoC ID detection
          - Select ARM_CPU_SUSPEND for v7
          - Remove armada38x compatible string (no users yet)
      
       - kirkwood
          - Fix phy-connection-type on GuruPlug board
      
      * tag 'mvebu-fixes-3.16' of git://git.infradead.org/linux-mvebu:
        ARM: mvebu: Fix the improper use of the compatible string armada38x using a wildcard
        ARM: dts: kirkwood: fix phy-connection-type for Guruplug
        ARM: mvebu: select ARM_CPU_SUSPEND for Marvell EBU v7 platforms
        ARM: mvebu: Fix broken SoC ID detection
      6d12e796
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client · 15e52d9a
      Linus Torvalds authored
      Pull Ceph fix from Sage Weil:
       "This fixes a corner case for cloned RBD images"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client:
        rbd: handle parent_overlap on writes correctly
      15e52d9a
    • Alexandre Belloni's avatar
      ARM: at91/dt: sam9261: remove slow RC osc · 971dc9ce
      Alexandre Belloni authored
      
      
      The at91sam9261 doesn't actually have a slow RC oscillator, remove it from the
      dtsi.
      
      Signed-off-by: default avatarAlexandre Belloni <alexandre.belloni@free-electrons.com>
      Acked-by: default avatarBoris BREZILLON <boris.brezillon@free-electrons.com>
      Signed-off-by: default avatarNicolas Ferre <nicolas.ferre@atmel.com>
      971dc9ce
  4. Jun 25, 2014