login
Login
/
Register
Search
Search this site:
Forums
News
Blogs
Features
Site
Home
»
Mailing list archives
»
linux-kernel
»
2011
»
January
»
4
Re: [RFC][RT][PATCH 3/4] rtmutex: Revert Optimize rt lock wakeup
view
thread
Previous message: [
thread
] [
date
] [
author
]
Next message: [
thread
] [
date
] [
author
]
[view in full thread]
From: Peter W. Morreale
Subject:
Re: [RFC][RT][PATCH 3/4] rtmutex: Revert Optimize rt lock wakeup
Date: Tuesday, January 4, 2011 - 10:45 am
On Tue, 2011-01-04 at 12:27 -0500, Steven Rostedt wrote:
quoted text
> On Tue, 2011-01-04 at 10:15 -0700, Peter W. Morreale wrote: > > > My bad. I thought preemption did change task state. > > > > This still requires the owner to run through try_to_wake_up() and all > > its associated overhead only to find out that the waiter is running. > > > > The assumption I made when I suggested the original concept to Greg was > > that if the new owner is running, there is *nothing* to do wrt > > scheduling. If that was a wrong assumption, then, yes, drop the patch > > and clean things up. > > > > If that was a good assumption, then we are leaving 'cycles on the table' > > as waking up a running process is a non-zero-overhead path and that is a > > bad thing considering how many times spin_unlock() is called on an rt > > system. > > > > Bear in mind that this savings scales directly as the number of CPUs > > (assuming all are vectored on the lock). We can only have nr_cpus-1 > > spinning waiters at any given time, regardless of the number of tasks in > > contention. Perhaps this is too little to worry about on a 4way system, > > but I suspect that it could be substantial on larger systems. > > > > I'll be quiet now as I know little about the intricacies of > > preemption/scheduling (obviously) and like Greg, have been removed from > > RT kernel work for several years. <sigh> > > No need to be quiet ;-) > > I'm working on making it spin in TASK_RUNNING state if possible, but it > is making the code a bit more complex, as it seems that there is an > assumption with the wakeup and the changing of the current->state in the > rt_spin_lock_slowlock code all being under the lock->wait_lock. I think > I'll scrap this idea. > > That said, I think your wakeup patch may be worth while with Lai's new > code. His changes causes the owner to wake up the pending owner several > times, because the pending owner is never removed from the lock > wait_list. If a high prio task grabs and releases the same lock over and > over, if there is a waiter it will try to wake up that waiter each time. >
Oooohhhh I wonder if that would enable 'lock-stealing' for FIFO? IIRC, you came up with a ping-pong scenario that prevented its use there. -PWM
quoted text
> Thus, having your patch may prevent that unnecessary wakeup. > > I'll look more into it. Thanks! > > -- Steve > > >
--
unsubscribe notice
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to
majordomo@vger.kernel.org
More majordomo info at
http://vger.kernel.org/majordomo-info.html
Please read the FAQ at
http://www.tux.org/lkml/
Previous message: [
thread
] [
date
] [
author
]
Next message: [
thread
] [
date
] [
author
]
Messages in current thread:
[RFC][RT][PATCH 0/4] rtmutex: Simplify PI code
, Steven Rostedt
, (Thu Dec 23, 3:47 pm)
[RFC][RT][PATCH 1/4] rtmutex: Only save lock depth once in ...
, Steven Rostedt
, (Thu Dec 23, 3:47 pm)
[RFC][RT][PATCH 2/4] rtmutex: Try to take lock early in rt ...
, Steven Rostedt
, (Thu Dec 23, 3:47 pm)
[RFC][RT][PATCH 3/4] rtmutex: Revert Optimize rt lock wakeup
, Steven Rostedt
, (Thu Dec 23, 3:47 pm)
[RFC][RT][PATCH 4/4] rtmutex: Ensure only the top waiter o ...
, Steven Rostedt
, (Thu Dec 23, 3:47 pm)
Re: [RFC][RT][PATCH 3/4] rtmutex: Revert Optimize rt lock ...
, Gregory Haskins
, (Thu Dec 23, 9:45 pm)
Re: [RFC][RT][PATCH 3/4] rtmutex: Revert Optimize rt lock ...
, Steven Rostedt
, (Thu Dec 23, 9:54 pm)
Re: [RFC][RT][PATCH 3/4] rtmutex: Revert Optimize rt lock ...
, Peter W. Morreale
, (Fri Dec 24, 8:47 am)
Re: [RFC][RT][PATCH 3/4] rtmutex: Revert Optimize rt lock ...
, Gregory Haskins
, (Tue Dec 28, 7:06 am)
Re: [RFC][RT][PATCH 3/4] rtmutex: Revert Optimize rt lock ...
, Steven Rostedt
, (Mon Jan 3, 12:06 pm)
Re: [RFC][RT][PATCH 3/4] rtmutex: Revert Optimize rt lock ...
, Steven Rostedt
, (Mon Jan 3, 1:22 pm)
Re: [RFC][RT][PATCH 4/4] rtmutex: Ensure only the top wait ...
, Steven Rostedt
, (Mon Jan 3, 9:02 pm)
Re: [RFC][RT][PATCH 3/4] rtmutex: Revert Optimize rt lock ...
, Peter W. Morreale
, (Tue Jan 4, 8:19 am)
Re: [RFC][RT][PATCH 3/4] rtmutex: Revert Optimize rt lock ...
, Steven Rostedt
, (Tue Jan 4, 8:47 am)
Re: [RFC][RT][PATCH 3/4] rtmutex: Revert Optimize rt lock ...
, Peter W. Morreale
, (Tue Jan 4, 10:15 am)
Re: [RFC][RT][PATCH 3/4] rtmutex: Revert Optimize rt lock ...
, Peter W. Morreale
, (Tue Jan 4, 10:24 am)
Re: [RFC][RT][PATCH 3/4] rtmutex: Revert Optimize rt lock ...
, Steven Rostedt
, (Tue Jan 4, 10:27 am)
Re: [RFC][RT][PATCH 3/4] rtmutex: Revert Optimize rt lock ...
, Peter W. Morreale
, (Tue Jan 4, 10:45 am)
Re: [RFC][RT][PATCH 3/4] rtmutex: Revert Optimize rt lock ...
, Steven Rostedt
, (Tue Jan 4, 11:06 am)
Re: [RFC][RT][PATCH 3/4] rtmutex: Revert Optimize rt lock ...
, Peter W. Morreale
, (Tue Jan 4, 1:48 pm)
Navigation
Mailing list archives
Recent posts
Popular discussions
linux-kernel
:
Greg Kroah-Hartman
[PATCH 041/196] kobject: add kobject_init_and_add function
Lukas Hejtmanek
Re: Another libata error related to OCZ SSD
Greg Kroah-Hartman
[PATCH 023/196] MCP_UCB1200: Convert from class_device to device
Florian Fainelli
Re: System clock runs too fast after 2.6.27 -> 2.6.28.1 upgrade
Christoph Lameter
[patch 1/4] mmu_notifier: Core code
git
:
Johannes Schindelin
Re: [PATCH 1/2] Add strbuf_initf()
John Bito
[EGIT] Push to GitHub caused corruption
Jakub Narebski
Re: [PATCH 0/2] gitweb: patch view
Junio C Hamano
Re: [PATCH] When a remote is added but not fetched, tell the user.
Andy Parkins
Re: [RFC] Submodules in GIT
git-commits-head
:
Linux Kernel Mailing List
ahci: Workaround HW bug for SB600/700 SATA controller PMP support
Linux Kernel Mailing List
V4L/DVB (11086): au0828: rename macro for currently non-function VBI support
Linux Kernel Mailing List
ceph: client types
Linux Kernel Mailing List
ceph: on-wire types
Linux Kernel Mailing List
crypto: chainiv - Use kcrypto_wq instead of keventd_wq
linux-netdev
:
Andrew Morton
Re: [Bugme-new] [Bug 14969] New: b44: WOL does not work in suspended state
Giuseppe CAVALLARO
Re: [PATCH 03/13] stmmac: add the new Header file for stmmac platform data
Taku Izumi
[PATCH 3/3] ixgbe: add registers etc. printout code just before resetting adapters
Eric Dumazet
rps: some comments
Thomas Gleixner
Re: [RFC PATCH 02/12] On Tue, 23 Sep 2008, David Miller wrote:
openbsd-misc
:
Stephan Andreas
problems with login after xlock in OpenBSD release 4.7
pmc
Make A Change. Alcoholism and Drug Addiction Treatment
ropers
Re: what exactly is enc0?
Fuad NAHDI
Re: What does your environment look like?
Matthew Szudzik
Typo on OpenBSD 4.4 CD Set
Colocation donated by:
Syndicate