linux-scsi.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jeremy Higdon <jeremy@SGI.com>
To: Andrew Vasquez <andrew.vasquez@qlogic.com>
Cc: Jes Sorensen <jes@wildopensource.com>,
	Linux-SCSI <linux-scsi@vger.kernel.org>,
	jbarnes@SGI.com, mdr@SGI.com
Subject: Re: [ANNOUNCE] QLogic qla2xxx driver update available (v8.00.00b6).
Date: Mon, 1 Dec 2003 18:02:03 -0800	[thread overview]
Message-ID: <20031202020203.GA174948@sgi.com> (raw)
In-Reply-To: <B179AE41C1147041AA1121F44614F0B060ED86@AVEXCH02.qlogic.org>

On Mon, Dec 01, 2003 at 03:21:44PM -0800, Andrew Vasquez wrote:
> On Wednesday, November 26, 2003 5:20 PM, Jeremy Higdon wrote:
> 
> > I've found a problem with the driver on our SN2 system.  There needs
> > to be a register read after updating the Request Queue In index,
> > prior to releasing the host spin lock.
> > 
> > The calls to sn_mmiob() will need to be replaced by reading an
> > appropriate register on the chip.  sn_mmiob() is a lightweight way
> > of doing the same thing without having to go to the chip, but only
> > on SGI SN platforms. 
> > 

Jesse pointed out that my patch was screwed up, by the way, having
been done in reverse -- I don't know why I didn't see that.
Is it okay to read back from the request queue in register?
I'm planning to generate a new patch that includes the previous
changes, and I may as well generate something without the sn_mmiob.

> I'm curious, what types of symptoms were exibited without the
> sn_mmiob() call?  Did I/O stall?

No.  What happens is that writes from two different CPUs make
it to the chip out of order.  So if CPU A writes a 4 to request
queue in, and then releases the spinlock and CPU B acquires the
spinlock and writes a 5, the two writes can make it to the
chip out of order, causing the chip to think that a bunch of
new commands have been issued.  The driver detects lots of
invalid I/O completions after that (stale handles and such).

> BTW: The CACHE_FLUSH() call:
> 
> 	/* Set chip new ring index. */
> 	reg_flushed = CACHE_FLUSH(ISP_REQ_Q_IN(reg));
> 
> preceeding the WRT_REG_WORD() has been removed from my working tree
> (remnants of an ancient motherboard problem with an on-board ISP while
> using PIO).

What about setting the consistent DMA mask to -1UL?


thanks

jeremy

  reply	other threads:[~2003-12-02  2:03 UTC|newest]

Thread overview: 44+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-12-01 23:21 [ANNOUNCE] QLogic qla2xxx driver update available (v8.00.00b6) Andrew Vasquez
2003-12-02  2:02 ` Jeremy Higdon [this message]
2003-12-02 10:01   ` Andrew Vasquez
2003-12-02  9:36     ` Jeremy Higdon
2003-12-02  3:22 ` Jeremy Higdon
2003-12-02 10:15   ` Andrew Vasquez
2003-12-02  9:50     ` Jeremy Higdon
  -- strict thread matches above, loose matches on Subject: below --
2003-12-02 18:22 Andrew Vasquez
2003-12-02 18:10 Andrew Vasquez
2003-11-25 19:29 Andrew Vasquez
2003-11-25 23:31 ` Jeremy Higdon
2003-11-27  1:20   ` Jeremy Higdon
2003-11-24 17:37 Andrew Vasquez
2003-11-25  1:22 ` Jeremy Higdon
2003-11-25  8:18   ` Christoph Hellwig
2003-11-25  8:21 ` Jes Sorensen
2003-11-19 23:38 Andrew Vasquez
2003-11-19 23:03 Andrew Vasquez
2003-11-19 23:18 ` Matthew Wilcox
2003-11-20  9:19 ` Jes Sorensen
2003-11-21  8:43   ` Jeremy Higdon
2003-11-06 19:33 Andrew Vasquez
2003-11-07  9:39 ` Christoph Hellwig
2003-11-06 17:45 Andrew Vasquez
2003-11-06 17:59 ` Arjan van de Ven
2003-11-07  9:37 ` Christoph Hellwig
2003-11-06 17:11 Andrew Vasquez
2003-11-06 17:14 ` Jens Axboe
2003-11-06 17:43   ` Arjan van de Ven
2003-11-06 17:50     ` Jens Axboe
2003-11-06 17:55       ` Arjan van de Ven
2003-11-06 17:58         ` Jens Axboe
2003-11-06 17:02 Andrew Vasquez
2003-11-06 17:53 ` Matthew Wilcox
2003-11-07  9:58   ` Christoph Hellwig
2003-11-07  9:33 ` Christoph Hellwig
2003-11-05 18:39 Andrew Vasquez
2003-11-06  9:17 ` Jens Axboe
2003-11-05  1:15 Andrew Vasquez
2003-11-05  9:17 ` Mike Anderson
2003-11-06  9:36 ` Christoph Hellwig
2003-11-06 10:51 ` Christoph Hellwig
2003-11-10 14:00 ` Jes Sorensen
     [not found] ` <20031114115847.GA32664@lst.de>
2003-11-17 12:18   ` Christoph Hellwig

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=20031202020203.GA174948@sgi.com \
    --to=jeremy@sgi.com \
    --cc=andrew.vasquez@qlogic.com \
    --cc=jbarnes@SGI.com \
    --cc=jes@wildopensource.com \
    --cc=linux-scsi@vger.kernel.org \
    --cc=mdr@SGI.com \
    /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;
as well as URLs for NNTP newsgroup(s).