On Wed, May 04, 2016 at 02:16:11PM +0000, Vineet Gupta wrote: > > static inline void *kmap_atomic(struct page *page) > > { > > preempt_disable(); > > pagefault_disable(); > > if (!PageHighMem(page)) > > return page_address(page); > > > > return __kmap_atomic(page); > > } > > I actually want to return early for !PageHighMem and avoid the pointless 2 > LD-ADD-ST to memory for map and 2 LD-SUB-ST for unmap for regular pages for such > cases. So I'm fairly sure people rely on the fact you cannot have pagefault inside a kmap_atomic(). But you could potentially get away with leaving preemption enabled. Give it a try, see if something goes *bang* ;-) -- To unsubscribe from this list: send the line "unsubscribe linux-arch" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html