Hi there!
A little bit late!
SOLUTION:
--- firegl_public.c.modified 2017-06-09 16:41:29.334991812 +0200
+++ firegl_public.c 2017-06-08 18:25:25.835817920 +0200
@@ -4273,8 +4273,8 @@
{
unsigned long orig_level;
- orig_level = __get_cpu_var(kasExecutionLevel);
- __get_cpu_var(kasExecutionLevel) = level;
+ orig_level = __raw_get_cpu_var(kasExecutionLevel);
+ __raw_get_cpu_var(kasExecutionLevel) = level;
return orig_level;
}
@@ -4286,7 +4286,7 @@
*/
static unsigned long kas_GetExecutionLevel(void)
{
- return __get_cpu_var(kasExecutionLevel);
+ return __raw_get_cpu_var(kasExecutionLevel);
}
/** \brief Type definition for kas_spin_lock() parameter */
@@ -4440,7 +4440,7 @@
KCL_DEBUG5(FN_FIREGL_KAS,"0x%08X, 0x%08X\n", ih_routine, ih_context);
//Prevent simultaneous entry on some SMP systems.
- if (test_and_set_bit(0, (void
*)&(kasContext.in_interrupts[smp_processor_id()])))
+ if (test_and_set_bit(0, (void
*)&(kasContext.in_interrupts[raw_smp_processor_id()])))
{
KCL_DEBUG1(FN_FIREGL_KAS, "The processor is handling the interrupt\n");
return IRQ_NONE;
@@ -4455,7 +4455,7 @@
kasSetExecutionLevel(orig_level);
spin_unlock(&kasContext.lock_ih);
- clear_bit(0, (void *)&(kasContext.in_interrupts[smp_processor_id()]));
+ clear_bit(0, (void *)&(kasContext.in_interrupts[raw_smp_processor_id()]));
KCL_DEBUG5(FN_FIREGL_KAS,"%d\n", ret);
return ret;
bye
masta
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/560571
Title:
BUG: using smp_processor_id() in preemptible [00000000] code:
Xorg/1157
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/fglrx-installer/+bug/560571/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs