All of lore.kernel.org
 help / color / mirror / Atom feed
From: Christoph Hellwig <hch@infradead.org>
To: Michael Reed <mdr@sgi.com>
Cc: Michael Joosten <michael.joosten@c-lab.de>,
	linux-scsi@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH]: Re: qla1280.c broken on SGI visws, PCI coherency problem
Date: Mon, 12 Dec 2005 21:24:27 +0000	[thread overview]
Message-ID: <20051212212427.GA9139@infradead.org> (raw)
In-Reply-To: <439DE50B.90007@sgi.com>

On Mon, Dec 12, 2005 at 03:00:59PM -0600, Michael Reed wrote:
> (The subject of this email isn't quite accurate.  It's not
> a pci coherency problem, it's a pio write ordering problem.)
> 
> I've been asked to pass along the suggestion that "mmiowb"
> should be implemented for the platform.
> 
> Given that I've been unable to unearth the chipset documentation
> for the Vis WS, I can only hope that you've got some good ideas
> on how this might be accomplished.
> 
> I agree that replacing the pio read which flushed the preceeding
> pio write with mmiowb() is what has likely broken the driver.  If you
> restore them,  please make it either mmiowb or pio read, but not both.
> 
> Perhaps something like this?  It's not the most elegant solution....

Yeah, it's not that nice.  After all we don't use mmio at all on visw but
pio.  So why do we need the flushing at all?

> --- old/drivers/scsi/qla1280.c        2005-12-05 12:39:36.000000000 -0600
> +++ new/drivers/scsi/qla1280.c      2005-12-12 14:42:11.146215122 -0600
> @@ -401,6 +401,10 @@
>  #include "ql1280_fw.h"
>  #include "ql1040_fw.h"
> 
> +#ifdef CONFIG_X86_VISWS
> +  #undef mmiowb
> +  #define mmiowb() RD_REG_WORD(&ha->iobase->id_l)
> +#endif

Macros with implicit arguments are pretty horrible.  If we want to go down
that road we should add a macro that expands to either version depending
on the config flags.

While we're at it, does anyone know whyt the ioread* interface doesn't
provide the _relaxed version?  I'd really love to switch qla1280 over to it
given that it needs to support both mmio and pio.


  reply	other threads:[~2005-12-12 21:24 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-12-09 19:11 qla1280.c broken on SGI visws, PCI coherency problem Michael Joosten
2005-12-09 23:48 ` Michael Reed
2005-12-12 21:00   ` [PATCH]: " Michael Reed
2005-12-12 21:24     ` Christoph Hellwig [this message]
2005-12-12 21:31       ` Jesse Barnes
2005-12-12 21:47     ` James Bottomley
2005-12-12 23:00       ` Michael Reed
2005-12-13 13:22         ` Michael Reed
2005-12-13 14:50           ` James Bottomley
2005-12-13 18:15             ` Michael Reed
2005-12-14  5:00               ` Michael Joosten
2005-12-14 17:29                 ` James Bottomley
2005-12-15  1:17                   ` Michael Joosten
2005-12-15  2:20                     ` Jeremy Higdon
2005-12-15 16:21                       ` Michael Joosten
2005-12-14  1:39             ` Jeremy Higdon
2005-12-14  3:16               ` Michael Reed
2005-12-14  1:28       ` Jeremy Higdon
2005-12-14  4:59         ` James Bottomley
2005-12-14 23:56           ` Jeremy Higdon
2005-12-15  0:14             ` Michael Reed
2005-12-15  1:13               ` Jeremy Higdon

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=20051212212427.GA9139@infradead.org \
    --to=hch@infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-scsi@vger.kernel.org \
    --cc=mdr@sgi.com \
    --cc=michael.joosten@c-lab.de \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.