> the memory barrier is really necessary (as pointed out earlier in the list > by Nishanth Aravamudan)? if not, __set_current_state does the job. > > I'd appreciate some notes/thoughts/tips/whatever on which conditions a > memory barrier is really needed, or, more clearly, when the absence of a > memory barrier breaks stuff. > > TIA :) As said in the TODO: "... Don't forget to set_current_state(TASK_{,UN}INTERRUPTIBLE); before schedule*(). ..." And in this case, it is just before schedule, so I considered to change it. Maybe the use of __set_current is for places where there is not schedule? (Just a try :p)