From: "Ville Syrjälä" <syrjala@sci.fi>
To: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Jon Smirl <jonsmirl@gmail.com>, Jon Smirl <jonsmirl@yahoo.com>,
dri-devel@lists.sourceforge.net,
Linux Fbdev development list
<linux-fbdev-devel@lists.sourceforge.net>,
xorg@lists.freedesktop.org
Subject: Re: radeon, apertures & memory mapping
Date: Mon, 14 Mar 2005 02:08:35 +0200 [thread overview]
Message-ID: <20050314000835.GA20393@sci.fi> (raw)
In-Reply-To: <1110757699.5787.196.camel@gaston>
On Mon, Mar 14, 2005 at 10:48:19AM +1100, Benjamin Herrenschmidt wrote:
>
> > > That shouldn't matter the page brought in would be for a speculative
> > > read and never accessed. It should just fall out of the cache and not
> > > be written back. There is only one cachable mapping. In this model
> > > writes are always followed by a flush before telling the GPU to access
> > > the memory that has just been written.
> >
> > What about this scenario?
> >
> > Speculative read -> AGP master writes new data -> CPU has invalid data in
> > cache :(
>
> First, we must be very careful with AGP master writes. I don't know if
> we do a lot of them currently, but I know a collection of north bridges
> that do not support them.
I don't think "normal" drivers do them at all. I did experiment with
DirectFB at one point and had it place all offscreen surfaces to AGP
memory. It worked really well on my hardware (G400 + VIA KT133
northbridge). I also tried it with PCI transfers and that too worked but
was naturally slower. I'd like to make DirectFB use AGP again since 32MB
of video memory isn't always enough.
> (Which is interesting, that means that if we want to copy something out
> of video memory, we can't write it to AGP memory and then read it, we
> need to actually do the blit from the CPU, good to know for our memory
> manager. That also means that we have a problem if the video memory
> isn't entirely accessible by the CPU ...)
What about PCI master writes? Are there bridges that don't support even
those?
> That's something we should probably think about doing properly: Have a
> list of AGP "issues" (errata ?) bits that are communicated by the AGP
> host driver to the DRM.
>
> At least all the early Apple AGP bridges don't do writes, and I remember
> we have trouble with a few x86 ones as well. There are also issues when
> a single AGP burst crosses a page boundary, and other things like that.
:(
--
Ville Syrjälä
syrjala@sci.fi
http://www.sci.fi/~syrjala/
-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_ide95&alloc_id\x14396&op=click
--
next prev parent reply other threads:[~2005-03-14 0:08 UTC|newest]
Thread overview: 106+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-03-13 1:35 radeon, apertures & memory mapping Benjamin Herrenschmidt
2005-03-13 3:22 ` Jon Smirl
2005-03-13 6:43 ` Benjamin Herrenschmidt
2005-03-13 16:22 ` Jon Smirl
2005-03-14 4:28 ` [Linux-fbdev-devel] " Michel Dänzer
2005-03-14 7:12 ` Benjamin Herrenschmidt
2005-03-14 16:20 ` Michel Dänzer
2005-03-14 21:52 ` Benjamin Herrenschmidt
2005-03-14 22:12 ` Michel Dänzer
2005-03-14 22:37 ` FB model basic issues (WAS: radeon, apertures & memory mapping) Benjamin Herrenschmidt
2005-03-15 4:59 ` Michel Dänzer
2005-03-15 5:14 ` Jon Smirl
2005-03-15 6:01 ` Ville Syrjälä
2005-03-15 6:59 ` Benjamin Herrenschmidt
2005-03-15 14:00 ` Ville Syrjälä
2005-03-15 14:29 ` Jon Smirl
2005-03-15 17:25 ` Jan Gukelberger
2005-03-15 23:34 ` Benjamin Herrenschmidt
2005-03-15 8:51 ` Geert Uytterhoeven
2005-03-15 13:36 ` [Linux-fbdev-devel] " Ville Syrjälä
2005-03-15 23:33 ` Benjamin Herrenschmidt
2005-03-15 23:37 ` Antonino A. Daplas
2005-03-15 23:50 ` [Linux-fbdev-devel] " Benjamin Herrenschmidt
2005-03-16 1:47 ` Ville Syrjälä
2005-03-16 1:51 ` Benjamin Herrenschmidt
2005-03-16 19:51 ` Ville Syrjälä
2005-03-16 21:00 ` Michel Dänzer
2005-03-16 21:07 ` Ville Syrjälä
2005-03-16 23:28 ` Benjamin Herrenschmidt
2005-03-16 23:53 ` Michel Dänzer
2005-03-16 23:25 ` [Linux-fbdev-devel] " Benjamin Herrenschmidt
[not found] ` <1110929582.25201.34.camel@gaston>
2005-03-16 5:21 ` Michel Dänzer
2005-03-16 6:31 ` Benjamin Herrenschmidt
2005-03-16 14:09 ` Ville Syrjälä
2005-03-16 16:48 ` Adam Jackson
2005-03-16 23:20 ` Benjamin Herrenschmidt
2005-03-15 11:30 ` Roland Scheidegger
2005-03-15 13:27 ` Ville Syrjälä
2005-03-15 17:17 ` Michel Dänzer
2005-03-16 3:09 ` Benjamin Herrenschmidt
2005-03-16 20:08 ` Ville Syrjälä
2005-03-16 20:42 ` [Linux-fbdev-devel] " Michel Dänzer
2005-03-16 23:26 ` Benjamin Herrenschmidt
2005-03-16 23:35 ` Jon Smirl
2005-03-17 0:06 ` [Linux-fbdev-devel] " Benjamin Herrenschmidt
2005-03-16 20:58 ` Alex Deucher
2005-03-16 21:08 ` Ville Syrjälä
2005-03-16 21:17 ` Alex Deucher
2005-03-16 23:30 ` Benjamin Herrenschmidt
2005-03-17 0:47 ` Ville Syrjälä
2005-03-17 1:12 ` Benjamin Herrenschmidt
2005-03-17 1:25 ` Ville Syrjälä
2005-03-17 2:00 ` Benjamin Herrenschmidt
2005-03-17 9:08 ` Geert Uytterhoeven
2005-03-17 19:54 ` [Linux-fbdev-devel] " Ville Syrjälä
2005-03-15 22:44 ` Benjamin Herrenschmidt
2005-03-15 23:05 ` Ville Syrjälä
2005-03-15 23:49 ` Benjamin Herrenschmidt
2005-03-16 20:55 ` Ville Syrjälä
2005-03-16 23:27 ` Benjamin Herrenschmidt
2005-03-17 0:14 ` Ville Syrjälä
2005-03-17 0:28 ` Benjamin Herrenschmidt
2005-03-15 6:45 ` Benjamin Herrenschmidt
2005-03-15 5:30 ` Jon Smirl
2005-03-15 6:58 ` Benjamin Herrenschmidt
2005-03-15 21:58 ` Ian Romanick
2005-03-13 3:55 ` radeon, apertures & memory mapping Vladimir Dergachev
2005-03-13 6:44 ` Benjamin Herrenschmidt
2005-03-13 8:22 ` Ville Syrjälä
2005-03-13 9:20 ` Benjamin Herrenschmidt
2005-03-13 10:39 ` Ville Syrjälä
2005-03-13 12:04 ` Benjamin Herrenschmidt
2005-03-13 16:19 ` Jon Smirl
2005-03-13 17:47 ` Ville Syrjälä
2005-03-13 17:56 ` [Linux-fbdev-devel] " Jon Smirl
2005-03-13 21:52 ` Benjamin Herrenschmidt
2005-03-13 22:17 ` Jon Smirl
2005-03-13 22:41 ` Benjamin Herrenschmidt
2005-03-13 21:51 ` Benjamin Herrenschmidt
2005-03-13 21:49 ` Benjamin Herrenschmidt
2005-03-13 22:10 ` Jon Smirl
2005-03-13 22:20 ` Benjamin Herrenschmidt
2005-03-13 23:00 ` Jon Smirl
2005-03-13 23:11 ` Benjamin Herrenschmidt
2005-03-13 23:27 ` Ville Syrjälä
2005-03-13 23:48 ` Benjamin Herrenschmidt
2005-03-14 0:08 ` Ville Syrjälä [this message]
2005-03-14 0:10 ` Benjamin Herrenschmidt
2005-03-14 0:25 ` Jon Smirl
2005-03-14 0:39 ` Ville Syrjälä
2005-03-14 1:02 ` Benjamin Herrenschmidt
2005-03-14 0:54 ` Benjamin Herrenschmidt
2005-03-14 0:41 ` Paul Mackerras
2005-03-14 0:56 ` Ville Syrjälä
2005-03-14 1:05 ` [Linux-fbdev-devel] " Benjamin Herrenschmidt
2005-03-14 1:47 ` Jon Smirl
2005-03-14 3:59 ` Benjamin Herrenschmidt
2005-03-14 4:07 ` Paul Mackerras
2005-03-14 4:40 ` Jon Smirl
2005-03-14 5:09 ` [Linux-fbdev-devel] " Benjamin Herrenschmidt
2005-03-14 16:30 ` Soeren Sandmann
2005-03-14 16:40 ` Ville Syrjälä
2005-03-14 21:54 ` Benjamin Herrenschmidt
2005-03-14 16:16 ` Ville Syrjälä
2005-03-14 21:27 ` Donnie Berkholz
2005-03-14 21:51 ` Benjamin Herrenschmidt
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=20050314000835.GA20393@sci.fi \
--to=syrjala@sci.fi \
--cc=benh@kernel.crashing.org \
--cc=dri-devel@lists.sourceforge.net \
--cc=jonsmirl@gmail.com \
--cc=jonsmirl@yahoo.com \
--cc=linux-fbdev-devel@lists.sourceforge.net \
--cc=xorg@lists.freedesktop.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).