[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20081014201447I.fujita.tomonori@lab.ntt.co.jp>
Date: Tue, 14 Oct 2008 20:14:44 +0900
From: FUJITA Tomonori <fujita.tomonori@....ntt.co.jp>
To: nico@...ir.org
Cc: yhlu.kernel@...il.com, mingo@...e.hu,
fujita.tomonori@....ntt.co.jp, linux-kernel@...r.kernel.org,
linux-usb@...r.kernel.org
Subject: Re: USB problem on x86_64: nommu_map_single() issue?
On Tue, 14 Oct 2008 13:05:39 +0200
Nicolas Bareil <nico@...ir.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
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
CC'ed Yinghai and Ingo, who might have clues.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists