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 for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1206488005.10573.8.camel@pasglop>
Date:	Wed, 26 Mar 2008 10:33:25 +1100
From:	Benjamin Herrenschmidt <benh@...abs.org>
To:	Linus Torvalds <torvalds@...ux-foundation.org>
Cc:	Stefan Richter <stefanr@...6.in-berlin.de>,
	Ingo Molnar <mingo@...e.hu>,
	Thomas Gleixner <tglx@...utronix.de>,
	Ivan Kokshaysky <ink@...assic.park.msu.ru>,
	Thomas Meyer <thomas@...3r.de>,
	"Rafael J. Wysocki" <rjw@...k.pl>,
	LKML <linux-kernel@...r.kernel.org>,
	Adrian Bunk <bunk@...nel.org>,
	Andrew Morton <akpm@...ux-foundation.org>,
	Natalie Protasevich <protasnb@...il.com>
Subject: Re: ohci1394 problem (MMIO broken) (was 2.6.25-rc6-git6: Reported
	regressions from 2.6.24)

On Sat, 2008-03-22 at 14:33 -0700, Linus Torvalds wrote:
> 
> On Sat, 22 Mar 2008, Stefan Richter wrote:
> > 
> > Can an MMIO region reside above 0x1'0000'0000 on x86-32? ... Apparently yes,
> > if CONFIG_RESOURCES_64BIT=y.
> 
> Hmm. It would only work if PAE (HIGHMEM64G) is enabled too.
> 
> And obviously the hardware has to have working 64-bit BAR's.

On other platforms however, you can have mmio above 32 bits without
support for 64 bits BARs: the entire PCI bus mmio region can be mapped
up there.

That happens for example with 4xx embedded PowerPC. We deal with it just
fine, provided that nothing tries to stick a resource value into an
unsigned long but uses resource_size_t instead. Unfortunately, it's a
common bug, I've fixing drivers regulary.

It also appears that the iomap code on various archs is buggy too,
including the generic lib/iomap.c, thus pci_iomap is broken for archs
that can have 64 bits resources and use the version in lib/.

The good news is that I have done a patch to fix it, which has been
in -mm for about a month: iomap-fix-64-bits-resources-on-32-bits.patch

Cheers,
Ben.


--
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