Re: [PATCH V1 Resend 2/5] tick-common: don't check tick_oneshot_mode_active() from tick_check_preferred()

From: Thomas Gleixner
Date: Tue Apr 15 2014 - 14:30:35 EST


On Tue, 15 Apr 2014, Viresh Kumar wrote:

> If 'curdev' passed to tick_check_preferred() is the current clock_event_device
> then these two checks look exactly same, because td->mode is set to
> TICKDEV_MODE_ONESHOT only when the event device has ONESHOT feature.
>
> if (curdev && (curdev->features & CLOCK_EVT_FEAT_ONESHOT))
> return false;
>
> if (tick_oneshot_mode_active())
> return false;
>
> Now left the case where 'curdev' is not the current clock_event_device. This can
> happen from the sequence started from clockevents_replace(). Here we are trying
> to find the best possible device that we should choose. And so even in this case
> we don't need the above check as we aren't really worried about the current
> device.

Wrong. If curdev is NULL, you might select a device w/o ONESHOT if the
system is in oneshot mode. Go figure.

Thanks,

tglx
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/