patch-2.4.20 linux-2.4.20/include/asm-x86_64/bugs.h

Next file: linux-2.4.20/include/asm-x86_64/byteorder.h
Previous file: linux-2.4.20/include/asm-x86_64/bootsetup.h
Back to the patch index
Back to the overall index

diff -urN linux-2.4.19/include/asm-x86_64/bugs.h linux-2.4.20/include/asm-x86_64/bugs.h
@@ -0,0 +1,34 @@
+/*
+ *  include/asm-x86_64/bugs.h
+ *
+ *  Copyright (C) 1994  Linus Torvalds
+ *  Copyright (C) 2000  SuSE
+ *
+ * This is included by init/main.c to check for architecture-dependent bugs.
+ *
+ * Needs:
+ *	void check_bugs(void);
+ */
+
+#include <linux/config.h>
+#include <asm/processor.h>
+#include <asm/i387.h>
+#include <asm/msr.h>
+#include <asm/pda.h>
+
+static inline void check_fpu(void)
+{
+	extern void __bad_fxsave_alignment(void);
+	if (offsetof(struct task_struct, thread.i387.fxsave) & 15)
+		__bad_fxsave_alignment();
+
+	/* This should not be here */	
+	set_in_cr4(X86_CR4_OSFXSR);
+	set_in_cr4(X86_CR4_OSXMMEXCPT);
+}
+
+static void __init check_bugs(void)
+{
+	identify_cpu(&boot_cpu_data);
+	check_fpu();
+}

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)