lkml.org 
[lkml]   [2008]   [Jun]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
SubjectRe: pci-gart_64.c: could we get better explanation?
On Tue 2008-05-27 05:51:39, Benjamin Herrenschmidt wrote:
>
> On Mon, 2008-05-26 at 20:47 +0200, Pavel Machek wrote:
> > Hi!
> >
> > +++ b/arch/x86/kernel/pci-gart_64.c
> > @@ -774,6 +778,7 @@ #endif
> >
> > /*
> > * Try to workaround a bug (thanks to BenH)
> > * Set unmapped entries to a scratch page instead of 0.
> > * Any prefetches that hit unmapped entries won't get an bus abort
> >
> > Could someone explain? Which bug is being worked around? CPUs
> > prefetching over NULL?
>
> P2P bridge prefetching on DMA reads.

---
Add better explanation to pci-gart.

Signed-off-by: Pavel Machek <pavel@suse.cz>

diff --git a/arch/x86/kernel/pci-gart_64.c b/arch/x86/kernel/pci-gart_64.c
index 838a1d3..e72e583 100644
--- a/arch/x86/kernel/pci-gart_64.c
+++ b/arch/x86/kernel/pci-gart_64.c
@@ -800,10 +800,10 @@ #endif
wbinvd();

/*
- * Try to workaround a bug (thanks to BenH)
+ * Try to workaround a bug (thanks to BenH):
* Set unmapped entries to a scratch page instead of 0.
* Any prefetches that hit unmapped entries won't get an bus abort
- * then.
+ * then. (P2P bridge may be prefetching on DMA reads).
*/
scratch = get_zeroed_page(GFP_KERNEL);
if (!scratch)
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html


\
 
 \ /
  Last update: 2008-06-26 00:27    [from the cache]
©2003-2014 Jasper Spaans. Advertise on this site