What exactly does this achieve:

int pthread_wakeup_np (pthread_t thread)
{ 
#ifdef CONFIG_SMP
        if (thread->cpu != rtl_getcpuid()) {
                pthread_kill(thread,RTL_SIGNAL_WAKEUP);
                rtl_reschedule_thread(thread);
        } else
#endif  
        {
                pthread_kill(thread,RTL_SIGNAL_WAKEUP);
                rtl_reschedule_thread(thread);
        }
        return 0;
}
?

It's in rtl_sched.c, and, as I see it, if I'm running on an SMP box,
then your scheduler is doing an uneccessary comparison all the time,
and an unnecessary jump [branch? I can't ever remember which one's
which...] half the time...

Gary (-;
-- [rtl] ---
To unsubscribe:
echo "unsubscribe rtl" | mail [EMAIL PROTECTED] OR
echo "unsubscribe rtl <Your_email>" | mail [EMAIL PROTECTED]
--
For more information on Real-Time Linux see:
http://www.rtlinux.org/

Reply via email to