Date: Tue, 24 Aug 2004 18:43:28 -0700 From: Brian Rogers <burpmaster@truffula.net> To: =?ISO-8859-1?Q?S=F8ren_Schmidt?= <sos@DeepCore.dk> Cc: freebsd-current@freebsd.org Subject: Re: ATAPI_RESET hang fix Message-ID: <412BEEC0.2030408@truffula.net> In-Reply-To: <412AF51B.8010801@DeepCore.dk> References: <412AD147.7050502@truffula.net> <412AF51B.8010801@DeepCore.dk>
next in thread | previous in thread | raw e-mail | index | archive | help
Søren Schmidt wrote: > Brian Rogers wrote: > >> I was getting the hang on start after the "ATAPI_RESET time = x" >> message. I stuck in a diagnostic printf before the ATAPI_RESET, and >> that actually fixed the hang. So I replaced it with a DELAY(50), and >> that also avoids the hang. >> >> I guess some ATAPI devices don't like being reset right after being >> queried. (Or there is a bug with handling that in FreeBSD) Patch is >> attached. > > Hmm, you could be on to something, but instead of using a fixed delay > I'd rather (re)introduce the wait for ready before selecting the > device in ata_command. Could you please try the following patch and > let me know if that fixes the problem as well ? It worked on the first try, but after that I couldn't reproduce it with a DVD in the drive, or with the drive empty, so I think that was a fluke. I tried about 5 times. I noticed this morning that my patch doesn't work when a DVD is in the drive. The drive must need more time in that case.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?412BEEC0.2030408>