On 06/08, Oleg Nesterov wrote: > > And I simply can not understand the complication in hrtimer_active(), > please help!
Sorry for another off-topic email, but I don't even understand the usage of hrtimer_active(). Say, do_nanosleep() hrtimer_start_expires(&t->timer, mode); if (!hrtimer_active(&t->timer)) t->task = NULL; why? Assuming that hrtimer_active() is correct, it can only return false if t->task was already cleared by hrtimer_wakeup(). OTOH. perf_cpu_hrtimer_restart() does if (hrtimer_active(hr)) return; if (!hrtimer_callback_running(hr)) __hrtimer_start_range_ns(...); why it can't simply do if (!hrtimer_active(hr)) // implies !hrtimer_callback_running() __hrtimer_start_range_ns(...); Confused. Oleg. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/