lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<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

Powered by Openwall GNU/*/Linux Powered by OpenVZ