Re: [DVB patch 54/54] ttusb-budget: use time_after_eq()

Nish Aravamudan
2005-09-05T00:14:35Z

On 9/4/05, Johannes Stezenbach <js@linuxtv.org> wrote:
> On Sun, Sep 04, 2005 Nish Aravamudan wrote:
> > On 9/4/05, Johannes Stezenbach <js@linuxtv.org> wrote:
> > >
> > > -static int numpkt = 0, lastj, numts, numstuff, numsec, numinvalid;
> > > +static int numpkt = 0, numts, numstuff, numsec, numinvalid;
> > > +static unsigned long lastj;
> > >
> > > static void ttusb_process_muxpack(struct ttusb *ttusb, const u8 * muxpack,
> > > int len)
> > > @@ -779,7 +781,7 @@ static void ttusb_iso_irq(struct urb *ur
> > > u8 *data;
> > > int len;
> > > numpkt++;
> > > - if ((jiffies - lastj) >= HZ) {
> > > + if (time_after_eq(jiffies, lastj + HZ)) {
> >
> > I think you actually want:
> >
> > static void ttusb_iso_irq(....)
> > {
> > unsigned long lastj;
> >
> > ...
> >
> > lastj = jiffies + HZ;
> > if (time_after_eq(jiffies, lastj)) {
> > ...
> >
> > }
> >
> > The current code doesn't assign jiffies to lastj at any point that I see.
>
> The code in question is used to print a one-per-second debug output,
> and lastj is assigned after every print.

Ah yes, didn't see that in the current code, sorry for that noise.
Still, lastj is local to ttusb_iso_irq(), right?

> I agree that it's ugly, though.

Fair enough :)

Thanks,
Nish