On Thu, 03 May 2012 10:35:27 +0200 Peter Zijlstra <peterz@xxxxxxxxxxxxx> wrote: > On Thu, 2012-05-03 at 17:12 +0900, Takuya Yoshikawa wrote: > > > > Although we can do that using spin_is_contended() and cond_resched(), > > changing cond_resched_lock() to satisfy such a need is another option. > > > Yeah, not a pretty patch. Changing all cond_resched_lock() sites just to > change one and in such an ugly way too. > > So what's the impact of making spin_needbreak() work for !PREEMPT? Although the real use case is out of this RFC patch, we are now discussing a case in which we may hold a spin_lock for long time, ms order, depending on workload; and in that case, other threads -- VCPU threads -- should be given higher priority for that problematic lock. I wanted to hear whether other users also have similar needs. If so, it may be worth making the API a bit more generic. But I could not find a clean solution for that. Do you think that using spin_is_contended() directly is the way to go? Thanks, Takuya -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html