All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ingo Molnar <mingo@elte.hu>
To: Linus Torvalds <torvalds@osdl.org>
Cc: lkml <linux-kernel@vger.kernel.org>,
	Andrew Morton <akpm@osdl.org>,
	Arjan van de Ven <arjanv@infradead.org>,
	Jes Sorensen <jes@trained-monkey.org>,
	Zwane Mwaikambo <zwane@arm.linux.org.uk>,
	Oleg Nesterov <oleg@tv-sign.ru>,
	David Howells <dhowells@redhat.com>,
	Alan Cox <alan@lxorguk.ukuu.org.uk>,
	Benjamin LaHaise <bcrl@kvack.org>,
	Steven Rostedt <rostedt@goodmis.org>,
	Christoph Hellwig <hch@infradead.org>, Andi Kleen <ak@suse.de>,
	Russell King <rmk+lkml@arm.linux.org.uk>,
	Nicolas Pitre <nico@cam.org>
Subject: [patch 0/8] mutex subsystem, ANNOUNCE
Date: Wed, 21 Dec 2005 23:36:46 +0100	[thread overview]
Message-ID: <20051221223646.GA4960@elte.hu> (raw)

this is the latest version of the mutex subsystem patch-queue. It 
consists of the following patches:

 xfs-mutex-namespace-collision-fix.patch
 add-atomic-xchg.patch
 add-atomic-call-func-i386.patch
 add-atomic-call-func-x86_64.patch
 add-atomic-call-wrappers-rest.patch
 mutex-core.patch
 mutex-debug.patch
 mutex-debug-more.patch

the patches are against Linus' latest tree.

Changes since the previous version:

- fixed the %eax clobber bug noticed by Linus. Also fixed a similar bug
  in the x86_64 assembly routine. Ended up solving this by marking the 
  register clobbered - the function-always-returns change resulted in 
  worse code. (usually the slowpath functions dont have the atomic-lock 
  parameter ready at the end of the function, so they have to do extra 
  work to return it.)

- implemented Oleg's suggestion of doing the xchg() before adding the 
  waiter to the queue.

- optimization: in the xchg() case we can avoid hitting the slowpath 
  when releasing the lock later on, by setting the count to 0 if the 
  wait-list is otherwise empty. This is the common-case for wakeups.

- bugfix: forgot to take a spinlock in the signal-return path.

- added a couple of likely/unlikely modifiers, based on profile output.

- inline the trylock fastpath into the mutex_trylock() function.

- move the waiter->lock field into the debug path - nothing in the 
  non-debug case was using it. This is also a small optimization for 
  the slowpath.

- optimization: do a cheaper list_del in the non-debug case. This also 
  enabled the removal of debug_remove_waiter().

- fix for the debugging branch: initialize the wait->list to empty.

	Ingo

             reply	other threads:[~2005-12-21 22:37 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-12-21 22:36 Ingo Molnar [this message]
  -- strict thread matches above, loose matches on Subject: below --
2005-12-21 15:54 [patch 0/8] mutex subsystem, ANNOUNCE Ingo Molnar
2005-12-21 16:04 ` Arjan van de Ven
2005-12-21 18:07 ` Jes Sorensen
2005-12-22  2:36   ` Nick Piggin
2005-12-22  2:57     ` Nick Piggin
2005-12-22  7:19     ` Ingo Molnar
2005-12-22  7:56       ` Nick Piggin
2005-12-22  8:00         ` Arjan van de Ven
2005-12-22  8:10           ` Nick Piggin
2005-12-22  8:21             ` Arjan van de Ven
2005-12-22  8:32               ` Nick Piggin
2005-12-22  8:24         ` Ingo Molnar
2005-12-22  8:37           ` Nick Piggin
2005-12-21 22:43 ` Nicolas Pitre

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20051221223646.GA4960@elte.hu \
    --to=mingo@elte.hu \
    --cc=ak@suse.de \
    --cc=akpm@osdl.org \
    --cc=alan@lxorguk.ukuu.org.uk \
    --cc=arjanv@infradead.org \
    --cc=bcrl@kvack.org \
    --cc=dhowells@redhat.com \
    --cc=hch@infradead.org \
    --cc=jes@trained-monkey.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=nico@cam.org \
    --cc=oleg@tv-sign.ru \
    --cc=rmk+lkml@arm.linux.org.uk \
    --cc=rostedt@goodmis.org \
    --cc=torvalds@osdl.org \
    --cc=zwane@arm.linux.org.uk \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.