On Wednesday 13 March 2013 05:55 PM, Mark Rutland wrote: > On Wed, Mar 13, 2013 at 11:24:01AM +0000, Santosh Shilimkar wrote: >> On Wednesday 13 March 2013 03:46 PM, Mark Rutland wrote: >>> Hi Santosh,
[..] >>> >>> Is the problem that the dummy timer is being registered as the broadcast >>> source, or that it is selected as a local timer in preference of real >>> timers? >>> >> Dummy timer is preferred over real broadcast timer. > > Ok. > >> >>> If it is the former, Then I believe my patch solve the issue more generally >>> - >>> if you happen to register a dummy timer before other timers, it will become >>> the >>> broadcast source. Regardless of how temporary this is, it should never >>> happen, >>> and lowering the rating of the dummy won't fix this. >>> >> Well by the time we need active broadcast functionality, clock-events are >> already chosen if the ratings are appropriate. > > That's a fair point. I still think it's worth having the check in the core > broadcast code - rejecting dummy timers is always a sensible thing to do, and > it prevents future crashes if new timers are added without sensible rating > values. > >> >>> If it is the latter, then this patch would ensure that a real timer with a >>> rating over 100 is selected in preference to the dummy, which is certainly >>> what >>> we want. The proposed generic dummy timer in Stephen Boyd's local timer API >>> removal series [1] similarly uses a low rating to ensure that real timers >>> are >>> selected in preference to an always-registered dummy. I note that the >>> architected timer has a higher rating (450) than the dummy (400), so this >>> shouldn't currently be a problem. >>> >> Because we always register dummy broadcast on ARM now >> and with higher rating, it is picked as broadcast source. We definitely don't >> want such a behavior when we have real broadcast device is available. > > Agreed. We *never* want to pick a dummy timer as a broadcast source, as this > never makes sense. > >> With your patch, we are trying to avoid the registration which goes >> against the the whole idea of registering it always and picking >> the right clock-event based on rating by clock-event core. >> The clock-event core except the proper ratings to be provided based on >> the capability of the timer source and its resolution and in that case >> dummy should have the lowest rating which is what I tried to patch. >> >>> Have I missed something? >>> >> Not much. I was just looking at x86 code as well after your email >> to see how the LAPIC issue is handled. They seems to also have >> correct rating to take care of the selection. >> >> Probably we can merge both the fixes but from clock-event core >> code perspective, the ratings fix is more than enough. > > I do agree it'd be worth lowering the dummy timer's rating to ensure it > doesn't > override a real timer elsewhere. > Yep. Can I add you acked-by tag then for $subject patch ? Would be good to get this one merged as well. Regards Santosh -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html