On Fri, 30 Jan 2015, James Hogan wrote: > > Hmm, why can a call to `printk' cause a TLB miss, what's so special about > > this function? Does it use kernel mapped addresses for any purpose such > > as `vmalloc'? > > It would be the fact netconsole (or whatever other console is in use) is > built as a kernel module, memory for which is allocated from the vmalloc > area. Ah, I see, thanks for enlightening me. But in that case wouldn't it be possible to postpone console output from `printk' until it is safe to access the device? In a manner similar to how for example we handle calls to `printk' made from the hardirq context. That would make things less fragile. Maciej