public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [BUG][PATCH 0/2 (v.2)] x86: ioremap() problem in X86_32 PAE
@ 2010-06-17  1:28 Kenji Kaneshige
  2010-06-17  1:30 ` [PATCH 1/2] x86: ioremap: fix wrong physical address handling Kenji Kaneshige
  2010-06-17  1:31 ` [PATCH 2/2] x86: ioremap: fix normal ram range check Kenji Kaneshige
  0 siblings, 2 replies; 20+ messages in thread
From: Kenji Kaneshige @ 2010-06-17  1:28 UTC (permalink / raw)
  To: tglx, mingo, hpa, linux-kernel
  Cc: linux-pci, macro, kamezawa.hiroyu, eike-kernel

Hi,

Here is a updated version (v.2) of patchset to fix ioremap() problem
found in x86_32 PAE mode. The problem is that ioremap() maps wrong
address for the devices to which phisical addresses higer than 32-bit
are assigned (ioat device in my case).

Changelog
----
v.1 => v.2:
Thanks to the feedbacks, I found that some of my v.1 patches are totally
wrong because they were based on my mis-understanding about architectural
limit and linux memory management limit of physical address. In addition,
it turned out that there are bugs that handles physical address improperly
(higher 32-bits are cleared unexpectedly) also in the other places in the
ioremap() code path. Major changes are
- Removed wrong changes against phys_addr_valid() ([PATCH 2/4] in v.1).
- Removed wrong changes against wraning message in ioremap() ([PATCH 3/4]
  in v.1)
- Changed not to use PHYSICAL_PAGE_MASK because the PHYSICAL_PAGE_MASK
  would not work for physical address higher than 44-bit.
- Added fixes for remaining bugs of physical address handling in ioremap()
  code path according to the feedbacks.
- Added a fix for s_show() in vmalloc.c to show high physical address properly.
----

I also found the bug in PCI MSI-X code that handles physical address
improperly, which causes the problem MSI-X doesn't work on my devices. I'll
send a patch for this to PCI mail list separately.

The v.2 patches are:

- [PATCH 1/2] x86: ioremap: fix wrong physical address handling
- [PATCH 2/2] x86: ioremap: fix normal ram range check

Thanks,
Kenji Kaneshige


^ permalink raw reply	[flat|nested] 20+ messages in thread

end of thread, other threads:[~2010-07-09 18:44 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-06-17  1:28 [BUG][PATCH 0/2 (v.2)] x86: ioremap() problem in X86_32 PAE Kenji Kaneshige
2010-06-17  1:30 ` [PATCH 1/2] x86: ioremap: fix wrong physical address handling Kenji Kaneshige
2010-06-17  2:50   ` Matthew Wilcox
2010-06-17  4:22     ` H. Peter Anvin
2010-06-17  4:55       ` Kenji Kaneshige
2010-06-17  6:03         ` H. Peter Anvin
2010-06-17  6:21           ` Kenji Kaneshige
2010-06-17  9:35           ` Jeremy Fitzhardinge
2010-06-17  9:38             ` Jeremy Fitzhardinge
2010-06-17 13:46             ` H. Peter Anvin
2010-06-18  0:32               ` Kenji Kaneshige
2010-06-18  0:22             ` Kenji Kaneshige
2010-07-09  4:24             ` Simon Horman
2010-07-09  5:33               ` Jeremy Fitzhardinge
2010-07-09  6:10                 ` Simon Horman
2010-06-17  6:28     ` Kenji Kaneshige
2010-07-09 18:31   ` [tip:x86/mm] x86, pae: Fix handling of large physical addresses in ioremap tip-bot for Kenji Kaneshige
2010-07-09 18:43     ` H. Peter Anvin
2010-06-17  1:31 ` [PATCH 2/2] x86: ioremap: fix normal ram range check Kenji Kaneshige
2010-07-09 18:31   ` [tip:x86/mm] x86, ioremap: Fix " tip-bot for Kenji Kaneshige

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox