
Untitled
By: a guest on
May 4th, 2012 | syntax:
None | size: 1.05 KB | hits: 13 | expires: Never
fixed fgrlx compilation error on 32-bit x86 arch with kernel 3.3-rc4 due to com$
https://github.com/torvalds/linux/commit/f94edacf998516ac9d849f7bc6949a703977a7$
later modified (in 3.3-rc5) by commit:
https://github.com/torvalds/linux/commit/7e16838d94b566a17b65231073d179bc04d590$
and finally backported to kernel 3.2.8.
Signed-off-by: Gianluca Gennari <gennarone@gmail.com>
---
firegl_public.c | 6 ++++++
1 files changed, 6 insertions(+), 0 deletions(-)
diff --git a/firegl_public.c b/firegl_public.c
index 6e0aa82..cb9e217 100644
--- a/firegl_public.c
+++ b/firegl_public.c
@@ -5797,10 +5797,16 @@ void ATI_API_CALL KCL_fpu_begin(void)
#ifdef CONFIG_X86_64
kernel_fpu_begin();
#else
+#ifndef TS_USEDFPU
+ preempt_disable();
+ if (__thread_has_fpu(current))
+ __save_init_fpu(current);
+#else
struct thread_info *cur_task = current_thread_info();
preempt_disable();
if (cur_task->status & TS_USEDFPU)
__save_init_fpu(cur_task->task);
+#endif
else
clts();
#endif
--
1.7.5.4