diff options
author | Pekka Paalanen <pq@iki.fi> | 2008-05-12 15:21:03 -0400 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2008-05-24 05:27:32 -0400 |
commit | 87e547fe41a8b57d6d80afc67a0031fbe477eb0d (patch) | |
tree | 96b34f7c11268ebb58a470faf858132a69b82639 /arch/x86/mm/mmio-mod.c | |
parent | 970e6fa03885f32cc43e42cb08c73a5f54cd8bd9 (diff) |
x86 mmiotrace: fix page-unaligned ioremaps
mmiotrace_ioremap() expects to receive the original unaligned map phys address
and size. Also fix {un,}register_kmmio_probe() to deal properly with
unaligned size.
Signed-off-by: Pekka Paalanen <pq@iki.fi>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/mm/mmio-mod.c')
-rw-r--r-- | arch/x86/mm/mmio-mod.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/x86/mm/mmio-mod.c b/arch/x86/mm/mmio-mod.c index a8d2a0019da4..278998c1998f 100644 --- a/arch/x86/mm/mmio-mod.c +++ b/arch/x86/mm/mmio-mod.c | |||
@@ -280,6 +280,7 @@ static void ioremap_trace_core(unsigned long offset, unsigned long size, | |||
280 | { | 280 | { |
281 | static atomic_t next_id; | 281 | static atomic_t next_id; |
282 | struct remap_trace *trace = kmalloc(sizeof(*trace), GFP_KERNEL); | 282 | struct remap_trace *trace = kmalloc(sizeof(*trace), GFP_KERNEL); |
283 | /* These are page-unaligned. */ | ||
283 | struct mmiotrace_map map = { | 284 | struct mmiotrace_map map = { |
284 | .phys = offset, | 285 | .phys = offset, |
285 | .virt = (unsigned long)addr, | 286 | .virt = (unsigned long)addr, |