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