Re: [PATCH 2.6.11-rc2 11/29] ide: add ide_drive_t.sleeping

From: Jens Axboe
Date: Fri Feb 04 2005 - 03:42:26 EST


On Fri, Feb 04 2005, Tejun Heo wrote:
> Bartlomiej Zolnierkiewicz wrote:
> >On Thu, 3 Feb 2005 14:32:29 +0100, Jens Axboe <axboe@xxxxxxx> wrote:
> >
> >>On Thu, Feb 03 2005, Bartlomiej Zolnierkiewicz wrote:
> >>
> >>>On Thu, 3 Feb 2005 12:37:10 +0100, Jens Axboe <axboe@xxxxxxx> wrote:
> >>>
> >>>>On Thu, Feb 03 2005, Bartlomiej Zolnierkiewicz wrote:
> >>>>
> >>>>>On Wed, 2 Feb 2005 11:54:48 +0900, Tejun Heo <tj@xxxxxxxxxxx> wrote:
> >>>>>
> >>>>>>>11_ide_drive_sleeping_fix.patch
> >>>>>>>
> >>>>>>> ide_drive_t.sleeping field added. 0 in sleep field used to
> >>>>>>> indicate inactive sleeping but because 0 is a valid jiffy
> >>>>>>> value, though slim, there's a chance that something can go
> >>>>>>> weird. And while at it, explicit jiffy comparisons are
> >>>>>>> converted to use time_{after|before} macros.
> >>>>>
> >>>>>Same question as for "add ide_hwgroup_t.polling" patch.
> >>>>>AFAICS drive->sleep is either '0' or 'timeout + jiffies' (always > 0)
> >>>>
> >>>>Hmm, what if jiffies + timeout == 0?
> >>>
> >>>Hm, jiffies is unsigned and timeout is always > 0
> >>>but this is still possible if jiffies + timeout wraps, right?
> >>
> >>Precisely, if jiffies is exactly 'timeout' away from wrapping to 0 it
> >>could happen. So I think the fix looks sane.
> >
> >
> >agreed
>
> Actually, jiffies is initialized to INITIAL_JIFFIES which is defined in
> such a way that it overflows after 5 min after boot to help finding bugs
> related to jiffies wrap. So, the chance of something weird happening in
> the bugs fixed in patches 11 and 12 isn't that exteremely slim. :-)

And repeat after 49 days, sure. But the odds of it triggering are still
extremely slim :)

--
Jens Axboe

-
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/