mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: "Gérard Roudier" <groudier@free.fr>
To: "Justin T. Gibbs" <gibbs@scsiguy.com>
Cc: Cliff Albert <cliff@oisec.net>, <linux-kernel@vger.kernel.org>
Subject: Re: aic7xxx errors with 2.4.8-ac7 on 440gx mobo
Date: Tue, 21 Aug 2001 17:34:36 +0200 (CEST)	[thread overview]
Message-ID: <20010821170410.W1490-100000@gerard> (raw)
In-Reply-To: <200108210036.f7L0amY45964@aslan.scsiguy.com>


Hi Justin,

The Linux SCSI device quirks table can be found in scsi_scan.c. :-)

It does not allow to limit tagged command queue depth, but only to disable
this feature using the BLIST_NOTQ flag. Adding an upper limit seems
feasible without too large a change. Low level drivers (SIMs) could then
access this information when called for select_queue_depth(), or the SCSI
layer could just lowered the value to this upper limit for each device.

And for the filling of such a new quirks table, you might just get the
data for the FreeBSD cam_xpt.c file you know very well. :-)

Historically, the tagged command queueing feature has been kind of
nightmare under Linux and low-level drivers that supported this feature
used to default to a safe value for the command queue depth.
The ncr53c8xx and sym53c8xx drivers defaulted and still default to 8
commands per LUN. This has been proven to work reasonnably even with well
known broken firmware. Some other drivers just defaulted to no tag.

Without some handling of appropriate quirks per device regarding tagged
command queue depth, it is not reasonnable, in my opinion, to default to
something larger that 8 commands per lun under current Linux.

My feeling, and somehow experience, is that not reusing tag numbers too
quickly prevents from triggerring races in broken firmwares. This has been
the reason I implemented a circular tag number allocation sheme in the
ncr53c8xx and sym53c8xx drivers and this seemed to have had the expected
effects.

Regards,
  Gérard.

PS1: By the way, I do agree with your analysis of the problem.
PS2: Thanks a lot for all your efforts for SCSI in free O/Ses.

On Mon, 20 Aug 2001, Justin T. Gibbs wrote:

> >> IIRC, the problem has to do with the state of the write cache in the drive.
> >> The cache will be in a different state after power-on as compared to
> >> after some amount of activity.
> >
> >Well i still suspect the broken firmware of the disk isn't the only cause of
> >these errors
>
> Perhaps.
>
> One thing to keep in mind however is that, although the messages may
> *look* the same, they very rarely are.  If you don't have verbose turned
> on, all transaction timeouts, regardless of the reason, look the same.
> It is only by analyzing the verbose output that a cause for a particular
> problem can be found.  In the case of your system, we always timeout
> with the bus idle with several pending transaction, we can always abort
> a transaction successfully (i.e. the bus is not dead, neither is the
> target), its just that some transactions never complete.  These are
> exactly the symptoms of the bogus FireBall ST firmware on your drive.
>
> Another thing to keep in mind...  The newer driver defaults to using
> tagged queing and attempts to issue the maximum number of concurrent
> transactions possible to each device.  The old driver, until fairly
> recently, defaulted to leaving tagged queuing disabled, and if enabled,
> only queued 8 transactions.  So, the new aic7xxx driver often places
> a much higher load on your SCSI setup than the old one did.  I think
> this has something to do with the large number of reports.
>
> This doesn't mean that there haven't been, or continue to be  bugs.
> After all this is software, but I am trying to do my best to make
> it work. 8-)
>
> --
> Justin
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/
>
>


  reply	other threads:[~2001-08-21 15:37 UTC|newest]

Thread overview: 69+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-08-20  8:36 Yusuf Goolamabbas
2001-08-20  8:55 ` Cliff Albert
2001-08-20 10:37   ` Alan Cox
2001-08-20 10:56     ` Yusuf Goolamabbas
2001-08-20 10:56       ` Alan Cox
2001-08-20 11:13         ` Yusuf Goolamabbas
2001-08-20 11:09           ` Alan Cox
2001-08-20 16:43             ` Doug Ledford
2001-08-20 12:46     ` Stefan Fleiter
2001-08-20 15:19       ` Ville Herva
2001-08-20 20:33         ` Justin T. Gibbs
2001-08-20 16:45       ` Doug Ledford
2001-08-20 17:23         ` Stefan Fleiter
2001-08-20 20:28       ` Justin T. Gibbs
2001-08-21 20:24         ` Stefan Fleiter
2001-08-20 16:21     ` Cliff Albert
2001-08-20 17:23       ` Peter T. Breuer
2001-08-20 17:28         ` Cliff Albert
2001-08-20 20:27   ` Justin T. Gibbs
2001-08-20 20:45     ` Cliff Albert
2001-08-20 21:04       ` Cliff Albert
2001-08-20 21:09         ` Cliff Albert
2001-08-20 21:45           ` Justin T. Gibbs
2001-08-20 22:55             ` Cliff Albert
2001-08-21  0:36               ` Justin T. Gibbs
2001-08-21 15:34                 ` Gérard Roudier [this message]
2001-08-21 14:42             ` With Daniel Phillips Patch (was: aic7xxx with 2.4.9 on 7899P) Sven Heinicke
2001-08-21 15:08               ` Daniel Phillips
2001-08-21 16:48               ` Sven Heinicke
2001-08-21 17:18                 ` Justin T. Gibbs
2001-08-21 17:26                 ` Daniel Phillips
2001-08-21 17:55                 ` Stephan von Krawczynski
2001-08-21 18:33                   ` Justin T. Gibbs
2001-08-22  6:46                     ` Jens Axboe
2001-08-22 13:24                       ` Justin T. Gibbs
2001-08-22 15:05                       ` With Daniel Phillips Patch David S. Miller
2001-08-22 18:21                         ` Gérard Roudier
2001-08-22 18:32                         ` Justin T. Gibbs
2001-08-22 18:32                         ` David S. Miller
2001-08-22 18:46                         ` David S. Miller
2001-08-22 19:41                           ` Justin T. Gibbs
2001-08-22 20:19                           ` David S. Miller
2001-08-22 21:07                           ` Gérard Roudier
2001-08-22 21:40                             ` Justin T. Gibbs
2001-08-22 23:09                             ` David S. Miller
2001-08-23  0:01                               ` Justin T. Gibbs
2001-08-23  0:40                               ` David S. Miller
2001-08-23  0:55                                 ` Justin T. Gibbs
2001-08-23  1:03                                   ` Matthew Jacob
2001-08-23  1:08                                 ` David S. Miller
2001-08-23  1:32                                   ` Justin T. Gibbs
2001-08-23  1:39                                   ` David S. Miller
2001-08-23  1:49                                     ` Justin T. Gibbs
2001-08-22 21:14                           ` David S. Miller
2001-08-22 21:14                           ` David S. Miller
2001-08-21 22:44                 ` With Daniel Phillips Patch (was: aic7xxx with 2.4.9 on 7899P) Sven Heinicke
2001-08-22  0:58                   ` Daniel Phillips
2001-08-21 22:49                 ` Sven Heinicke
2001-08-22 13:06                   ` Gérard Roudier
2001-08-22 10:25               ` Marcelo Tosatti
2001-08-22 16:09               ` Sven Heinicke
2001-08-22 15:42                 ` Marcelo Tosatti
2001-08-29  7:30                   ` Andrey Nekrasov
2001-09-03 14:58                     ` Marcelo Tosatti
2001-08-22 20:25                 ` Sven Heinicke
2001-08-20 22:36           ` aic7xxx with 2.4.9 on 7899P Sven Heinicke
2001-08-20 21:44         ` aic7xxx errors with 2.4.8-ac7 on 440gx mobo Justin T. Gibbs
2001-08-20 21:48           ` Cliff Albert
2001-08-25  7:15           ` Cliff Albert

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20010821170410.W1490-100000@gerard \
    --to=groudier@free.fr \
    --cc=cliff@oisec.net \
    --cc=gibbs@scsiguy.com \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®