lkml.org 
[lkml]   [2009]   [Nov]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: [PATCH -tip] x86: fix iommu=soft boot option
From
On Wed, 25 Nov 2009 01:45:10 -0800
Yinghai Lu <yinghai@kernel.org> wrote:

> Ingo Molnar wrote:
> > * FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> wrote:
> >
> >> On Wed, 25 Nov 2009 00:54:34 -0800
> >> Yinghai Lu <yinghai@kernel.org> wrote:
> >>
> >>> only remember that SLES 9 SP3 (?) at some point has problem with AMD
> >>> 10h ( quad core version) when memory > 4 g (with USB controller ?)
> >>> because the gart code only check K8 device id, and didn't check 10h
> >>> device id. so gart iommu is not used. and happenly swiotlb code has
> >>> problem with that kernel version.
> >>>
> >>> thinking we should keep old behavior, until some day we can remove
> >>> them all.
> >> Why? We are talking about changing 2.6.33 behavior. swiotlb in 2.6.33
> >> should be the safe option.
> >
> > If that behavior was relied on for suspected (or real) bugs in the
> > swiotlb code then i agree that we should do this change. (and fix any
> > bugs if they still occur.)
>
> after look at gart_iommu_hole_init() closely,
>
> should be
>
> for AMD 64bit, MEM > 4g, no AGP, iommu=soft
> 1. if BIOS have correct gart setting, Kernel will use swiotlb
> 2. if BIOS does not have correct gart setting, Kernel will use swiotlb
>
> and for the all the cases, the codes after that
> /* Fix up the north bridges */
> ...
>
> will disable the translation...

What code are you talking about? GART translation is disabled at boot
time (if not, we are dead because some GART hardware are broken so we
need to fix things before enabling them).


> so even swiotlb=soft is used, gart_iommu_hole_init() still need to
> be called. to make sure aperture is disabled somehow.

I don't think so.


\
 
 \ /
  Last update: 2009-11-25 12:07    [W:0.101 / U:0.052 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site