Messages in this thread | | | Date | Fri, 13 Nov 2009 15:11:19 +0000 | From | Russell King <> | Subject | d451564 breakage |
| |
Change:
highmem: Fix debug_kmap_atomic() to also handle KM_IRQ_PTE, KM_NMI, and KM_NMI_PTE
Appears to break ARM:
mm/highmem.c: In function ‘debug_kmap_atomic’: mm/highmem.c:436: error: ‘KM_NMI’ undeclared (first use in this function) mm/highmem.c:436: error: (Each undeclared identifier is reported only once mm/highmem.c:436: error: for each function it appears in.) mm/highmem.c:436: error: ‘KM_NMI_PTE’ undeclared (first use in this function) mm/highmem.c:443: error: ‘KM_IRQ_PTE’ undeclared (first use in this function) make[2]: *** [mm/highmem.o] Error 1 make[1]: *** [mm] Error 2
I'd prefer not to have to add these definitions just so that highmem debugging can work for two reasons:
1. either we allocate mappings for these which will never be used, which unnecessarily wastes precious virtual memory space.
2. we define them to be some other KM_* value and hope that they never get used. If they do get used, we'll never know by way of compiler error but could result in silent data corruption.
The only sane alternative I can see would be to define these as KM_TYPE_NR and either ensure that kmap_atomic() always fails for out-of-bounds kmap types (more preferable to catch problems but has a performance impact) or we have the kmap debugging detect this as well.
Any preferences?
-- Russell King Linux kernel 2.6 ARM Linux - http://www.arm.linux.org.uk/ maintainer of: -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |