From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ivo Sieben Subject: Re: [PATCH] tty: Only wakeup the line discipline idle queue when queue is active Date: Wed, 16 Jan 2013 13:02:51 +0100 Message-ID: References: <1355842130-15482-1-git-send-email-meltedpianoman@gmail.com> <50E3FDFA.4070203@suse.cz> <20130102114311.66215bf5@pyramind.ukuu.org.uk> <50E4854E.8060801@suse.cz> <50F66120.50704@linux.vnet.ibm.com> <50F683D9.1080908@linux.vnet.ibm.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Return-path: In-Reply-To: <50F683D9.1080908@linux.vnet.ibm.com> Sender: linux-kernel-owner@vger.kernel.org To: Preeti U Murthy Cc: Peter Zijlstra , Ingo Molnar , linux-kernel@vger.kernel.org, Andi Kleen , Oleg Nesterov , Jiri Slaby , Alan Cox , linux-serial@vger.kernel.org, Alan Cox , Greg KH List-Id: linux-serial@vger.kernel.org 2013/1/16 Preeti U Murthy : > > Yes.Thank you very much for the explanation :) But I dont see how the > context switching goes away with your patch.With your patch, when the > higher priority thread comes in when the lower priority thread is > running in the critical section,it will see the wait queue empty and > "continue its execution" without now wanting to enter the critical > section.So this means it will preempt the lower priority thread because > it is not waiting on a lock anyway.There is a context switch here right? > I dont see any problem in scheduling due to this,but I do think your > patch is essential. > I don't have a problem that there is a context switch to the high priority process: it has a higher priority, so it probably is more important. My problem is that even when the waitqueue is empty, the high priority thread has a risk to block on the spinlock needlessly (causing context switches to low priority task and back to the high priority task) Regards, Ivo Sieben