On 2011-07-12 19:31, Gilles Chanteperdrix wrote:
> On 07/12/2011 02:57 PM, Jan Kiszka wrote:
>>                      xnlock_put_irqrestore(&nklock, s);
>>                      xnpod_schedule();
>>              }
>> @@ -1036,6 +1043,7 @@ redo:
>>       * to process this signal anyway.
>>       */
>>      if (rthal_current_domain == rthal_root_domain) {
>> +            XENO_BUGON(NUCLEUS, xnthread_test_info(thread, XNATOMIC));
> 
> Misleading dead code again, XNATOMIC is cleared not ten lines above.

Nope, I forgot to remove that line.

> 
>>              if (XENO_DEBUG(NUCLEUS) && (!signal_pending(this_task)
>>                  || this_task->state != TASK_RUNNING))
>>                      xnpod_fatal
>> @@ -1044,6 +1052,8 @@ redo:
>>              return -ERESTARTSYS;
>>      }
>>  
>> +    xnthread_clear_info(thread, XNATOMIC);
> 
> Why this? I find the xnthread_clear_info(XNATOMIC) right at the right
> place at the point it currently is.

Nope. Now we either clear XNATOMIC after successful migration or when
the signal is about to be sent (ie. in the hook). That way we can test
more reliably (TM) in the gatekeeper if the thread can be migrated.

Jan

Attachment: signature.asc
Description: OpenPGP digital signature

_______________________________________________
Xenomai-core mailing list
Xenomai-core@gna.org
https://mail.gna.org/listinfo/xenomai-core

Reply via email to