All of lore.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.