Patches contributed by Eötvös Lorand University
commit 0fdf13606b67f830559abdaad15980c7f4f05ec4
Merge: d9d572a9c019 cf4db2597ae9
Author: Ingo Molnar <mingo@elte.hu>
Date: Fri Oct 15 06:12:28 2010 +0200
Merge branch 'tip/perf/recordmcount-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into perf/core
commit d9d572a9c0195486e3baf0d8d6a710196a707335
Merge: 3cba11d32bb4 ebc8827f7595
Author: Ingo Molnar <mingo@elte.hu>
Date: Fri Oct 15 05:12:45 2010 +0200
Merge branch 'perf/core' of git://git.kernel.org/pub/scm/linux/kernel/git/frederic/random-tracing into perf/core
commit ed859ed3b0f9893c6bce3708e8928341c15699b9
Merge: a8027073eb12 53eeb64e8089
Author: Ingo Molnar <mingo@elte.hu>
Date: Thu Oct 14 09:11:43 2010 +0200
Merge branch 'linus' into sched/core
Merge reason: update from -rc5 to -almost-final
Signed-off-by: Ingo Molnar <mingo@elte.hu>
commit 1efeb08d7dd32c0fbd4b784ea9303b53d345bfd0
Author: Ingo Molnar <mingo@elte.hu>
Date: Thu Oct 14 08:09:42 2010 +0200
perf, ARM: Fix sysfs bits removal build failure
Fix this linux-next build failure that Stephen reported:
arch/arm/kernel/perf_event.c: In function 'armpmu_event_init':
arch/arm/kernel/perf_event.c:543: error: request for member 'num_events' in something not a structure or union
Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: paulus <paulus@samba.org>
LKML-Reference: <20101014164925.4fa16b75.sfr@canb.auug.org.au>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
diff --git a/arch/arm/kernel/perf_event.c b/arch/arm/kernel/perf_event.c
index ad19c276b10f..55addc85eaa7 100644
--- a/arch/arm/kernel/perf_event.c
+++ b/arch/arm/kernel/perf_event.c
@@ -534,7 +534,7 @@ static int armpmu_event_init(struct perf_event *event)
event->destroy = hw_perf_event_destroy;
if (!atomic_inc_not_zero(&active_events)) {
- if (atomic_read(&active_events) > armpmu.num_events) {
+ if (atomic_read(&active_events) > armpmu->num_events) {
atomic_dec(&active_events);
return -ENOSPC;
}
commit 3d8a1a6a8af910cc2da566080d111e062a124ba6
Merge: 1b13fe6a6e99 5d0d71569e67
Author: Ingo Molnar <mingo@elte.hu>
Date: Wed Oct 13 15:44:24 2010 +0200
Merge branch 'amd-iommu/2.6.37' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/linux-2.6-iommu into core/iommu
commit 7cd2541cf2395962daf98ec32a141aba3398a9b2
Merge: c62f981f9309 cb655d0f3d57
Author: Ingo Molnar <mingo@elte.hu>
Date: Fri Oct 8 10:46:27 2010 +0200
Merge commit 'v2.6.36-rc7' into perf/core
Conflicts:
arch/x86/kernel/module.c
Merge reason: Resolve the conflict, pick up fixes.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
diff --cc arch/x86/kernel/module.c
index 5399f58de7ed,1c355c550960..8f2956091735
--- a/arch/x86/kernel/module.c
+++ b/arch/x86/kernel/module.c
@@@ -239,10 -239,7 +239,10 @@@ int module_finalize(const Elf_Ehdr *hdr
apply_paravirt(pseg, pseg + para->sh_size);
}
+ /* make jump label nops */
+ jump_label_apply_nops(me);
+
- return module_bug_finalize(hdr, sechdrs, me);
+ return 0;
}
void module_arch_cleanup(struct module *mod)
commit 153db80f8cf74e8700cac96305b6c0b92918f17c
Merge: 5fd03ddab7fd cb655d0f3d57
Author: Ingo Molnar <mingo@elte.hu>
Date: Fri Oct 8 09:14:51 2010 +0200
Merge commit 'v2.6.36-rc7' into core/memblock
Merge reason: Update from -rc3 to -rc7.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
commit 556ef63255f1a6f82910a637c4164dbf7d3d1af2
Merge: d4f8f217b8a5 cb655d0f3d57
Author: Ingo Molnar <mingo@elte.hu>
Date: Thu Oct 7 09:43:38 2010 +0200
Merge commit 'v2.6.36-rc7' into core/rcu
Merge reason: Update from -rc3 to -rc7.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
commit d4f8f217b8a5d5bd02af979650418dca4caec472
Merge: 2dfbf4dfbe47 773e3f93577f
Author: Ingo Molnar <mingo@elte.hu>
Date: Thu Oct 7 09:43:11 2010 +0200
Merge branch 'rcu/urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-2.6-rcu into core/rcu
commit 00e8976200665eec2fa9264d61885b4d1384d4f0
Merge: 540804b5c520 0f940cb7d970
Author: Ingo Molnar <mingo@elte.hu>
Date: Tue Oct 5 09:47:14 2010 +0200
Merge branch 'perf/urgent' into perf/core
Conflicts:
tools/perf/util/ui/browsers/hists.c
Merge reason: fix the conflict and merge in changes for dependent patch.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
diff --cc arch/x86/kernel/cpu/perf_event.c
index 0fb17050360f,03a5b0385ad6..6526a86616a7
--- a/arch/x86/kernel/cpu/perf_event.c
+++ b/arch/x86/kernel/cpu/perf_event.c
@@@ -1019,23 -1005,23 +1020,24 @@@ static void x86_pmu_start(struct perf_e
struct cpu_hw_events *cpuc = &__get_cpu_var(cpu_hw_events);
int idx = event->hw.idx;
- if (idx == -1)
- return -EAGAIN;
+ if (WARN_ON_ONCE(!(event->hw.state & PERF_HES_STOPPED)))
+ return;
+
+ if (WARN_ON_ONCE(idx == -1))
+ return;
+
+ if (flags & PERF_EF_RELOAD) {
+ WARN_ON_ONCE(!(event->hw.state & PERF_HES_UPTODATE));
+ x86_perf_event_set_period(event);
+ }
+
+ event->hw.state = 0;
- x86_perf_event_set_period(event);
cpuc->events[idx] = event;
__set_bit(idx, cpuc->active_mask);
+ __set_bit(idx, cpuc->running);
x86_pmu.enable(event);
perf_event_update_userpage(event);
-
- return 0;
-}
-
-static void x86_pmu_unthrottle(struct perf_event *event)
-{
- int ret = x86_pmu_start(event);
- WARN_ON_ONCE(ret);
}
void perf_event_print_debug(void)