This code in the csz scheduler, is just plain broken. The TDIFF_SAFE effectively expands to: unsigned long delay = now - q->t_c; if (delay > 0) { delay = 0; goto do_reset; } if (delay >> q->delta_log
Sounds like good logic to me. BTW, that jiffies fix, statemnt from Steve: Is this overhead on 32 bit machines or applies on 64 bit as well? Note that code is used in the fast path.
This code in the csz scheduler, is just plain broken. The TDIFF_SAFE effectively expands to: unsigned long delay = now - q->t_c; if (delay > 0) { delay = 0; goto do_reset; } if (delay >> q->delta_log
Sounds like good logic to me. BTW, that jiffies fix, statemnt from Steve: Is this overhead on 32 bit machines or applies on 64 bit as well? Note that code is used in the fast path.