From 4e27fe5c86945f8b528a4d082daeaef60492463e Mon Sep 17 00:00:00 2001 From: luoqi Date: Mon, 19 Apr 1999 18:44:16 +0000 Subject: Fix a potential hang situation. PR: i386/2108 --- sys/i386/isa/atapi.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'sys') diff --git a/sys/i386/isa/atapi.c b/sys/i386/isa/atapi.c index 2d76b8c..0efa4d5 100644 --- a/sys/i386/isa/atapi.c +++ b/sys/i386/isa/atapi.c @@ -887,7 +887,8 @@ struct atapires atapi_request_wait (struct atapi *ata, int unit, ac->cmd[13], ac->cmd[14], ac->cmd[15], count); atapi_enqueue (ata, ac); wdstart (ata->ctrlr); - tsleep ((caddr_t)ac, PRIBIO, "atareq", 0); + if (ata->tail == ac) + tsleep ((caddr_t)ac, PRIBIO, "atareq", 0); result = ac->result; atapi_free (ata, ac); -- cgit v1.1