1. 13 May, 2014 1 commit
  2. 06 May, 2014 1 commit
    • Arnd Bergmann's avatar
      genirq: Provide irq_force_affinity fallback for non-SMP · 4c88d7f9
      Arnd Bergmann authored
      Patch 01f8fa4f "genirq: Allow forcing cpu affinity of interrupts" added
      an irq_force_affinity() function, and 30ccf03b
       "clocksource: Exynos_mct:
      Use irq_force_affinity() in cpu bringup" subsequently uses it. However, the
      driver can be used with CONFIG_SMP disabled, but the function declaration
      is only available for CONFIG_SMP, leading to this build error:
      drivers/clocksource/exynos_mct.c:431:3: error: implicit declaration of function 'irq_force_affinity' [-Werror=implicit-function-declaration]
         irq_force_affinity(mct_irqs[MCT_L0_IRQ + cpu], cpumask_of(cpu));
      This patch introduces a dummy helper function for the non-SMP case
      that always returns success, to get rid of the build error.
      Since the patches causing the problem are marked for stable backports,
      this one should be as well.
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Cc: Krzysztof Kozlowski <k.kozlowski@samsung.com>
      Acked-by: default avatarKukjin Kim <kgene.kim@samsung.com>
      Cc: stable@vger.kernel.org
      Link: http://lkml.kernel.org/r/5619084.0zmrrIUZLV@wuerfel
      Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
  3. 03 May, 2014 6 commits
    • Linus Torvalds's avatar
      Merge branch 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 0384dcae
      Linus Torvalds authored
      Pull irq fixes from Thomas Gleixner:
       "This udpate delivers:
         - A fix for dynamic interrupt allocation on x86 which is required to
           exclude the GSI interrupts from the dynamic allocatable range.
           This was detected with the newfangled tablet SoCs which have GPIOs
           and therefor allocate a range of interrupts.  The MSI allocations
           already excluded the GSI range, so we never noticed before.
         - The last missing set_irq_affinity() repair, which was delayed due
           to testing issues
         - A few bug fixes for the armada SoC interrupt controller
         - A memory allocation fix for the TI crossbar interrupt controller
         - A trivial kernel-doc warning fix"
      * 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        irqchip: irq-crossbar: Not allocating enough memory
        irqchip: armanda: Sanitize set_irq_affinity()
        genirq: x86: Ensure that dynamic irq allocation does not conflict
        linux/interrupt.h: fix new kernel-doc warnings
        irqchip: armada-370-xp: Fix releasing of MSIs
        irqchip: armada-370-xp: implement the ->check_device() msi_chip operation
        irqchip: armada-370-xp: fix invalid cast of signed value into unsigned variable
    • Linus Torvalds's avatar
      Merge branch 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 98facf0e
      Linus Torvalds authored
      Pull timer fixes from Thomas Gleixner:
       "This update brings along:
         - Two fixes for long standing bugs in the hrtimer code, one which
           prevents remote enqueuing and the other preventing arbitrary delays
           after a interrupt hang was detected
         - A fix in the timer wheel which prevents math overflow
         - A fix for a long standing issue with the architected ARM timer
           related to the C3STOP mechanism.
         - A trivial compile fix for nspire SoC clocksource"
      * 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        timer: Prevent overflow in apply_slack
        hrtimer: Prevent remote enqueue of leftmost timers
        hrtimer: Prevent all reprogramming if hang detected
        clocksource: nspire: Fix compiler warning
        clocksource: arch_arm_timer: Fix age-old arch timer C3STOP detection issue
    • Linus Torvalds's avatar
      Merge tag 'trace-fixes-v3.15-rc3' of... · 00622e61
      Linus Torvalds authored
      Merge tag 'trace-fixes-v3.15-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace
      Pull tracing fix from Steven Rostedt:
       "This is a small fix where the trigger code used the wrong
        rcu_dereference().  It required rcu_dereference_sched() instead of the
        normal rcu_dereference().  It produces a nasty RCU lockdep splat due
        to the incorrect rcu notation"
      Acked-by: default avatarPaul E. McKenney <paulmck@linux.vnet.ibm.com>
      * tag 'trace-fixes-v3.15-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace:
        tracing: Use rcu_dereference_sched() for trace event triggers
    • Steven Rostedt (Red Hat)'s avatar
      tracing: Use rcu_dereference_sched() for trace event triggers · 561a4fe8
      Steven Rostedt (Red Hat) authored
      As trace event triggers are now part of the mainline kernel, I added
      my trace event trigger tests to my test suite I run on all my kernels.
      Now these tests get run under different config options, and one of
      those options is CONFIG_PROVE_RCU, which checks under lockdep that
      the rcu locking primitives are being used correctly. This triggered
      the following splat:
      [ INFO: suspicious RCU usage. ]
      3.15.0-rc2-test+ #11 Not tainted
      kernel/trace/trace_events_trigger.c:80 suspicious rcu_dereference_check() usage!
      other info that might help us debug this:
      rcu_scheduler_active = 1, debug_locks = 0
      4 locks held by swapper/1/0:
       #0:  ((&(&j_cdbs->work)->timer)){..-...}, at: [<ffffffff8104d2cc>] call_timer_fn+0x5/0x1be
       #1:  (&(&pool->lock)->rlock){-.-...}, at: [<ffffffff81059856>] __queue_work+0x140/0x283
       #2:  (&p->pi_lock){-.-.-.}, at: [<ffffffff8106e961>] try_to_wake_up+0x2e/0x1e8
       #3:  (&rq->lock){-.-.-.}, at: [<ffffffff8106ead3>] try_to_wake_up+0x1a0/0x1e8
      stack backtrace:
      CPU: 1 PID: 0 Comm: swapper/1 Not tainted 3.15.0-rc2-test+ #11
      Hardware name:                  /DG965MQ, BIOS MQ96510J.86A.0372.2006.0605.1717 06/05/2006
       0000000000000001 ffff88007e083b98 ffffffff819f53a5 0000000000000006
       ffff88007b0942c0 ffff88007e083bc8 ffffffff81081307 ffff88007ad96d20
       0000000000000000 ffff88007af2d840 ffff88007b2e701c ffff88007e083c18
      Call Trace:
       <IRQ>  [<ffffffff819f53a5>] dump_stack+0x4f/0x7c
       [<ffffffff81081307>] lockdep_rcu_suspicious+0x107/0x110
       [<ffffffff810ee51c>] event_triggers_call+0x99/0x108
       [<ffffffff810e8174>] ftrace_event_buffer_commit+0x42/0xa4
       [<ffffffff8106aadc>] ftrace_raw_event_sched_wakeup_template+0x71/0x7c
       [<ffffffff8106bcbf>] ttwu_do_wakeup+0x7f/0xff
       [<ffffffff8106bd9b>] ttwu_do_activate.constprop.126+0x5c/0x61
       [<ffffffff8106eadf>] try_to_wake_up+0x1ac/0x1e8
       [<ffffffff8106eb77>] wake_up_process+0x36/0x3b
       [<ffffffff810575cc>] wake_up_worker+0x24/0x26
       [<ffffffff810578bc>] insert_work+0x5c/0x65
       [<ffffffff81059982>] __queue_work+0x26c/0x283
       [<ffffffff81059999>] ? __queue_work+0x283/0x283
       [<ffffffff810599b7>] delayed_work_timer_fn+0x1e/0x20
       [<ffffffff8104d3a6>] call_timer_fn+0xdf/0x1be^M
       [<ffffffff8104d2cc>] ? call_timer_fn+0x5/0x1be
       [<ffffffff81059999>] ? __queue_work+0x283/0x283
       [<ffffffff8104d823>] run_timer_softirq+0x1a4/0x22f^M
       [<ffffffff8104696d>] __do_softirq+0x17b/0x31b^M
       [<ffffffff81046d03>] irq_exit+0x42/0x97
       [<ffffffff81a08db6>] smp_apic_timer_interrupt+0x37/0x44
       [<ffffffff81a07a2f>] apic_timer_interrupt+0x6f/0x80
       <EOI>  [<ffffffff8100a5d8>] ? default_idle+0x21/0x32
       [<ffffffff8100a5d6>] ? default_idle+0x1f/0x32
       [<ffffffff8100ac10>] arch_cpu_idle+0xf/0x11
       [<ffffffff8107b3a4>] cpu_startup_entry+0x1a3/0x213
       [<ffffffff8102a23c>] start_secondary+0x212/0x219
      The cause is that the triggers are protected by rcu_read_lock_sched() but
      the data is dereferenced with rcu_dereference() which expects it to
      be protected with rcu_read_lock(). The proper reference should be
      Cc: Tom Zanussi <tom.zanussi@linux.intel.com>
      Cc: stable@vger.kernel.org # 3.14+
      Signed-off-by: default avatarSteven Rostedt <rostedt@goodmis.org>
    • Linus Torvalds's avatar
      Merge tag 'pm+acpi-3.15-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 6c6ca9c2
      Linus Torvalds authored
      Pull ACPI and power management fixes from Rafael Wysocki:
       "A bunch of regression fixes this time.  They fix two regressions in
        the PNP subsystem, one in the ACPI processor driver and one in the
        ACPI EC driver, four cpufreq driver regressions and an unrelated bug
        in one of the drivers.  The regressions are recent or introduced in
         - There are two bugs in the ACPI PNP core that cause errors to be
           returned if optional ACPI methods are not present.  After an ACPI
           core change made in 3.14 one of those errors leads to serial port
           suspend failures on some systems.  Fix from Rafael J Wysocki.
         - A recently added PNP quirk related to Intel chipsets intorduced a
           build error in unusual configurations (PNP without PCI).  Fix from
           Bjorn Helgaas.
         - An ACPI EC workaround related to system suspend on Samsung machines
           added in 3.14 introduced a race causing some valid EC events to be
           discarded.  Fix from Kieran Clancy.
         - The acpi-cpufreq driver fails to load on some systems after a 3.14
           commit related to APIC ID parsing that overlooked one corner case.
           Fix from Lan Tianyu.
         - Fix for a recently introduced build problem in the ppc-corenet
           cpufreq driver from Tim Gardner.
         - A recent cpufreq core change to ensure serialization of frequency
           transitions for drivers with a ->target_index() callback overlooked
           the fact that some of those drivers had been doing operations
           introduced by it into the core already by themselves.  That
           resulted in a mess in which the core and the drivers try to do the
           same thing and block each other which leads to deadlocks.  Fixes
           for the powernow-k7, powernow-k6, and longhaul cpufreq drivers from
           Srivatsa S Bhat.
         - Fix for a computational error in the powernow-k6 cpufreq driver
           from Srivatsa S Bhat"
      * tag 'pm+acpi-3.15-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        ACPI / processor: Fix failure of loading acpi-cpufreq driver
        PNP / ACPI: Do not return errors if _DIS or _SRS are not present
        PNP: Fix compile error in quirks.c
        ACPI / EC: Process rather than discard events in acpi_ec_clear
        cpufreq: ppc-corenet-cpufreq: Fix __udivdi3 modpost error
        cpufreq: powernow-k7: Fix double invocation of cpufreq_freq_transition_begin/end
        cpufreq: powernow-k6: Fix double invocation of cpufreq_freq_transition_begin/end
        cpufreq: powernow-k6: Fix incorrect comparison with max_multipler
        cpufreq: longhaul: Fix double invocation of cpufreq_freq_transition_begin/end
    • Linus Torvalds's avatar
      Merge tag 'dt-for-linus' of git://git.secretlab.ca/git/linux · e981e795
      Linus Torvalds authored
      Pull driver core deferred probe fix from Grant Likely:
       "Drivercore race condition fix (exposed by devicetree)
        This branch fixes a bug where a device can get stuck in the deferred
        list even though all its dependencies are met.  The bug has existed
        for a long time, but new platform conversions to device tree have
        exposed it.  This patch is needed to get those platforms working.
        This was the pending bug fix I mentioned in my previous pull request.
        Normally this would go through Greg's tree seeing that it is a
        drivercore change, but devicetree exposes the problem.  I've discussed
        with Greg and he okayed me asking you to pull directly"
      * tag 'dt-for-linus' of git://git.secretlab.ca/git/linux:
        drivercore: deferral race condition fix
  4. 02 May, 2014 8 commits
  5. 01 May, 2014 14 commits
  6. 30 Apr, 2014 10 commits
    • Lan Tianyu's avatar
      ACPI / processor: Fix failure of loading acpi-cpufreq driver · 4985c32e
      Lan Tianyu authored
      According commit d640113f (ACPI: processor: fix acpi_get_cpuid for UP
      processor),  BIOS may not provide _MAT or MADT tables and acpi_get_apicid()
      always returns -1. For these cases, original code will pass apic_id with
      vaule of -1 to acpi_map_cpuid() and it will check the acpi_id. If acpi_id
      is equal to zero, ignores apic_id and return zero for CPU0.
      Commit b981513f (ACPI / scan: bail out early if failed to parse APIC
      ID for CPU) changed the behavior. Return ENODEV when find apic_id is
      less than zero after calling acpi_get_apicid(). This causes acpi-cpufreq
      driver fails to be loaded on some machines. This patch is to fix it.
      Fixes: b981513f (ACPI / scan: bail out early if failed to parse APIC ID for CPU)
      References: https://bugzilla.kernel.org/show_bug.cgi?id=73781
      Cc: 3.14+ <stable@vger.kernel.org> # 3.14+
      Reported-and-tested-by: default avatarKATO Hiroshi <katoh@mikage.ne.jp>
      Reported-and-tested-by: default avatarStuart Foster <smf.linux@ntlworld.com>
      Signed-off-by: default avatarLan Tianyu <tianyu.lan@intel.com>
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
    • Rafael J. Wysocki's avatar
      PNP / ACPI: Do not return errors if _DIS or _SRS are not present · a8d22396
      Rafael J. Wysocki authored
      The ACPI PNP subsystem returns errors from pnpacpi_set_resources()
      and pnpacpi_disable_resources() if the _SRS or _DIS methods are not
      present, respectively, but it should not do that, because those
      methods are optional.  For this reason, modify pnpacpi_set_resources()
      and pnpacpi_disable_resources(), respectively, to ignore missing _SRS
      or _DIS.
      This problem has been uncovered by commit 202317a5 (ACPI / scan:
      Add acpi_device objects for all device nodes in the namespace) and
      manifested itself by causing serial port suspend to fail on some
      Fixes: 202317a5 (ACPI / scan: Add acpi_device objects for all device nodes in the namespace)
      References: https://bugzilla.kernel.org/show_bug.cgi?id=74371
      Reported-by: default avatarwxg4net <wxg4net@gmail.com>
      Reported-and-tested-by: default avatar <nonproffessional@gmail.com>
      Cc: 3.14+ <stable@vger.kernel.org> # 3.14+
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
    • Paolo Bonzini's avatar
      Merge tag 'kvm-arm-for-3.15-rc4' of... · a5a5aef4
      Paolo Bonzini authored
      Merge tag 'kvm-arm-for-3.15-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm into kvm-master
      First round of KVM/ARM Fixes for 3.15
      Includes vgic fixes, a possible kernel corruption bug due to
      misalignment of pages and disabling of KVM in KConfig on big-endian
      systems, because the last one breaks the build.
    • Vineet Gupta's avatar
      ARC: !PREEMPT: Ensure Return to kernel mode is IRQ safe · 8aa9e85a
      Vineet Gupta authored
      There was a very small race window where resume to kernel mode from a
      Exception Path (or pure kernel mode which is true for most of ARC
      exceptions anyways), was not disabling interrupts in restore_regs,
      clobbering the exception regs
      Anton found the culprit call flow (after many sleepless nights)
      | 1. we got a Trap from user land
      | 2. started to service it.
      | 3. While doing some stuff on user-land memory (I think it is padzero()),
      |     we got a DataTlbMiss
      | 4. On return from it we are taking "resume_kernel_mode" path
      | 5. NEED_RESHED is not set, so we go to "return from exception" path in
      |     restore regs.
      | 6. there seems to be IRQ happening
      Signed-off-by: default avatarVineet Gupta <vgupta@synopsys.com>
      Cc: <stable@vger.kernel.org>   #3.10, 3.12, 3.13, 3.14
      Cc: Anton Kolesov <Anton.Kolesov@synopsys.com>
      Cc: Francois Bedard <Francois.Bedard@synopsys.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    • Linus Torvalds's avatar
      Merge tag 'sound-3.15-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · 71dc96e3
      Linus Torvalds authored
      Pull sound fixes from Takashi Iwai:
       "A few collections of small eggs that have been gathered during the
        Easter holidays.  Mostly small ASoC fixes, with a HD-audio quirk and a
        workaround for Nvidia controller"
      * tag 'sound-3.15-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
        ALSA: hda - Suppress CORBRP clear on Nvidia controller chips
        ALSA: hda - add headset mic detect quirk for a Dell laptop
        ASoC: jz4740: Remove Makefile entry for removed file
        ASoC: Intel: Fix audio crash due to negative address offset
        ASoC: dapm: Fix widget double free with auto-disable DAPM kcontrol
        ASoC: Intel: Fix incorrect sizeof() in sst_hsw_stream_get_volume()
        ASoC: Intel: some incorrect sizeof() usages
        ASoC: cs42l73: Convert to use devm_gpio_request_one
        ASoC: cs42l52: Convert to use devm_gpio_request_one
        ASoC: tlv320aic31xx: document that the regulators are mandatory
        ASoC: fsl_spdif: Fix wrong OFFSET of STC_SYSCLK_DIV
        ASoC: alc5623: Fix regmap endianness
        ASoC: tlv320aic3x: fix shared reset pin for DT
        ASoC: rsnd: fix clock prepare/unprepare
    • Jiri Olsa's avatar
      perf tests x86: Fix stack map lookup in dwarf unwind test · 9a126728
      Jiri Olsa authored
      Previous commit 'perf x86: Fix perf to use non-executable stack, again'
      moved stack map into MAP__VARIABLE map type again. Fixing the dwarf
      unwind test stack map lookup appropriately.
      Cc: Corey Ashford <cjashfor@linux.vnet.ibm.com>
      Cc: David Ahern <dsahern@gmail.com>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      Cc: Ingo Molnar <mingo@kernel.org>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      Cc: Arnaldo Carvalho de Melo <acme@kernel.org>
      Cc: Jean Pihet <jean.pihet@linaro.org>
      Link: http://lkml.kernel.org/n/tip-ttzyhbe4zls24z7ednkmhvxl@git.kernel.org
      Signed-off-by: default avatarJiri Olsa <jolsa@kernel.org>
    • Mathias Krause's avatar
      perf x86: Fix perf to use non-executable stack, again · 6392b4eb
      Mathias Krause authored
      arch/x86/tests/regs_load.S is missing the linker note about the stack
      requirements, therefore making the linker fall back to an executable
      stack. As this object gets linked against the final perf binary, it'll
      needlessly end up with an executable stack. Fix this by adding the
      appropriate linker note.
      Also add a global linker flag to prevent future regressions, as
      suggested by Jiri. This way perf won't get an executable stack even if
      we fail to add the .GNU-stack linker note to future assembler files.
      Though, doing so might create regressions the other way around, when
      (statically) linking against libraries needing an executable stack.
      But, apparently, regressing in that direction is wanted as it is an
      indicator of poor code quality -- or just missing linker notes.
      Fixes: 3c8b06f9
       ("perf tests x86: Introduce perf_regs_load function")
      Signed-off-by: default avatarMathias Krause <minipli@googlemail.com>
      Acked-by: default avatarIngo Molnar <mingo@kernel.org>
      Cc: Arnaldo Carvalho de Melo <acme@kernel.org>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      Link: http://lkml.kernel.org/r/1398617466-22749-1-git-send-email-minipli@googlemail.com
      Signed-off-by: default avatarJiri Olsa <jolsa@kernel.org>
    • Xia Kaixu's avatar
      perf tools: Remove extra '/' character in events file path · 603940b6
      Xia Kaixu authored
      The array debugfs_known_mountpoints[] will cause extra '/'
      character output.
      Remove it.
      $ perf probe -l
      /sys/kernel/debug//tracing/uprobe_events file does not exist -
      please rebuild kernel with CONFIG_UPROBE_EVENTS.
      $ perf probe -l
      /sys/kernel/debug/tracing/uprobe_events file does not exist -
      please rebuild kernel with CONFIG_UPROBE_EVENTS.
      Signed-off-by: default avatarXia Kaixu <xiakaixu@huawei.com>
      Acked-by: default avatarNamhyung Kim <namhyung@kernel.org>
      Link: http://lkml.kernel.org/r/535B6660.2060001@huawei.com
      Signed-off-by: default avatarJiri Olsa <jolsa@kernel.org>
    • Richard Yao's avatar
      perf machine: Search for modules in %s/lib/modules/%s · 61d4290c
      Richard Yao authored
      Modules installed outside of the kernel's build system should go into
      "%s/lib/modules/%s/extra", but at present, perf will only look at them
      when they are in "%s/lib/modules/%s/kernel". Lets encourage good
      citizenship by relaxing this requirement to "%s/lib/modules/%s". This
      way open source modules that are out-of-tree have no incentive to start
      populating a directory reserved for in-kernel modules and I can stop
      hex-editing my system's perf binary when profiling OSS out-of-tree
      Feedback from Namhyung Kim correctly revealed that the hex-edits that I
      had been doing meant that perf was also traversing the build and source
      symlinks in %s/lib/modules/%s. That is undesireable, so we explicitly
      exclude them from traversal with a minor tweak to the traversal routine.
      Signed-off-by: default avatarRichard Yao <ryao@gentoo.org>
      Acked-by: default avatarNamhyung kim <namhyung@kernel.org>
      Link: http://lkml.kernel.org/r/1398532675-13684-1-git-send-email-ryao@gentoo.org
      Signed-off-by: default avatarJiri Olsa <jolsa@kernel.org>
    • Jiri Olsa's avatar
      perf tests: Add static build make test · 611ec127
      Jiri Olsa authored
      Adding test for building static perf build into the automated
      suite. Also available via following commands:
        $ make -f tests/make make_static
        - make_static: cd . && make -f Makefile DESTDIR=/tmp/tmp.7u5MlB4njo LDFLAGS=-static
        $ make -f tests/make make_static_O
        - make_static_O: cd . && make -f Makefile O=/tmp/tmp.Ay6r3wEmtX DESTDIR=/tmp/tmp.vK0KQwO0Vi LDFLAGS=-static
      Acked-by: default avatarDavid Ahern <dsahern@gmail.com>
      Cc: Arnaldo Carvalho de Melo <acme@kernel.org>
      Cc: Corey Ashford <cjashfor@linux.vnet.ibm.com>
      Cc: David Ahern <dsahern@gmail.com>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      Cc: Ingo Molnar <mingo@kernel.org>
      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/1398760413-7574-1-git-send-email-jolsa@kernel.org
      Signed-off-by: default avatarJiri Olsa <jolsa@kernel.org>