On Fri, Aug 15, 2014 at 02:08:56PM +0200, Lars Persson wrote: > This one was tricky to track down. We had sporadic SIGILLs in > multi-threaded apps for a long time. Eventually we got a test case that > triggered more page cache evictions and the frequency of SIGILLs > increased enough to catch it with a JTAG debugger. > > Kernel call stacks showed one thread handling an illegal instruction > exception while another thread was somewhere around the > set_pte_at/update_mmu_cache calls for the same page. Some of those coherency bugs are almost impossibly hard to track down and fix properly! Anyway, I'm going to send the outlined version of your fix to Linus. Ralf