Patches contributed by Eötvös Lorand University
commit d48b0e173715f678698d3678fefd40f2893ce798
Author: Ingo Molnar <mingo@elte.hu>
Date: Thu Oct 6 14:20:27 2011 +0200
x86, nmi, drivers: Fix nmi splitup build bug
nmi.c needs an #include <linux/mca.h>:
arch/x86/kernel/nmi.c: In function ‘unknown_nmi_error’:
arch/x86/kernel/nmi.c:286:6: error: ‘MCA_bus’ undeclared (first use in this function)
arch/x86/kernel/nmi.c:286:6: note: each undeclared identifier is reported only once for each function it appears in
Another one is the hpwdt driver:
drivers/watchdog/hpwdt.c:507:9: error: ‘NMI_DONE’ undeclared (first use in this function)
Signed-off-by: Ingo Molnar <mingo@elte.hu>
diff --git a/arch/x86/kernel/nmi.c b/arch/x86/kernel/nmi.c
index d0eaa31b9f37..7ec5bd140b87 100644
--- a/arch/x86/kernel/nmi.c
+++ b/arch/x86/kernel/nmi.c
@@ -18,6 +18,8 @@
#include <linux/hardirq.h>
#include <linux/slab.h>
+#include <linux/mca.h>
+
#if defined(CONFIG_EDAC)
#include <linux/edac.h>
#endif
diff --git a/drivers/watchdog/hpwdt.c b/drivers/watchdog/hpwdt.c
index 7e7feac05221..3774c9b8dac9 100644
--- a/drivers/watchdog/hpwdt.c
+++ b/drivers/watchdog/hpwdt.c
@@ -35,6 +35,7 @@
#include <linux/notifier.h>
#include <asm/cacheflush.h>
#endif /* CONFIG_HPWDT_NMI_DECODING */
+#include <asm/nmi.h>
#define HPWDT_VERSION "1.3.0"
#define SECS_TO_TICKS(secs) ((secs) * 1000 / 128)
commit 7b4f86ac057821740e8499afde6faf9c7b08f69f
Merge: 9d0140202345 9aaef96f61d9
Author: Ingo Molnar <mingo@elte.hu>
Date: Thu Oct 6 12:54:36 2011 +0200
Merge branch 'ras' of git://amd64.org/linux/bp into perf/core
commit 9d014020234525ae100879d71078a4bcb4849195
Merge: 92e51938f5d0 976d167615b6
Author: Ingo Molnar <mingo@elte.hu>
Date: Thu Oct 6 12:48:57 2011 +0200
Merge commit 'v3.1-rc9' into perf/core
Merge reason: pick up latest fixes.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
commit 9243a169acb9df9c63632fb7d5464359a107877a
Merge: 908a3283728d 976d167615b6
Author: Ingo Molnar <mingo@elte.hu>
Date: Thu Oct 6 12:43:28 2011 +0200
Merge commit 'v3.1-rc9' into sched/core
Merge reason: pick up latest fixes.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
commit 2c30245c65e8ebc3080b75ce65572ab8140bad0b
Author: Ingo Molnar <mingo@elte.hu>
Date: Tue Oct 4 12:43:11 2011 +0200
llist: Remove the platform-dependent NMI checks
Remove the nmi() checks spread around the code. in_nmi() is not available
on every architecture and it's a pretty obscure and ugly check in any case.
Cc: Huang Ying <ying.huang@intel.com>
Cc: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Link: http://lkml.kernel.org/r/1315461646-1379-3-git-send-email-ying.huang@intel.com
Signed-off-by: Ingo Molnar <mingo@elte.hu>
diff --git a/include/linux/llist.h b/include/linux/llist.h
index 3eccdfd66096..65fca1cbf514 100644
--- a/include/linux/llist.h
+++ b/include/linux/llist.h
@@ -35,8 +35,8 @@
*
* The basic atomic operation of this list is cmpxchg on long. On
* architectures that don't have NMI-safe cmpxchg implementation, the
- * list can NOT be used in NMI handler. So code uses the list in NMI
- * handler should depend on CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG.
+ * list can NOT be used in NMI handlers. So code that uses the list in
+ * an NMI handler should depend on CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG.
*
* Copyright 2010,2011 Intel Corp.
* Author: Huang Ying <ying.huang@intel.com>
@@ -147,10 +147,6 @@ static inline void llist_add(struct llist_node *new, struct llist_head *head)
{
struct llist_node *entry, *old_entry;
-#ifndef CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG
- BUG_ON(in_nmi());
-#endif
-
entry = head->first;
do {
old_entry = entry;
@@ -169,10 +165,6 @@ static inline void llist_add(struct llist_node *new, struct llist_head *head)
*/
static inline struct llist_node *llist_del_all(struct llist_head *head)
{
-#ifndef CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG
- BUG_ON(in_nmi());
-#endif
-
return xchg(&head->first, NULL);
}
#endif /* LLIST_H */
diff --git a/lib/llist.c b/lib/llist.c
index 3e3fa9139c41..b445f2c8596a 100644
--- a/lib/llist.c
+++ b/lib/llist.c
@@ -3,8 +3,8 @@
*
* The basic atomic operation of this list is cmpxchg on long. On
* architectures that don't have NMI-safe cmpxchg implementation, the
- * list can NOT be used in NMI handler. So code uses the list in NMI
- * handler should depend on CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG.
+ * list can NOT be used in NMI handlers. So code that uses the list in
+ * an NMI handler should depend on CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG.
*
* Copyright 2010,2011 Intel Corp.
* Author: Huang Ying <ying.huang@intel.com>
@@ -40,10 +40,6 @@ void llist_add_batch(struct llist_node *new_first, struct llist_node *new_last,
{
struct llist_node *entry, *old_entry;
-#ifndef CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG
- BUG_ON(in_nmi());
-#endif
-
entry = head->first;
do {
old_entry = entry;
@@ -71,10 +67,6 @@ struct llist_node *llist_del_first(struct llist_head *head)
{
struct llist_node *entry, *old_entry, *next;
-#ifndef CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG
- BUG_ON(in_nmi());
-#endif
-
entry = head->first;
do {
if (entry == NULL)
commit 22f92bacbeea24b20e447444c28e7cad9f1ac3f8
Merge: 557ab425429a 0f86267b79bc
Author: Ingo Molnar <mingo@elte.hu>
Date: Tue Oct 4 11:08:16 2011 +0200
Merge branch 'linus' into sched/core
Merge reason: pick up the latest fixes.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
commit 048b718029033af117870d3da47da12995be14a3
Merge: 47ea91b4052d afe24b122eb6
Author: Ingo Molnar <mingo@elte.hu>
Date: Sat Oct 1 14:21:36 2011 +0200
Merge branch 'rcu/next' of git://github.com/paulmckrcu/linux into core/rcu
commit 9d3ec7a0c41d010153c9d20577cb1bcf9c4f65df
Merge: 47ea91b4052d 8e303f20f4b3
Author: Ingo Molnar <mingo@elte.hu>
Date: Fri Sep 30 20:08:56 2011 +0200
Merge branch 'perf/urgent' of git://github.com/acmel/linux into perf/urgent
commit 4167ab90ee6a2c029855db53d1631c84a213f3d1
Merge: d6eed550a9d0 298557db42eb
Author: Ingo Molnar <mingo@elte.hu>
Date: Thu Sep 29 17:35:29 2011 +0200
Merge branch 'core' of git://amd64.org/linux/rric into perf/core
commit 695d16f7870847c304a8cb9555572b07a541d4ee
Merge: 815d405ceff0 4a7f340c6a75
Author: Ingo Molnar <mingo@elte.hu>
Date: Wed Sep 28 08:57:10 2011 +0200
Merge branch 'upstream/ticketlock-cleanup' of git://github.com/jsgf/linux-xen into x86/spinlocks