On Thu, 19 Oct 2017, Martin Schwidefsky wrote:

> On Thu, 19 Oct 2017 15:29:28 +0200 (CEST)
> Thomas Gleixner <t...@linutronix.de> wrote:
> 
> > On Thu, 19 Oct 2017, Matt Redfearn wrote:
> > > On 19/10/17 13:43, Thomas Gleixner wrote:  
> > > >         delta = 0;
> > > >         for (i = 0; i < 10; i++) {
> > > >                 delta += dev->min_delta_ns;
> > > >                 dev->next_event = ktime_add_ns(ktime_get(), delta);
> > > >                 clc = .....
> > > >                 .....
> > > > 
> > > > That makes it more likely to succeed fast. Hmm?  
> > > 
> > > That will set the target time to increasing multiples of min_delta_ns in 
> > > the
> > > future, right?  
> > 
> > Yes, but without fiddling with min_delta_ns itself.
> 
> Grumpf, more extra code for yet another piece of broken hardware
> I guess.

and virtualization. Oh wait.. the virt is the ultimate reference for broken
hardware...

> > > Sure, it should make it succeed faster - I'll make it like
> > > that. Are you OK with the arbitrarily chosen 10 retries?  
> > 
> > I lost my crystalball so I have to trust yours :)
> 
> The alternative implementation would be to do the retries in
> the clockevent driver itself. Then that particular driver can
> choose the correct number of retries, no?

There is no correct number ever. All you can do is set an upper limit.

Thanks,

        tglx

Reply via email to