Re: [RFC PATCH 19/35] subarch support for control register accesses

From: Zachary Amsden
Date: Wed Mar 22 2006 - 03:52:28 EST


Chris Wright wrote:
+#define read_cr4_safe() ({ \
+ unsigned int __dummy; \
+ /* This could fault if %cr4 does not exist */ \
+ __asm__("1: movl %%cr4, %0 \n" \
+ "2: \n" \
+ ".section __ex_table,\"a\" \n" \
+ ".long 1b,2b \n" \
+ ".previous \n" \
+ : "=r" (__dummy): "0" (0)); \
+ __dummy; \
+})

I think you'll find trap and emulate quite sufficient for this one.

+#define stts() write_cr0(8 | read_cr0())

Nit: You shouldn't need to redefine stts() in the subarch.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/