lkml.org 
[lkml]   [2008]   [Oct]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: USB problem on x86_64: nommu_map_single() issue?
On Tue, Oct 14, 2008 at 4:14 AM, FUJITA Tomonori
<fujita.tomonori@lab.ntt.co.jp> wrote:
> On Tue, 14 Oct 2008 13:05:39 +0200
> Nicolas Bareil <nico@chdir.org> wrote:
>
>> On Tue, Oct 14, 2008 at 08:00:09PM +0900, FUJITA Tomonori wrote:
>> > > > Is this a regression? Did it work on earlier kernels?
>> > >
>> > > Yes this is a regression: USB works in 2.6.26.x with (almost) the same configuration.
>> >
>> > With old kernels, you can find something like the following line in
>> > the boot log?
>> >
>> > PCI-DMA: Using software bounce buffering for IO (SWIOTLB)
>>
>> Indeed, I have this line:
>>
>> Oct 14 12:46:29 brew kernel: [ 0.004000] Calgary: detecting Calgary via BIOS EBDA area
>> Oct 14 12:46:29 brew kernel: [ 0.004000] Calgary: Unable to locate Rio Grande table in EBDA - bailing!
>> Oct 14 12:46:29 brew kernel: [ 0.004000] PCI-DMA: Using software bounce buffering for IO (SWIOTLB)
>> Oct 14 12:46:29 brew kernel: [ 0.004000] Placing software IO TLB between 0x4000000 - 0x8000000
>> Oct 14 12:46:29 brew kernel: [ 0.004000] Memory: 4055544k/4980736k available (2225k kernel code, 138092k reserved, 1079k data, 392k init)
>> Oct 14 12:46:29 brew kernel: [ 0.004000] CPA: page pool initialized 1 of 1 pages preallocated
>
> Probably, the changes to the initial memory setup code breaks the
> following code:
>
> void __init pci_swiotlb_init(void)
> {
> /* don't initialize swiotlb if iommu=off (no_iommu=1) */
> if (!iommu_detected && !no_iommu && max_pfn > MAX_DMA32_PFN)
> swiotlb = 1;
>
>
> SWIOTLB should be used for your box but somehow pci-nommu is used.
>
>
>> The whole kern.log and my config are available here :
>> http://chdir.org/~nbareil/kern.log
>
> The following part in the 2.6.27 boot log looks suspicious:
>
> Oct 13 15:43:48 brew kernel: last_pfn = 0x130000 max_arch_pfn = 0x3ffffffff
that is max_pfn
> Oct 13 15:43:48 brew kernel: x86 PAT enabled: cpu 0, old 0x7040600070406, new 0x7010600070106
> Oct 13 15:43:48 brew kernel: last_pfn = 0xcffc2 max_arch_pfn = 0x3ffffffff
that is max_low_pfn

YH


\
 
 \ /
  Last update: 2008-10-14 19:13    [W:0.072 / U:0.024 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site