When a VPE hits an exception and sets EXL, thread scheduling stops and the VPE is single-threaded coming into the exception. With dual VPEs, one of them hitting a fault won't prevent another from doing so, but all the usual rules of locking and ordering that are needed for any SMP kernel should apply and "just work". Is there any SMP support in the VM subsystem that's conditionally modfied or excluded for your 1004K kernel build? /K. On 5/26/2014 1:56 PM, Mikael Starvik wrote: > Hi! > > We have a 1004K core with two VPEs with two TCs per VPE. We have a problem that is hard to debug and would like to know if anyone has seen or solved such an issue. > > A multithreaded application is running. > Twoapplication threads are running in one TC each on the same VPE. > A piece of code has been paged out. > Application thread 1 tries to execute the code and thus gets a page fault. > While the page fault is being handled the second application thread enters the same code. > For some reason it looks like application thread 2 is allowed to execute even if the page fault handling has not been finished yet. > Thread 2 executes the wrong code and typically gets a reserved instruction exception. > > Any thougts? > > BR > /Mikael