Mailing List Archive

[xen-4.1-testing] preempt: Disable preemption support for 4.1.
# HG changeset patch
# User Keir Fraser <keir@xen.org>
# Date 1299324929 0
# Node ID 51e74954aa8fa9d2777e02b8490e4dd277098149
# Parent 6af8e01d3e4a5b4c6b38c64ceb1cdce897cc8ff2
preempt: Disable preemption support for 4.1.

Preemption support is not needed for 4.1 branch as synchronous yield
(via waitqueues) is not used. Furthermore there are still some
unbalanced rcu_lock/unlock usages on some code paths and the stricter
requirements of the preemption subsystem can cause us to BUG out on
them.

Signed-off-by: Keir Fraser <keir@xen.org>
---


diff -r 6af8e01d3e4a -r 51e74954aa8f xen/include/xen/preempt.h
--- a/xen/include/xen/preempt.h Sat Mar 05 11:25:30 2011 +0000
+++ b/xen/include/xen/preempt.h Sat Mar 05 11:35:29 2011 +0000
@@ -16,6 +16,14 @@

DECLARE_PER_CPU(unsigned int, __preempt_count);

+/*
+ * XXX: Preemption support is not needed for 4.1 branch as synchronous
+ * yield (via waitqueues) is not used. Furthermore there are still some
+ * unbalanced rcu_lock/unlock usages on some code paths and the stricter
+ * requirements of the preemption subsystem can cause us to BUG out on them.
+ */
+#if 0
+
#define preempt_count() (this_cpu(__preempt_count))

#define preempt_disable() do { \
@@ -28,6 +36,14 @@
preempt_count()--; \
} while (0)

+#else
+
+#define preempt_count() 0
+#define preempt_disable() ((void)0)
+#define preempt_enable() ((void)0)
+
+#endif
+
#define in_atomic() (preempt_count() || in_irq() || !local_irq_is_enabled())

#endif /* __XEN_PREEMPT_H__ */

_______________________________________________
Xen-changelog mailing list
Xen-changelog@lists.xensource.com
http://lists.xensource.com/xen-changelog