linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
To: Guido Guenther <agx@sigxcpu.org>
Cc: Linus Torvalds <torvalds@osdl.org>,
	adaplas@pol.net,
	Linux Fbdev development list 
	<linux-fbdev-devel@lists.sourceforge.net>,
	Linux Kernel list <linux-kernel@vger.kernel.org>,
	Andrew Morton <akpm@osdl.org>
Subject: Re: [Linux-fbdev-devel] Re: [PATCH] fbdev: Fix IO access in rivafb
Date: Sat, 13 Nov 2004 12:39:32 +1100	[thread overview]
Message-ID: <1100309972.20511.103.camel@gaston> (raw)
In-Reply-To: <20041112191852.GA4536@bogon.ms20.nix>

On Fri, 2004-11-12 at 20:18 +0100, Guido Guenther wrote:

> O.k., it was the __raw_{write,read}b which broke things, not the
> "alignment". This one works:
> 
> diff -u -u linux-2.6.10-rc1-mm5.orig/drivers/video/riva/riva_hw.h linux-2.6.10-rc1-mm5/drivers/video/riva/riva_hw.h
> --- linux-2.6.10-rc1-mm5.orig/drivers/video/riva/riva_hw.h	2004-11-12 13:42:54.000000000 +0100
> +++ linux-2.6.10-rc1-mm5/drivers/video/riva/riva_hw.h	2004-11-12 17:39:22.000000000 +0100
> @@ -75,8 +75,8 @@
>   */
>  #include <asm/io.h>
>  
> -#define NV_WR08(p,i,d)  (__raw_writeb((d), (void __iomem *)(p) + (i)))
> -#define NV_RD08(p,i)    (__raw_readb((void __iomem *)(p) + (i)))
> +#define NV_WR08(p,i,d)  (writeb((d), (void __iomem *)(p) + (i)))
> +#define NV_RD08(p,i)    (readb((void __iomem *)(p) + (i)))

Interesting. The only difference here should be barriers. I hate the
lack of barriers in that driver ... I'm not sure the driver may not have
other bugs related to the lack of them in the 16 and 32 bits accessors.
It does use non-barrier version on purpose in some accel ops though,
when filling the fifo with pixels, but that's pretty much the only case
where it makes sense.

> There aren't any, I actually attached the wrong patch. The non-working
> version has __raw_{read,write}b8 instead of {read,write}b8. In 2.6.9
> riva_hw.h used {in,out}_8 for NV_{RD,WR}08 so using the "non-raw"
> writeb/readb now looks correct since these map to {in,out}_8 now.

{in,out}_8 are ppc-specific things that are identical to readb/writeb
indeed, with barriers.

Ben.



  parent reply	other threads:[~2004-11-13  1:45 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <200411080521.iA85LbG6025914@hera.kernel.org>
2004-11-08  5:57 ` [PATCH] fbdev: Fix IO access in rivafb Benjamin Herrenschmidt
2004-11-08  8:33   ` [Linux-fbdev-devel] " Antonino A. Daplas
2004-11-08 21:50     ` Benjamin Herrenschmidt
2004-11-08 22:18       ` Antonino A. Daplas
2004-11-08  9:06   ` Antonino A. Daplas
2004-11-08  9:55     ` Geert Uytterhoeven
2004-11-08 15:21     ` Linus Torvalds
2004-11-08 20:02       ` Antonino A. Daplas
2004-11-08 20:13         ` Linus Torvalds
2004-11-08 22:08           ` Antonino A. Daplas
2004-11-08 22:25             ` Linus Torvalds
2004-11-12 12:51               ` Guido Guenther
2004-11-12 16:01                 ` Linus Torvalds
2004-11-12 19:18                   ` Guido Guenther
2004-11-12 19:32                     ` Linus Torvalds
2004-11-13 12:57                       ` Guido Guenther
2004-11-13  1:39                     ` Benjamin Herrenschmidt [this message]
2004-11-13 11:22                       ` Guido Guenther
2004-11-13 12:00                         ` Antonino A. Daplas
2004-11-13 13:02                           ` Guido Guenther
2004-11-13 18:00                           ` Linus Torvalds
2004-11-13 21:29                             ` Antonino A. Daplas
2004-11-13 22:54                               ` Guido Guenther
2004-11-13 23:52                               ` Benjamin Herrenschmidt
2004-11-13 23:49                         ` Benjamin Herrenschmidt
2004-11-13 12:20       ` Yasushi SHOJI
2004-11-19  1:48         ` readl/writel: swap or not to swap (was: [PATCH] fbdev: Fix IO access in rivafb) Yasushi SHOJI
2004-11-19  4:09           ` readl/writel: swap or not to swap Jeff Garzik
2004-11-19  7:24             ` Yasushi SHOJI
2004-11-08 21:52     ` [Linux-fbdev-devel] Re: [PATCH] fbdev: Fix IO access in rivafb Benjamin Herrenschmidt
2004-11-08 23:07       ` Giuseppe Bilotta
2004-11-13 23:22         ` Guido Guenther

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=1100309972.20511.103.camel@gaston \
    --to=benh@kernel.crashing.org \
    --cc=adaplas@pol.net \
    --cc=agx@sigxcpu.org \
    --cc=akpm@osdl.org \
    --cc=linux-fbdev-devel@lists.sourceforge.net \
    --cc=linux-kernel@vger.kernel.org \
    --cc=torvalds@osdl.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;
as well as URLs for NNTP newsgroup(s).