Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1381381

Re: [PATCH v3 1/6] rtmutex: Deboost before waking up the top waiter

From Xunlei Pang <xpang@redhat.com>
Newsgroups linux.kernel
Subject Re: [PATCH v3 1/6] rtmutex: Deboost before waking up the top waiter
Date 2016-04-18 10:50 +0200
Message-ID <rpd2x-2oe-11@gated-at.bofh.it> (permalink)
References <rnNMR-Ww-3@gated-at.bofh.it> <rnNMS-Ww-23@gated-at.bofh.it> <rpcJc-2fT-17@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On 2016/04/18 at 16:23, Thomas Gleixner wrote:
> On Thu, 14 Apr 2016, Xunlei Pang wrote:
>> We should deboost before waking the high-prio task such that
>> we don't run two tasks with the 'same' priority.
> No. This is fundamentaly broken.
>  
> T1 (prio 0)	lock(X)
>
> -->	 	preemption
>
> T2 (prio 10)	lock(X)
>    	 	boost(T1)
> 		schedule()
>
> T1 (prio 10)	unlock(X)

We add a preempt_disable() before deboost to avoid the breakage,
there's also some comment about this in the patch's code.

Regards,
Xunlei

>    	 	deboost()
>    (prio 0) 
>
> -->		preemption
>
> T3 (prio 5)	....
>
> Classic priority inversion enabled by a mechanism to avoid it. Brilliant
> stuff.
>
> Thanks,
>
> 	tglx

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Re: [PATCH v3 1/6] rtmutex: Deboost before waking up the top  waiter Thomas Gleixner <tglx@linutronix.de> - 2016-04-18 10:30 +0200
  Re: [PATCH v3 1/6] rtmutex: Deboost before waking up the top waiter Xunlei Pang <xpang@redhat.com> - 2016-04-18 10:50 +0200
    Re: [PATCH v3 1/6] rtmutex: Deboost before waking up the top  waiter Thomas Gleixner <tglx@linutronix.de> - 2016-04-18 11:10 +0200
      Re: [PATCH v3 1/6] rtmutex: Deboost before waking up the top waiter Xunlei Pang <xpang@redhat.com> - 2016-04-18 11:50 +0200
      Re: [PATCH v3 1/6] rtmutex: Deboost before waking up the top waiter Peter Zijlstra <peterz@infradead.org> - 2016-04-20 14:30 +0200
        Re: [PATCH v3 1/6] rtmutex: Deboost before waking up the top  waiter Thomas Gleixner <tglx@linutronix.de> - 2016-04-20 14:50 +0200
          Re: [PATCH v3 1/6] rtmutex: Deboost before waking up the top waiter Peter Zijlstra <peterz@infradead.org> - 2016-04-20 15:20 +0200

csiph-web