1. 06 Jan, 2015 6 commits
  2. 05 Jan, 2015 1 commit
    • Felipe Balbi's avatar
      net: ethernet: cpsw: fix hangs with interrupts · 7ce67a38
      Felipe Balbi authored
      The CPSW IP implements pulse-signaled interrupts. Due to
      that we must write a correct, pre-defined value to the
      CPDMA_MACEOIVECTOR register so the controller generates
      a pulse on the correct IRQ line to signal the End Of
      Interrupt.
      
      The way the driver is written today, all four IRQ lines
      are requested using the same IRQ handler and, because of
      that, we could fall into situations where a TX IRQ fires
      but we tell the controller that we ended an RX IRQ (or
      vice-versa). This situation triggers an IRQ storm on the
      reserved IRQ 127 of INTC which will in turn call ack_bad_irq()
      which will, then, print a ton of:
      
      	unexpected IRQ trap at vector 00
      
      In order to fix the problem, we are moving all calls to
      cpdma_ctlr_eoi() inside the IRQ handler and making sure
      we *always* write the correct value to the CPDMA_MACEOIVECTOR
      register. Note that the algorithm assumes that IRQ numbers and
      value-to-be-written-to-EOI are proportional, meaning that a
      write of value 0 would trigger an EOI pulse for the RX_THRESHOLD
      Interrupt and that's the IRQ number sitting in the 0-th index
      of our irqs_table array.
      
      This, however, is safe at least for current implementations of
      CPSW so we will refrain from making the check smarter (and, as
      a side-effect, slower) until we actually have a platform where
      IRQ lines are swapped.
      
      This patch has been tested for several days with AM335x- and
      AM437x-based platforms. AM57x was left out because there are
      still pending patches to enable ethernet in mainline for that
      platform. A read of the TRM confirms the statement on previous
      paragraph.
      Reported-by: default avatarYegor Yefremov <yegorslists@googlemail.com>
      Fixes: 510a1e7 (drivers: net: davinci_cpdma: acknowledge interrupt properly)
      Cc: <stable@vger.kernel.org> # v3.9+
      Signed-off-by: default avatarFelipe Balbi <balbi@ti.com>
      Acked-by: default avatarTony Lindgren <tony@atomide.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      7ce67a38
  3. 02 Jan, 2015 8 commits
  4. 01 Jan, 2015 6 commits
  5. 31 Dec, 2014 3 commits
  6. 30 Dec, 2014 5 commits
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net · 2c90331c
      Linus Torvalds authored
      Pull networking fixes from David Miller:
      
       1) Fix double SKB free in bluetooth 6lowpan layer, from Jukka Rissanen.
      
       2) Fix receive checksum handling in enic driver, from Govindarajulu
          Varadarajan.
      
       3) Fix NAPI poll list corruption in virtio_net and caif_virtio, from
          Herbert Xu.  Also, add code to detect drivers that have this mistake
          in the future.
      
       4) Fix doorbell endianness handling in mlx4 driver, from Amir Vadai.
      
       5) Don't clobber IP6CB() before xfrm6_policy_check() is called in TCP
          input path,f rom Nicolas Dichtel.
      
       6) Fix MPLS action validation in openvswitch, from Pravin B Shelar.
      
       7) Fix double SKB free in vxlan driver, also from Pravin.
      
       8) When we scrub a packet, which happens when we are switching the
          context of the packet (namespace, etc.), we should reset the
          secmark.  From Thomas Graf.
      
       9) ->ndo_gso_check() needs to do more than return true/false, it also
          has to allow the driver to clear netdev feature bits in order for
          the caller to be able to proceed properly.  From Jesse Gross.
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (62 commits)
        genetlink: A genl_bind() to an out-of-range multicast group should not WARN().
        netlink/genetlink: pass network namespace to bind/unbind
        ne2k-pci: Add pci_disable_device in error handling
        bonding: change error message to debug message in __bond_release_one()
        genetlink: pass multicast bind/unbind to families
        netlink: call unbind when releasing socket
        netlink: update listeners directly when removing socket
        genetlink: pass only network namespace to genl_has_listeners()
        netlink: rename netlink_unbind() to netlink_undo_bind()
        net: Generalize ndo_gso_check to ndo_features_check
        net: incorrect use of init_completion fixup
        neigh: remove next ptr from struct neigh_table
        net: xilinx: Remove unnecessary temac_property in the driver
        net: phy: micrel: use generic config_init for KSZ8021/KSZ8031
        net/core: Handle csum for CHECKSUM_COMPLETE VXLAN forwarding
        openvswitch: fix odd_ptr_err.cocci warnings
        Bluetooth: Fix accepting connections when not using mgmt
        Bluetooth: Fix controller configuration with HCI_QUIRK_INVALID_BDADDR
        brcmfmac: Do not crash if platform data is not populated
        ipw2200: select CFG80211_WEXT
        ...
      2c90331c
    • Linus Torvalds's avatar
      Merge tag 'linux-kselftest-3.19-fixes' of... · 6ab1e8de
      Linus Torvalds authored
      Merge tag 'linux-kselftest-3.19-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest
      
      Pull kselftest fix from Shuah Khan:
       "Fix exec test compile warnings"
      
      * tag 'linux-kselftest-3.19-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest:
        selftests/exec: Use %zu to format size_t
      6ab1e8de
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.samba.org/sfrench/cifs-2.6 · 5faa0154
      Linus Torvalds authored
      Pull CIFS fixes from Steve French:
       "A set of three minor cifs fixes"
      
      * 'for-linus' of git://git.samba.org/sfrench/cifs-2.6:
        cifs: make new inode cache when file type is different
        Fix signed/unsigned pointer warning
        Convert MessageID in smb2_hdr to LE
      5faa0154
    • Linus Torvalds's avatar
      Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs · b9d4a35f
      Linus Torvalds authored
      Pull UDF & isofs fixes from Jan Kara:
       "A couple of UDF fixes of handling of corrupted media and one iso9660
        fix of the same"
      
      * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs:
        udf: Reduce repeated dereferences
        udf: Check component length before reading it
        udf: Check path length when reading symlink
        udf: Verify symlink size before loading it
        udf: Verify i_size when loading inode
        isofs: Fix unchecked printing of ER records
      b9d4a35f
    • Linus Torvalds's avatar
      Merge tag 'pm+acpi-3.19-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · df90dcd1
      Linus Torvalds authored
      Pull power management and ACPI material from Rafael J Wysocki:
       "These are fixes (operating performance points library, cpufreq-dt
        driver, cpufreq core, ACPI backlight, cpupower tool), cleanups
        (cpuidle), new processor IDs for the RAPL (Running Average Power
        Limit) power capping driver, and a modification of the generic power
        domains framework allowing modular drivers to call one of its helper
        functions.
      
        Specifics:
      
         - Fix for a potential NULL pointer dereference in the cpufreq core
           due to an initialization race condition (Ethan Zhao).
      
         - Fixes for abuse of the OPP (Operating Performance Points) API
           related to RCU and other minor issues in the OPP library and the
           cpufreq-dt driver (Dmitry Torokhov).
      
         - cpuidle governors cleanup making them measure idle duration in a
           better way without using the CPUIDLE_FLAG_TIME_INVALID flag which
           allows that flag to be dropped from the ACPI cpuidle driver and
           from the core too (Len Brown).
      
         - New ACPI backlight blacklist entries for Samsung machines without a
           working native backlight interface that need to use the ACPI
           backlight instead (Aaron Lu).
      
         - New CPU IDs of future Intel Xeon CPUs for the Intel RAPL power
           capping driver (Jacob Pan).
      
         - Generic power domains framework modification to export the
           of_genpd_get_from_provider() function to modular drivers that will
           allow future driver modifications to be based on the mainline (Amit
           Daniel Kachhap).
      
         - Two fixes for the cpupower tool (Michal Privoznik, Prarit
           Bhargava)"
      
      * tag 'pm+acpi-3.19-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        ACPI / video: Add some Samsung models to disable_native_backlight list
        tools / cpupower: Fix no idle state information return value
        tools / cpupower: Correctly detect if running as root
        cpufreq: fix a NULL pointer dereference in __cpufreq_governor()
        cpufreq-dt: defer probing if OPP table is not ready
        PM / OPP: take RCU lock in dev_pm_opp_get_opp_count
        PM / OPP: fix warning in of_free_opp_table()
        PM / OPP: add some lockdep annotations
        powercap / RAPL: add IDs for future Xeon CPUs
        PM / Domains: Export of_genpd_get_from_provider function
        cpuidle / ACPI: remove unused CPUIDLE_FLAG_TIME_INVALID
        cpuidle: ladder: Better idle duration measurement without using CPUIDLE_FLAG_TIME_INVALID
        cpuidle: menu: Better idle duration measurement without using CPUIDLE_FLAG_TIME_INVALID
      df90dcd1
  7. 29 Dec, 2014 11 commits
    • David S. Miller's avatar
      genetlink: A genl_bind() to an out-of-range multicast group should not WARN(). · dc97a1a9
      David S. Miller authored
      Users can request to bind to arbitrary multicast groups, so warning
      when the requested group number is out of range is not appropriate.
      
      And with the warning removed, and the 'err' variable properly given
      an initial value, we can remove 'found' altogether.
      Reported-by: default avatarSedat Dilek <sedat.dilek@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      dc97a1a9
    • Linus Torvalds's avatar
      Merge tag 'spi-v3.19-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi · 346eef2f
      Linus Torvalds authored
      Pull spi fixes from Mark Brown:
       "A few driver specific fixes here, the DMA burst size increase in the
        spfi driver is a fix to make the hardware happier in some situations"
      
      * tag 'spi-v3.19-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi:
        spi: img-spfi: Increase DMA burst size
        spi: img-spfi: Enable controller before starting TX DMA
        spi: sh-msiof: Add runtime PM lock in initializing
      346eef2f
    • Linus Torvalds's avatar
      Merge tag 'regulator-v3.19-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator · 034496f4
      Linus Torvalds authored
      Pull one regulator fix from Mark Brown:
       "One fix here, a fix for the voltage mapping on one of the s2mps11
        regulators which broke systems using it including apparently the
        Gear 2 smartwatches"
      
      * tag 'regulator-v3.19-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator:
        regulator: s2mps11: Fix dw_mmc failure on Gear 2
      034496f4
    • Linus Torvalds's avatar
      Merge tag 'mmc-v3.19-2' of git://git.linaro.org/people/ulf.hansson/mmc · 5e6c2c97
      Linus Torvalds authored
      Pull one MMC fix from Ulf Hansson:
       "MMC core:
      
         - Fix selection of buswidth for mmc hosts supporting 1-bit only"
      
      * tag 'mmc-v3.19-2' of git://git.linaro.org/people/ulf.hansson/mmc:
        mmc: core: stop trying to switch width when only one bit is supported
      5e6c2c97
    • Linus Torvalds's avatar
      Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux · 4c5d4995
      Linus Torvalds authored
      Pull thermal management updates from Zhang Rui:
       "First of all, the most important change is the thermal cpu cooling
        fixes.  The major fix here is to have proper sequencing between
        cpufreq layer and thermal cpu cooling registration.  A take away of
        this fix is an improvement in the thermal drivers code.  Thermal
        drivers that require cpu cooling do not need to check for cpufreq
        layer.  The requirement now is to propagate the error code, if any,
        while registering cpu cooling device.  Thanks to Viresh for
        implementing the required CPUfreq changes.
      
        Second, a new driver is introduced for int340x processor thermal
        device.  Given that int340x thermal is disabled by default, and this
        processor thermal device is only available on limited platforms, plus
        the driver does nothing but exposes some thermal limitation
        information for user space to use, thus I think it is safe to include
        it in this pull request after missing 3.19-rc2.
      
        Specifics:
      
         - Thermal cpu cooling fixes and cleanups.
      
         - introduce INT340X processor thermal reporting device driver.
      
         - several small fixes and cleanups for int340x thermal drivers"
      
      * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux: (43 commits)
        Thermal/int340x/int3403: Free acpi notification handler
        Thermal/int340x/processor_thermal: Fix memory leak
        Thermal/int340x/int3403: Fix memory leak
        thermal: int340x: Introduce processor reporting device
        thermal: int340x_thermal: drop owner assignment from platform_drivers
        thermal: drop owner assignment from platform_drivers
        thermal: cpu_cooling: document node in struct cpufreq_cooling_device
        thermal/powerclamp: add ids for future xeon cpus
        Thermal/int340x: Handle properly the case when _trt or _art acpi entry is missing
        thermal: cpu_cooling: return ERR_PTR() for !CPU_THERMAL or !THERMAL_OF
        thermal: cpu_cooling: small memory leak on error
        thermal: ti-soc-thermal: Do not print error message in the EPROBE_DEFER case
        thermal: db8500: Do not print error message in the EPROBE_DEFER case
        thermal: imx: Do not print error message in the EPROBE_DEFER case
        thermal: Fix cdev registration with THERMAL_NO_LIMIT on 64bit
        drivers: thermal: Remove ARCH_HAS_BANDGAP dependency for samsung
        thermal:core:fix: Check return code of the ->get_max_state() callback
        thermal: cpu_cooling: update copyright tags
        thermal: cpu_cooling: Use cpufreq_dev->freq_table for finding level/freq
        thermal: cpu_cooling: Store frequencies in descending order
        ...
      4c5d4995
    • Michal Hocko's avatar
      mm: get rid of radix tree gfp mask for pagecache_get_page · 45f87de5
      Michal Hocko authored
      Commit 2457aec6 ("mm: non-atomically mark page accessed during page
      cache allocation where possible") has added a separate parameter for
      specifying gfp mask for radix tree allocations.
      
      Not only this is less than optimal from the API point of view because it
      is error prone, it is also buggy currently because
      grab_cache_page_write_begin is using GFP_KERNEL for radix tree and if
      fgp_flags doesn't contain FGP_NOFS (mostly controlled by fs by
      AOP_FLAG_NOFS flag) but the mapping_gfp_mask has __GFP_FS cleared then
      the radix tree allocation wouldn't obey the restriction and might
      recurse into filesystem and cause deadlocks.  This is the case for most
      filesystems unfortunately because only ext4 and gfs2 are using
      AOP_FLAG_NOFS.
      
      Let's simply remove radix_gfp_mask parameter because the allocation
      context is same for both page cache and for the radix tree.  Just make
      sure that the radix tree gets only the sane subset of the mask (e.g.  do
      not pass __GFP_WRITE).
      
      Long term it is more preferable to convert remaining users of
      AOP_FLAG_NOFS to use mapping_gfp_mask instead and simplify this
      interface even further.
      Reported-by: default avatarDave Chinner <david@fromorbit.com>
      Signed-off-by: default avatarMichal Hocko <mhocko@suse.cz>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      45f87de5
    • Rafael J. Wysocki's avatar
      Merge branch 'acpi-video' · 651c3293
      Rafael J. Wysocki authored
      * acpi-video:
        ACPI / video: Add some Samsung models to disable_native_backlight list
      651c3293
    • Rafael J. Wysocki's avatar
      Merge branches 'pm-domains', 'powercap' and 'pm-tools' · 4f2f2777
      Rafael J. Wysocki authored
      * pm-domains:
        PM / Domains: Export of_genpd_get_from_provider function
      
      * powercap:
        powercap / RAPL: add IDs for future Xeon CPUs
      
      * pm-tools:
        tools / cpupower: Fix no idle state information return value
        tools / cpupower: Correctly detect if running as root
      4f2f2777
    • Rafael J. Wysocki's avatar
      Merge branches 'pm-cpufreq' and 'pm-cpuidle' · ff23ab24
      Rafael J. Wysocki authored
      * pm-cpufreq:
        cpufreq: fix a NULL pointer dereference in __cpufreq_governor()
        cpufreq-dt: defer probing if OPP table is not ready
      
      * pm-cpuidle:
        cpuidle / ACPI: remove unused CPUIDLE_FLAG_TIME_INVALID
        cpuidle: ladder: Better idle duration measurement without using CPUIDLE_FLAG_TIME_INVALID
        cpuidle: menu: Better idle duration measurement without using CPUIDLE_FLAG_TIME_INVALID
      ff23ab24
    • Rafael J. Wysocki's avatar
      Merge branch 'pm-opp' · e0288b0e
      Rafael J. Wysocki authored
      * pm-opp:
        PM / OPP: take RCU lock in dev_pm_opp_get_opp_count
        PM / OPP: fix warning in of_free_opp_table()
        PM / OPP: add some lockdep annotations
      e0288b0e
    • Alexandre Belloni's avatar
      mmc: core: stop trying to switch width when only one bit is supported · 1c2d26e3
      Alexandre Belloni authored
      mmc_select_bus_width() will try to switch to MMC_BUS_WIDTH_4 even if
      MMC_CAP_4_BIT_DATA and MMC_CAP_8_BIT_DATA are not set in host->caps.
      Return as soon as possible when those flags are not set
      
      Fixes: 577fb131 (mmc: rework selection of bus speed mode)
      Signed-off-by: default avatarAlexandre Belloni <alexandre.belloni@free-electrons.com>
      Cc: <stable@vger.kernel.org> # 3.17
      Signed-off-by: default avatarUlf Hansson <ulf.hansson@linaro.org>
      1c2d26e3