Gitweb: http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7dc1da9ffae5a344f7115d019e2be069d3e1bb8d Commit: 7dc1da9ffae5a344f7115d019e2be069d3e1bb8d Parent: 028fed8233b669e03def295a4e632b1b933720f9 Author: Stefan Haberland <[EMAIL PROTECTED]> AuthorDate: Sat Jan 26 14:11:26 2008 +0100 Committer: Martin Schwidefsky <[EMAIL PROTECTED]> CommitDate: Sat Jan 26 14:11:30 2008 +0100
[S390] dasd: fix loop in request expiration handling Add time to the 'expires' value to avoid a loop caused by the cqr termination function Signed-off-by: Stefan Haberland <[EMAIL PROTECTED]> Signed-off-by: Martin Schwidefsky <[EMAIL PROTECTED]> --- drivers/s390/block/dasd.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) diff --git a/drivers/s390/block/dasd.c b/drivers/s390/block/dasd.c index db9193d..99268b9 100644 --- a/drivers/s390/block/dasd.c +++ b/drivers/s390/block/dasd.c @@ -1197,12 +1197,13 @@ static void __dasd_device_check_expire(struct dasd_device *device) (time_after_eq(jiffies, cqr->expires + cqr->starttime))) { if (device->discipline->term_IO(cqr) != 0) { /* Hmpf, try again in 5 sec */ - dasd_device_set_timer(device, 5*HZ); DEV_MESSAGE(KERN_ERR, device, "internal error - timeout (%is) expired " "for cqr %p, termination failed, " "retrying in 5s", (cqr->expires/HZ), cqr); + cqr->expires += 5*HZ; + dasd_device_set_timer(device, 5*HZ); } else { DEV_MESSAGE(KERN_ERR, device, "internal error - timeout (%is) expired " - To unsubscribe from this list: send the line "unsubscribe git-commits-head" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html