Date: Sun, 5 Jan 1997 16:03:46 -0800 (PST) From: "Justin T. Gibbs" <gibbs> To: markd@grizzly.com, gibbs, freebsd-bugs, gibbs Subject: Re: kern/2371 Message-ID: <199701060003.QAA23117@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
Synopsis: SCSI disk corruption State-Changed-From-To: closed-open State-Changed-By: gibbs State-Changed-When: Sun Jan 5 15:55:45 PST 1997 State-Changed-Why: There are two problems here: 1) The Adaptec driver in current and in 2.2 has a few bugs in it that cause the controller to wedge. Although data is lost, data that successfully reaches the disk is just fine. 2) The aic7xxx driver uses simple queue tags when tagged queueing is turned on. This means that I/O transactions queued to the target can be re-ordered at the targets discretion (except that a read following a write must return the data from the last queued write transaction). Unfortunately, this can cause problems when syncronous write requests are issued. There is nothing preventing a syncronous write from returning prior to some of the transactions queued before it. I believe that this situation, when combined with a hang (meaning there are multiple outstanding transactions) is the cause of your "corruption" since meta-data state can be unstable. The first problem is being actively worked on by me, and should be addressed in the next two weeks. There is already a preliminary framework for fixing problem two in the 'SCSI' branch. The basic approach is to take syncronous requests and use ordered tagged queueing on them so that synchronous requests work as they are intended. Responsible-Changed-From-To: freebsd-bugs->gibbs Responsible-Changed-By: gibbs Responsible-Changed-When: Sun Jan 5 15:55:45 PST 1997 Responsible-Changed-Why: I will be addressing these issues.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199701060003.QAA23117>