Skip to content
  1. Jan 24, 2015
  2. Jan 18, 2015
    • Linus Torvalds's avatar
      Linux 3.19-rc5 · ec6f34e5
      Linus Torvalds authored
      ec6f34e5
    • Linus Torvalds's avatar
      Merge tag 'armsoc-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · d0ac5d8e
      Linus Torvalds authored
      Pull ARM SoC fixes from Olof Johansson:
       "We've been sitting on our fixes branch for a while, so this batch is
        unfortunately on the large side.
      
        A lot of these are tweaks and fixes to device trees, fixing various
        bugs around clocks, reg ranges, etc.  There's also a few defconfig
        updates (which are on the late side, no more of those).
      
        All in all the diffstat is bigger than ideal at this time, but nothing
        in here seems particularly risky"
      
      * tag 'armsoc-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (31 commits)
        reset: sunxi: fix spinlock initialization
        ARM: dts: disable CCI on exynos5420 based arndale-octa
        drivers: bus: check cci device tree node status
        ARM: rockchip: disable jtag/sdmmc autoswitching on rk3288
        ARM: nomadik: fix up leftover device tree pins
        ARM: at91: board-dt-sama5: add phy_fixup to override NAND_Tree
        ARM: at91/dt: sam9263: Add missing clocks to lcdc node
        ARM: at91: sama5d3: dt: correct the sound route
        ARM: at91/dt: sama5d4: fix the timer reg length
        ARM: exynos_defconfig: Enable LM90 driver
        ARM: exynos_defconfig: Enable options for display panel support
        arm: dts: Use pmu_system_controller phandle for dp phy
        ARM: shmobile: sh73a0 legacy: Set .control_parent for all irqpin instances
        ARM: dts: berlin: correct BG2Q's SM GPIO location.
        ARM: dts: berlin: add broken-cd and set bus width for eMMC in Marvell DMP DT
        ARM: dts: berlin: fix io clk and add missing core clk for BG2Q sdhci2 host
        ARM: dts: Revert disabling of smc91x for n900
        ARM: dts: imx51-babbage: Fix ULPI PHY reset modelling
        ARM: dts: dra7-evm: fix qspi device tree partition size
        ARM: omap2plus_defconfig: use CONFIG_CPUFREQ_DT
        ...
      d0ac5d8e
    • Linus Torvalds's avatar
      Merge tag 'clk-fixes-for-linus' of git://git.linaro.org/people/mike.turquette/linux · 12ba8571
      Linus Torvalds authored
      Pull clock driver fixes from Mike Turquette:
       "Small number of fixes for clock drivers and a single null pointer
        dereference fix in the framework core code.
      
        The driver fixes vary from fixing section mismatch warnings to
        preventing machines from hanging (and preventing developers from
        crying)"
      
      * tag 'clk-fixes-for-linus' of git://git.linaro.org/people/mike.turquette/linux:
        clk: fix possible null pointer dereference
        Revert "clk: ppc-corenet: Fix Section mismatch warning"
        clk: rockchip: fix deadlock possibility in cpuclk
        clk: berlin: bg2q: remove non-exist "smemc" gate clock
        clk: at91: keep slow clk enabled to prevent system hang
        clk: rockchip: fix rk3288 cpuclk core dividers
        clk: rockchip: fix rk3066 pll lock bit location
        clk: rockchip: Fix clock gate for rk3188 hclk_emem_peri
        clk: rockchip: add CLK_IGNORE_UNUSED flag to fix rk3066/rk3188 USB Host
      12ba8571
    • Linus Torvalds's avatar
      Merge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · 901b2082
      Linus Torvalds authored
      Pull SCSI fixes from James Bottomley:
       "This is one fix for a Multiqueue sleeping in invalid context problem
        and a MAINTAINER file update for Qlogic"
      
      * tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi:
        scsi: ->queue_rq can't sleep
        MAINTAINERS: Update maintainer list for qla4xxx
      901b2082
    • Stanimir Varbanov's avatar
      clk: fix possible null pointer dereference · c7662fc5
      Stanimir Varbanov authored
      The commit 646cafc6
      
       (clk: Change clk_ops->determine_rate to
      return a clk_hw as the best parent) opens a possibility for
      null pointer dereference, fix this.
      
      Signed-off-by: default avatarStanimir Varbanov <svarbanov@mm-sol.com>
      Reviewed-by: default avatarStephen Boyd <sboyd@codeaurora.org>
      Signed-off-by: default avatarMichael Turquette <mturquette@linaro.org>
      c7662fc5
    • Kevin Hao's avatar
      Revert "clk: ppc-corenet: Fix Section mismatch warning" · 176a107b
      Kevin Hao authored
      This reverts commit da788acb
      
      .
      
      That commit tried to fix the section mismatch warning by moving the
      ppc_corenet_clk_driver struct to init section. This is definitely wrong
      because the kernel would free the memories occupied by this struct
      after boot while this driver is still registered in the driver core.
      The kernel would panic when accessing this driver struct.
      
      Cc: stable@vger.kernel.org # 3.17
      Signed-off-by: default avatarKevin Hao <haokexin@gmail.com>
      Acked-by: default avatarScott Wood <scottwood@freescale.com>
      Signed-off-by: default avatarMichael Turquette <mturquette@linaro.org>
      176a107b
    • Heiko Stübner's avatar
      clk: rockchip: fix deadlock possibility in cpuclk · a5e1baf7
      Heiko Stübner authored
      
      
      Lockdep reported a possible deadlock between the cpuclk lock and for example
      the i2c driver.
      
             CPU0                    CPU1
             ----                    ----
        lock(clk_lock);
                                     local_irq_disable();
                                     lock(&(&i2c->lock)->rlock);
                                     lock(clk_lock);
        <Interrupt>
          lock(&(&i2c->lock)->rlock);
      
       *** DEADLOCK ***
      
      The generic clock-types of the core ccf already use spin_lock_irqsave when
      touching clock registers, so do the same for the cpuclk.
      
      Signed-off-by: default avatarHeiko Stuebner <heiko@sntech.de>
      Reviewed-by: default avatarDoug Anderson <dianders@chromium.org>
      Signed-off-by: default avatarMichael Turquette <mturquette@linaro.org>
      [mturquette@linaro.org: removed initialization of "flags"]
      a5e1baf7
    • Linus Torvalds's avatar
      Merge branch 'fixes' of git://git.infradead.org/users/vkoul/slave-dma · 298e3204
      Linus Torvalds authored
      Pull dmaengine fixes from Vinod Koul:
       "Two patches, the first by Andy to fix dw dmac runtime pm and second
        one by me to fix the dmaengine headers in MAINTAINERS"
      
      * 'fixes' of git://git.infradead.org/users/vkoul/slave-dma:
        dmaengine: dw: balance PM runtime calls
        MAINTAINERS: dmaengine: fix the header file for dmaengine
      298e3204
    • Linus Torvalds's avatar
      Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 59b2858f
      Linus Torvalds authored
      Pull perf fixes from Ingo Molnar:
       "Mostly tooling fixes, but also two PMU driver fixes"
      
      * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        perf tools powerpc: Use dwfl_report_elf() instead of offline.
        perf tools: Fix segfault for symbol annotation on TUI
        perf test: Fix dwarf unwind using libunwind.
        perf tools: Avoid build splat for syscall numbers with uclibc
        perf tools: Elide strlcpy warning with uclibc
        perf tools: Fix statfs.f_type data type mismatch build error with uclibc
        tools: Remove bitops/hweight usage of bits in tools/perf
        perf machine: Fix __machine__findnew_thread() error path
        perf tools: Fix building error in x86_64 when dwarf unwind is on
        perf probe: Propagate error code when write(2) failed
        perf/x86/intel: Fix bug for "cycles:p" and "cycles:pp" on SLM
        perf/rapl: Fix sysfs_show() initialization for RAPL PMU
      59b2858f
  3. Jan 17, 2015
    • Ingo Molnar's avatar
      Merge tag 'perf-urgent-for-mingo' of... · d01de238
      Ingo Molnar authored
      
      Merge tag 'perf-urgent-for-mingo' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/urgent
      
      Pull perf/urgent fixes from Arnaldo Carvalho de Melo:
      
        - Fix segfault when using both the map symtab viewer and annotation
          in the TUI (Namhyung Kim).
      
        - uClibc build fixes (Alexey Brodkin, Vineet Gupta).
      
        - bitops/hweight were moved from tools/perf/ too tools/include, move
          some leftovers (Arnaldo Carvalho de Melo)
      
        - Fix dwarf unwind x86_64 build error (Namhyung Kim)
      
        - Fix __machine__findnew_thread() error path (Namhyung Kim)
      
        - Propagate error code when write(2) failed in 'perf probe' (Namhyung Kim)
      
        - Use dwfl_report_elf() instead of offline in powerpc bits to
          properly handle non prelinked DSOs (Sukadev Bhattiprolu).
      
        - Fix dwarf unwind using libunwind in 'perf test' (Wang Nan)
      
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      Signed-off-by: default avatarIngo Molnar <mingo@kernel.org>
      d01de238
    • Olof Johansson's avatar
      Merge tag 'samsung-fixes-3.19' of... · 966903a9
      Olof Johansson authored
      
      Merge tag 'samsung-fixes-3.19' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into fixes
      
      Merge "Samsung fixes for v3.19" from Kukjin Kim:
      
      Samsung fixes for v3.19
      - exynos_defconfig: enable LM90 driver and display panel support
         - HWMON
         - SENSORS_LM90
         - Direct Rendering Manager (DRM)
         - DRM bridge registration and lookup framework
         - Parade ps8622/ps8625 eDP/LVDS bridge
         - NXP ptn3460 eDP/LVDS bridge
         - Exynos Fully Interactive Mobile Display controller (FIMD)
         - Panel registration and lookup framework
         - Simple panels
         - Backlight & LCD device support
      
      - use pmu_system_controller phandle for dp phy
        : DP PHY requires pmu_system_controller to handle PMU reg. now
      
      * tag 'samsung-fixes-3.19' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung:
        ARM: exynos_defconfig: Enable LM90 driver
        ARM: exynos_defconfig: Enable options for display panel support
        arm: dts: Use pmu_system_controller phandle for dp phy
      
      Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
      966903a9
    • Tyler Baker's avatar
      reset: sunxi: fix spinlock initialization · 41544f9f
      Tyler Baker authored
      
      
      Call spin_lock_init() before the spinlocks are used, both in early init
      and probe functions preventing a lockdep splat.
      
      I have been observing lockdep complaining [1] during boot on my a80 optimus [2]
      when CONFIG_PROVE_LOCKING has been enabled. This patch resolves the splat,
      and has been tested on a few other sunxi platforms without issue.
      
      [1] http://storage.kernelci.org/next/next-20150107/arm-multi_v7_defconfig+CONFIG_PROVE_LOCKING=y/lab-tbaker/boot-sun9i-a80-optimus.html
      [2] http://kernelci.org/boot/?a80-optimus
      
      Signed-off-by: default avatarTyler Baker <tyler.baker@linaro.org>
      Cc: <stable@vger.kernel.org>
      Acked-by: default avatarPhilipp Zabel <p.zabel@pengutronix.de>
      Signed-off-by: default avatarKevin Hilman <khilman@linaro.org>
      Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
      41544f9f
    • Olof Johansson's avatar
      Merge tag 'renesas-soc-fixes-for-v3.19' of... · a30e9318
      Olof Johansson authored
      Merge tag 'renesas-soc-fixes-for-v3.19' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into fixes
      
      Merge "Renesas ARM Based SoC Fixes for v3.19" from Simon Horman:
      
      Renesas ARM Based SoC Fixes for v3.19
      
      This pull request is based on the last round of SoC updates for v3.19,
      Fourth Round of Renesas ARM Based SoC Updates for v3.19, tagged as
      renesas-soc3-for-v3.19, merged into your next/soc branch and included in
      v3.19-rc1.
      
      - ARM: shmobile: r8a7740: Instantiate GIC from C board code in legacy builds
      
        Set .control_parent for all irqpin instances for sh73a0 SoC when booting
        using legacy C.
      
      - ARM: shmobile: r8a7740: Instantiate GIC from C board code in legacy builds
      
        This fixes a long standing problem which has been present since
        the sh73a0 SoC started using the INTC External IRQ pin driver.
      
        The patch that introduced the problem is 341eb546 ("ARM:
        shmobile: INTC External IRQ pin driver on sh73a0") which was included
        in v3.10.
      
      * tag 'renesas-soc-fixes-for-v3.19' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
        ARM: shmobile: sh73a0 legacy: Set .control_parent for all irqpin instances
        ARM: shmobile: r8a7740: Instantiate GIC from C board code in legacy builds
      a30e9318
    • Abhilash Kesavan's avatar
      ARM: dts: disable CCI on exynos5420 based arndale-octa · 25217fef
      Abhilash Kesavan authored
      
      
      The arndale-octa board was giving "imprecise external aborts" during
      boot-up with MCPM enabled. CCI enablement of the boot cluster was found
      to be the cause of these aborts (possibly because the secure f/w was not
      allowing it). Hence, disable CCI for the arndale-octa board.
      
      Signed-off-by: default avatarAbhilash Kesavan <a.kesavan@samsung.com>
      Tested-by: default avatarKrzysztof Kozlowski <k.kozlowski@samsung.com>
      Tested-by: default avatarKevin Hilman <khilman@linaro.org>
      Tested-by: default avatarTyler Baker <tyler.baker@linaro.org>
      Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
      25217fef
    • Abhilash Kesavan's avatar
      drivers: bus: check cci device tree node status · 896ddd60
      Abhilash Kesavan authored
      
      
      The arm-cci driver completes the probe sequence even if the cci node is
      marked as disabled. Add a check in the driver to honour the cci status
      in the device tree.
      
      Signed-off-by: default avatarAbhilash Kesavan <a.kesavan@samsung.com>
      Acked-by: default avatarSudeep Holla <sudeep.holla@arm.com>
      Acked-by: default avatarNicolas Pitre <nico@linaro.org>
      Tested-by: default avatarSudeep Holla <sudeep.holla@arm.com>
      Tested-by: default avatarKevin Hilman <khilman@linaro.org>
      Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
      896ddd60
    • Olof Johansson's avatar
      Merge tag 'at91-fixes' of... · 6fda93b9
      Olof Johansson authored
      
      Merge tag 'at91-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/nferre/linux-at91 into fixes
      
      Merge "at91: fixes for 3.19 #1 (ter)" from Nicolas Ferre:
      
      First fixes batch for AT91 on 3.19:
      - fix some DT entries
      - correct clock entry for the at91sam9263 LCD
      - add a phy_fixup for Eth1 on sama5d4
      
      * tag 'at91-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/nferre/linux-at91:
        ARM: at91: board-dt-sama5: add phy_fixup to override NAND_Tree
        ARM: at91/dt: sam9263: Add missing clocks to lcdc node
        ARM: at91: sama5d3: dt: correct the sound route
        ARM: at91/dt: sama5d4: fix the timer reg length
      
      Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
      6fda93b9
    • Heiko Stübner's avatar
      ARM: rockchip: disable jtag/sdmmc autoswitching on rk3288 · c9b75d51
      Heiko Stübner authored
      
      
      rk3288 SoCs have a function to automatically switch between jtag/sdmmc pinmux
      settings depending on the card state. This collides with a lot of assumptions.
      
      It only works when using the internal card-detect mechanism and breaks
      horribly when using either the normal card-detect via the slot-gpio function
      or via any other pin. Also there is of course no link between the mmc and jtag
      on the software-side, so the jtag clocks may very well be disabled when the
      card is ejected and the soc switches back to the jtag pinmux.
      
      Leaving the switching function enabled did result in mmc timeouts and rcu
      stalls thus hanging the system on 3.19-rc1. Therefore disable it in all cases,
      as we expect the devicetree to explicitly select either mmc or jtag pinmuxes
      anyway.
      
      Signed-off-by: default avatarHeiko Stuebner <heiko@sntech.de>
      Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
      c9b75d51
    • Olof Johansson's avatar
      Merge tag 'berlin-fixes-for-3.19-1' of... · 1dbb36bc
      Olof Johansson authored
      
      Merge tag 'berlin-fixes-for-3.19-1' of git://git.infradead.org/users/hesselba/linux-berlin into fixes
      
      Merge "ARM: berlin: Fixes for v3.19 (round 1)" from Sebastian Hesselbarth:
      
      Marvell Berlin fixes for v3.19 round 1:
      - SDHCI DT fixes for BG2Q and BG2Q reference board
      - BG2Q SM GPIO DT node relocation
      
      * tag 'berlin-fixes-for-3.19-1' of git://git.infradead.org/users/hesselba/linux-berlin:
        ARM: dts: berlin: correct BG2Q's SM GPIO location.
        ARM: dts: berlin: add broken-cd and set bus width for eMMC in Marvell DMP DT
        ARM: dts: berlin: fix io clk and add missing core clk for BG2Q sdhci2 host
      
      Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
      1dbb36bc
    • Linus Walleij's avatar
      ARM: nomadik: fix up leftover device tree pins · 259e4384
      Linus Walleij authored
      
      
      We altered the device tree bindings for the Nomadik family of
      pin controllers to be standard, this file was merged out-of-order
      so we missed fixing this. Fix it up.
      
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
      259e4384
    • Olof Johansson's avatar
      Merge tag 'omap-for-v3.19/fixes-rc1' of... · e3db2217
      Olof Johansson authored
      
      Merge tag 'omap-for-v3.19/fixes-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into fixes
      
      Merge "omap fixes against v3.19-rc1" from Tony Lindgren:
      
      Fixes for omaps mostly to deal with dra7 timer issues
      and hypervisor mode. The other fixes are minor fixes for
      various boards. The summary of the fixes is:
      
      - Fix real-time counter rate typos for some frequencies
      - Fix counter frequency drift for am572x
      - Fix booting of secondary CPU in HYP mode
      - Fix n900 board name for legacy user space
      - Fix cpufreq in omap2plus_defconfig after Kconfig change
      - Fix dra7 qspi partitions
      
      And also, let's re-enable smc91x on some n900 boards that
      we have sitting in a few test boot systems after the boot
      loader dependencies got fixed.
      
      * tag 'omap-for-v3.19/fixes-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
        ARM: dts: Revert disabling of smc91x for n900
        ARM: dts: dra7-evm: fix qspi device tree partition size
        ARM: omap2plus_defconfig: use CONFIG_CPUFREQ_DT
        ARM: OMAP2+: Fix n900 board name for legacy user space
        ARM: omap5/dra7xx: Enable booting secondary CPU in HYP mode
        ARM: dra7xx: Fix counter frequency drift for AM572x errata i856
        ARM: omap5/dra7xx: Fix frequency typos
      
      Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
      e3db2217
    • Olof Johansson's avatar
      Merge tag 'imx-fixes-3.19' of... · 3be81429
      Olof Johansson authored
      
      Merge tag 'imx-fixes-3.19' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into fixes
      
      Merge "ARM: imx: fixes for 3.19" from Shawn Guo:
      
      The i.MX fixes for 3.19:
       - One fix for incorrect i.MX25 SPI1 clock assignment in device tree,
         which causes system hang when accessing SPI1.
       - Correct i.MX6SX QSPI parent clock configuration to fix a kernel Oops.
       - Fix ULPI PHY reset modelling on imx51-babbage board to remove the
         dependency on bootloader for USB3317 ULPI PHY reset.
       - Correct video divider setting on i.MX6Q rev T0 1.0 to fix the issue
         that HDMI is not working at high resolution on T0 1.0.
       - One incremental fix for CODA960 VPU enabling in device tree to
         correct interrupt order.
       - LS1021A SCFG block works in BE mode, add device tree property
         big-endian to make it right.
      
      * tag 'imx-fixes-3.19' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
        ARM: dts: imx51-babbage: Fix ULPI PHY reset modelling
        ARM: imx6sx: Set PLL2 as parent of QSPI clocks
        ARM: dts: imx25: Fix the SPI1 clocks
        ARM: clk-imx6q: fix video divider for rev T0 1.0
        ARM: dts: imx6qdl: Fix CODA960 interrupt order
        ARM: ls1021a: dtsi: add 'big-endian' property for scfg node
      
      Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
      3be81429
    • Olof Johansson's avatar
      Merge tag 'v3.19-rockchip-dtsfixes1' of... · 1591dc44
      Olof Johansson authored
      
      Merge tag 'v3.19-rockchip-dtsfixes1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into fixes
      
      Merge "ARM: rockchip: dts fix for 3.19" from Heiko Stübner:
      
      Increase drive-strength to sdmmc pins on rk3288-evb to fix
      an issue with the fixed highspeed card detection.
      
      * tag 'v3.19-rockchip-dtsfixes1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip:
        ARM: dts: rockchip: bump sd card pin drive strength up on rk3288-evb
      
      Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
      1591dc44
    • Louis Langholtz's avatar
      kernel: avoid overflow in cmp_range · fc7f0dd3
      Louis Langholtz authored
      
      
      Avoid overflow possibility.
      
      [ The overflow is purely theoretical, since this is used for memory
        ranges that aren't even close to using the full 64 bits, but this is
        the right thing to do regardless.  - Linus ]
      
      Signed-off-by: default avatarLouis Langholtz <lou_langholtz@me.com>
      Cc: Yinghai Lu <yinghai@kernel.org>
      Cc: Peter Anvin <hpa@linux.intel.com>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      fc7f0dd3
    • Sukadev Bhattiprolu's avatar
      perf tools powerpc: Use dwfl_report_elf() instead of offline. · 6bcf9c1f
      Sukadev Bhattiprolu authored
      
      
      dwfl_report_offline() works only when libraries are prelinked.
      
      Replace dwfl_report_offline() with dwfl_report_elf() so we correctly
      extract debug info even from libraries that are not prelinked.
      
      Reported-by: default avatarJiri Olsa <jolsa@redhat.com>
      Signed-off-by: default avatarSukadev Bhattiprolu <sukadev@linux.vnet.ibm.com>
      Tested-by: default avatarJiri Olsa <jolsa@redhat.com>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: Michael Ellerman <mpe@ellerman.id.au>
      Link: http://lkml.kernel.org/r/20150114221045.GA17703@us.ibm.com
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      6bcf9c1f
    • Namhyung Kim's avatar
      perf tools: Fix segfault for symbol annotation on TUI · 813ccd15
      Namhyung Kim authored
      
      
      Currently the symbol structure is allocated with symbol_conf.priv_size
      to carry sideband information like annotation, map browser on TUI and
      sort-by-name tree node.  So retrieving these information from symbol
      needs to care about the details of such placement.
      
      However the annotation code just assumes that the symbol is placed after
      the struct annotation.  But actually there's other info between them.
      So accessing those struct will lead to an undefined behavior (usually a
      crash) after they write their info to the same location.
      
      To reproduce the problem, please follow the steps below:
      
        1. run perf report (TUI of course) with -v option
        2. open map browser (by pressing right arrow key for any entry)
        3. search any function (by pressing '/' key and input whatever..)
        4. return to the hist browser (by pressing 'q' or left arrow key)
        5. open annotation window for the same entry (by pressing 'a' key)
      
      Signed-off-by: default avatarNamhyung Kim <namhyung@kernel.org>
      Cc: David Ahern <dsahern@gmail.com>
      Cc: Ingo Molnar <mingo@kernel.org>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      Link: http://lkml.kernel.org/r/1421234288-22758-1-git-send-email-namhyung@kernel.org
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      813ccd15
    • Wang Nan's avatar
      perf test: Fix dwarf unwind using libunwind. · b93b0967
      Wang Nan authored
      
      
      Perf tool fails to unwind user stack if the event raises in a shared
      object. This patch improves tests/dwarf-unwind.c to demonstrate the
      problem by utilizing commonly used glibc function "bsearch". If perf is
      not statically linked, the testcase will try to unwind a mixed call
      trace.
      
      By debugging libunwind I found that there is a bug in unwind-libunwind:
      it always passes 0 as segbase to libunwind, cause libunwind unable to
      locate debug_frame entry fir first level ip address (I add some more
      debugging output into libunwind to make things clear):
      
                     >_Uarm_dwarf_find_debug_frame: start_ip = 10be98, end_ip = 10c2a4
                     >_Uarm_dwarf_find_debug_frame: found debug_frame table `/lib/libc-2.18.so': segbase=0x0, len=7, gp=0x0, table_data=0x449388
                     >_Uarm_dwarf_search_unwind_table: call lookup:ip = b6cd3bcc, segbase = 0, rel_ip = b6cd3bcc
                     >lookup: e->start_ip_offset = bcf18 (rel_ip = b6cd3bcc)
                     >lookup: e->start_ip_offset = 6d314 (rel_ip = b6cd3bcc)
                     >lookup: e->start_ip_offset = 33d0c (rel_ip = b6cd3bcc)
                      ...
                     >lookup: e->start_ip_offset = 15d0c (rel_ip = b6cd3bcc)
                     >lookup: e->start_ip_offset = 15c40 (rel_ip = b6cd3bcc)
       >_Uarm_dwarf_search_unwind_table: IP b6cd3bcc inside range b6c12000-b6d4c000, but no explicit unwind info found
                      >put_rs_cache: unmasking signals/interrupts and releasing lock
                     >_Uarm_dwarf_step: returning -10
       >_Uarm_step: dwarf_step()=-10
      
      This patch passes map->start as segbase to dwarf_find_debug_frame(), so
      di will be initialized correctly.
      
      In addition, dso and executable are different when setting segbase. This
      patch first check whether the elf is executable, and pass segbase only
      for shared object.
      
      Signed-off-by: default avatarWang Nan <wangnan0@huawei.com>
      Acked-by: default avatarJiri Olsa <jolsa@kernel.org>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Li Zefan <lizefan@huawei.com>
      Cc: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      Link: http://lkml.kernel.org/r/1421203007-75799-1-git-send-email-wangnan0@huawei.com
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      b93b0967
    • Vineet Gupta's avatar
      perf tools: Avoid build splat for syscall numbers with uclibc · ea1fe3a8
      Vineet Gupta authored
      
      
      This is due to duplicated unistd inclusion (via uClibc headers + kernel headers)
      Also seen on ARM uClibc based tools
      
         ------- ARC build ---------->8-------------
      
        CC       util/evlist.o
      In file included from
      ~/arc/k.org/arch/arc/include/uapi/asm/unistd.h:25:0,
                       from util/../perf-sys.h:10,
                       from util/../perf.h:15,
                       from util/event.h:7,
                       from util/event.c:3:
      ~/arc/k.org/include/uapi/asm-generic/unistd.h:906:0:
      warning: "__NR_fcntl64" redefined [enabled by default]
       #define __NR_fcntl64 __NR3264_fcntl
       ^
      In file included from
      ~/arc/gnu/INSTALL_1412-arc-2014.12-rc1/arc-snps-linux-uclibc/sysroot/usr/include/sys/syscall.h:24:0,
                       from util/../perf-sys.h:6,
         ----------------->8-------------------
      
         ------- ARM build ---------->8-------------
      
        CC FPIC  plugin_scsi.o
      In file included from util/../perf-sys.h:9:0,
                       from util/../perf.h:15,
                       from util/cache.h:7,
                       from perf.c:12:
      ~/arc/k.org/arch/arm/include/uapi/asm/unistd.h:28:0:
      warning: "__NR_restart_syscall" redefined [enabled by default]
      In file included from
      ~/buildroot/host/usr/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/include/sys/syscall.h:25:0,
                       from util/../perf-sys.h:6,
                       from util/../perf.h:15,
                       from util/cache.h:7,
                       from perf.c:12:
      ~/buildroot/host/usr/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/include/bits/sysnum.h:17:0:
      note: this is the location of the previous definition
         ----------------->8-------------------
      
      Signed-off-by: default avatarVineet Gupta <vgupta@synopsys.com>
      Cc: Alexey Brodkin <Alexey.Brodkin@synopsys.com>
      Cc: Ingo Molnar <mingo@kernel.org>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Link: http://lkml.kernel.org/r/1421156604-30603-4-git-send-email-vgupta@synopsys.com
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      ea1fe3a8
    • Vineet Gupta's avatar
      perf tools: Elide strlcpy warning with uclibc · a83d869f
      Vineet Gupta authored
      
      
         ----------------->8------------------
        CC       bench/sched-pipe.o
      In file included from builtin-annotate.c:13:0:
      util/cache.h:76:15: warning: redundant redeclaration of 'strlcpy'
      [-Wredundant-decls]
       extern size_t strlcpy(char *dest, const char *src, size_t size);
                     ^
      In file included from util/util.h:55:0,
                       from builtin.h:4,
                       from builtin-annotate.c:8:
      ~/vineetg/arc/gnu/INSTALL_1412-arc-2014.12-rc1/arc-snps-linux-uclibc/sysroot/usr/include/string.h:396:15:
      note: previous declaration of 'strlcpy' was here
       extern size_t strlcpy(char *__restrict dst, const char *__restrict src,
         ----------------->8------------------
      
      Signed-off-by: default avatarVineet Gupta <vgupta@synopsys.com>
      Cc: Alexey Brodkin <Alexey.Brodkin@synopsys.com>
      Cc: Ingo Molnar <mingo@kernel.org>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Link: http://lkml.kernel.org/r/1421156604-30603-3-git-send-email-vgupta@synopsys.com
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      a83d869f
    • Alexey Brodkin's avatar
      perf tools: Fix statfs.f_type data type mismatch build error with uclibc · db1806ed
      Alexey Brodkin authored
      
      
      ARC Linux uses the no legacy syscalls abi and corresponding uClibc headers
      statfs defines f_type to be U32 which causes perf build breakage
      
      http://git.uclibc.org/uClibc/tree/libc/sysdeps/linux/common-generic/bits/statfs.h
      
        ----------->8---------------
          CC       fs/fs.o
        fs/fs.c: In function 'fs__valid_mount':
        fs/fs.c:82:24: error: comparison between signed and unsigned integer
        expressions [-Werror=sign-compare]
          else if (st_fs.f_type != magic)
                                ^
        cc1: all warnings being treated as errors
        ----------->8---------------
      
      Signed-off-by: default avatarAlexey Brodkin <abrodkin@synopsys.com>
      Acked-by: default avatarJiri Olsa <jolsa@kernel.org>
      Cc: Borislav Petkov <bp@suse.de>
      Cc: Cody P Schafer <dev@codyps.com>
      Cc: Ingo Molnar <mingo@kernel.org>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Vineet Gupta <Vineet.Gupta1@synopsys.com>
      Link: http://lkml.kernel.org/r/1420888254-17504-2-git-send-email-vgupta@synopsys.com
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      db1806ed
    • Arnaldo Carvalho de Melo's avatar
      tools: Remove bitops/hweight usage of bits in tools/perf · 25cd480e
      Arnaldo Carvalho de Melo authored
      
      
      We need to use lib/hweight.c for that, just like we do for lib/rbtree.c,
      so tools need to link hweight.o. For now do it directly, but we need to
      have a tools/lib/lk.a or .so that collects these goodies...
      
      Reported-by: default avatarJan Beulich <JBeulich@suse.com>
      Cc: Adrian Hunter <adrian.hunter@intel.com>
      Cc: Borislav Petkov <bp@suse.de>
      Cc: David Ahern <dsahern@gmail.com>
      Cc: Don Zickus <dzickus@redhat.com>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: Mike Galbraith <efault@gmx.de>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Stephane Eranian <eranian@google.com>
      Link: http://lkml.kernel.org/n/tip-a1e91dx3apzqw5kbdt7ut21s@git.kernel.org
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      25cd480e
    • Namhyung Kim's avatar
      perf machine: Fix __machine__findnew_thread() error path · 260d819e
      Namhyung Kim authored
      
      
      When thread__init_map_groups() fails, a new thread should be removed
      from the rbtree since it's gonna be freed.  Also update last match cache
      only if the function succeeded.
      
      Reported-by: default avatarDavid Ahern <dsahern@gmail.com>
      Signed-off-by: default avatarNamhyung Kim <namhyung@kernel.org>
      Acked-by: default avatarJiri Olsa <jolsa@kernel.org>
      Cc: David Ahern <dsahern@gmail.com>
      Cc: Ingo Molnar <mingo@kernel.org>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      Link: http://lkml.kernel.org/r/1420763892-15535-1-git-send-email-namhyung@kernel.org
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      260d819e
    • Namhyung Kim's avatar
      perf tools: Fix building error in x86_64 when dwarf unwind is on · c6e5e9fb
      Namhyung Kim authored
      
      
      When build with 'make ARCH=x86' and dwarf unwind is on, there is a
      compiling error:
      
         CC       /home/wn/perf/arch/x86/util/unwind-libdw.o
         CC       /home/wn/perf/arch/x86/tests/regs_load.o
       arch/x86/tests/regs_load.S: Assembler messages:
       arch/x86/tests/regs_load.S:65: Error: operand type mismatch for `push'
       arch/x86/tests/regs_load.S:72: Error: operand type mismatch for `pop'
       make[1]: *** [/home/wn/perf/arch/x86/tests/regs_load.o] Error 1
       make[1]: INTERNAL: Exiting with 25 jobserver tokens available; should be 24!
       make: *** [all] Error 2
       ...
      
      Which is caused by incorrectly undefine macro HAVE_ARCH_X86_64_SUPPORT.
      'config/Makefile.arch' tests __x86_64__ only when 'ARCH=x86_64'.
      However, when building x86_64 kernel, ARCH=x86 is valid and commonly
      used. Build systems, such as yocto, uses x86_64 compiler with 'ARCH=x86'
      to build x86_64 perf, which causes mismatching.
      
      As __LP64__ is defined for x86_64 as well, we can consolidate the
      __x86_64__ check to the __LP64__ check and get rid of the IS_X86_64
      IMHO.
      
      (This patch is made by Namhyung Kim when replying my v1 patch:
      
      https://lkml.org/lkml/2015/1/7/17
      
      I modified the code to remove dependency on RAW_ARCH:
      
      https://lkml.org/lkml/2015/1/7/865
      
      Namhyung Kim didn't provide his SOB in his original email. I add
      mine only for my modification.)
      
      Signed-off-by: default avatarNamhyung Kim <namhyung@kernel.org>
      Signed-off-by: default avatarWang Nan <wangnan0@huawei.com>
      Acked-by: default avatarJiri Olsa <jolsa@kernel.org>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: Li Zefan <lizefan@huawei.com>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Link: http://lkml.kernel.org/r/1421029255-23039-1-git-send-email-wangnan0@huawei.com
      [ Namhyung provided his S-o-B on a followup to this patch thread on lkml ]
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      c6e5e9fb
    • Namhyung Kim's avatar
      perf probe: Propagate error code when write(2) failed · 7949ba1f
      Namhyung Kim authored
      
      
      When it failed to write probe commands to the probe_event file in
      debugfs, it needs to propagate the error code properly.  Current code
      blindly uses the return value of the write(2) so it always uses
      -1 (-EPERM) and it might confuse users.
      
      Signed-off-by: default avatarNamhyung Kim <namhyung@kernel.org>
      Acked-by: default avatarMasami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
      Cc: David Ahern <dsahern@gmail.com>
      Cc: Ingo Molnar <mingo@kernel.org>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      Link: http://lkml.kernel.org/r/1420886028-15135-4-git-send-email-namhyung@kernel.org
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      7949ba1f
    • Linus Torvalds's avatar
      Merge tag 'char-misc-3.19-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc · 7ad4b4ae
      Linus Torvalds authored
      Pull char/misc driver fixes from Greg KH:
       "Here are three small driver fixes for reported issues for 3.19-rc5.
      
        All of these have been in linux-next for a while with no reported
        problems"
      
      * tag 'char-misc-3.19-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc:
        mcb: mcb-pci: Only remap the 1st 0x200 bytes of BAR 0
        mei: add ABI documentation for fw_status exported through sysfs
        mei: clean reset bit before reset
      7ad4b4ae
    • Linus Torvalds's avatar
      Merge tag 'driver-core-3.19-rc5' of... · 62b15300
      Linus Torvalds authored
      Merge tag 'driver-core-3.19-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core
      
      Pull driver core fix from Greg KH:
       "Here is one kernfs fix for a reported issue for 3.19-rc5.
      
        It has been in linux-next for a while"
      
      * tag 'driver-core-3.19-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core:
        kernfs: Fix kernfs_name_compare
      62b15300
    • Linus Torvalds's avatar
      Merge tag 'tty-3.19-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty · 7b78de8c
      Linus Torvalds authored
      Pull tty/serial driver fixes from Greg KH:
       "Here are some tty and serial driver fixes for 3.19-rc5 that resolve
        some reported issues, and add a new device id to the 8250 serial port
        driver.
      
        All have been in linux-next with no reported problems"
      
      * tag 'tty-3.19-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty:
        serial: samsung: Add the support for Exynos5433 SoC
        Revert "tty: Fix pty master poll() after slave closes v2"
        tty: Prevent hw state corruption in exclusive mode reopen
        tty: Add support for the WCH384 4S multi-IO card
        serial: fix parisc boot hang
      7b78de8c
    • Linus Torvalds's avatar
      Merge tag 'staging-3.19-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging · 937102fe
      Linus Torvalds authored
      Pull staging driver fixes from Greg KH:
       "Here are 6 staging driver fixes for 3.19-rc5.
      
        They fix some reported issues with some IIO drivers, as well as some
        issues with the vt6655 wireless driver.
      
        All have been in linux-next for a while"
      
      * tag 'staging-3.19-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging:
        staging: vt6655: fix sparse warning: argument type
        staging: vt6655: Fix loss of distant/weak access points on channel change.
        staging: vt6655: vnt_tx_packet Fix corrupted tx packets.
        staging: vt6655: fix sparse warnings: incorrect argument type
        iio: iio: Fix iio_channel_read return if channel havn't info
        iio: ad799x: Fix ad7991/ad7995/ad7999 config setup
      937102fe