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

From: Tejun Heo
Date: Thu Feb 03 2005 - 17:39:31 EST


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. :-)

--
tejun

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