|
@@ -1176,17 +1176,12 @@ void __init trap_init(void)
|
|
|
#endif
|
|
|
set_trap_gate(19,&simd_coprocessor_error);
|
|
|
|
|
|
+ /*
|
|
|
+ * Verify that the FXSAVE/FXRSTOR data will be 16-byte aligned.
|
|
|
+ * Generate a build-time error if the alignment is wrong.
|
|
|
+ */
|
|
|
+ BUILD_BUG_ON(offsetof(struct task_struct, thread.i387.fxsave) & 15);
|
|
|
if (cpu_has_fxsr) {
|
|
|
- /*
|
|
|
- * Verify that the FXSAVE/FXRSTOR data will be 16-byte aligned.
|
|
|
- * Generates a compile-time "error: zero width for bit-field" if
|
|
|
- * the alignment is wrong.
|
|
|
- */
|
|
|
- struct fxsrAlignAssert {
|
|
|
- int _:!(offsetof(struct task_struct,
|
|
|
- thread.i387.fxsave) & 15);
|
|
|
- };
|
|
|
-
|
|
|
printk(KERN_INFO "Enabling fast FPU save and restore... ");
|
|
|
set_in_cr4(X86_CR4_OSFXSR);
|
|
|
printk("done.\n");
|