All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ingo Molnar <mingo@elte.hu>
To: Christoph Lameter <christoph@lameter.com>
Cc: Andrew Morton <akpm@osdl.org>, Oleg Nesterov <oleg@tv-sign.ru>,
	linux-kernel@vger.kernel.org, Shai Fultheim <Shai@Scalex86.org>
Subject: Re: [patch] del_timer_sync scalability patch
Date: Tue, 15 Mar 2005 10:28:06 +0100	[thread overview]
Message-ID: <20050315092806.GA28924@elte.hu> (raw)
In-Reply-To: <Pine.LNX.4.58.0503150004190.13281@server.graphe.net>


* Christoph Lameter <christoph@lameter.com> wrote:

> The following patch removes the magic in the timer_list structure
> (Andrew suggested that we may not need it anymore) and replaces it
> with two u8 variables that give us some additional state of the timer

The 'remove the magic' observation is not a 'backdoor' to introduce new
fields 'for free'. So please dont mix the two things into one patch.

> +       u8 running;             /* function is currently executing */
> +       u8 shutdown;            /* do not schedule this timer */

it may as well be cleaner to do the timer->base_running thing after all,
and to do this in __run_timers():

	timer->base = NULL;
	timer->base_running = base;

note that we cannot clear ->base_running in __run_timers() [we dont own
any access to the timer anymore, it may be kfree()d, etc.], so
del_timer_sync() has to make sure that the timer->base_running info is
not stale - it is a hint only. But it looks doable, and it should solve
the NUMA scalability problem.

	Ingo

  reply	other threads:[~2005-03-15  9:28 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-03-11 18:54 [patch] del_timer_sync scalability patch Oleg Nesterov
2005-03-11 20:57 ` Christoph Lameter
2005-03-15 17:19   ` [PATCH 0/2] del_timer_sync: proof of concept Oleg Nesterov
2005-03-15 18:15     ` Christoph Lameter
2005-03-15 19:41       ` Oleg Nesterov
2005-03-15 19:02         ` Christoph Lameter
2005-03-16 16:55     ` Oleg Nesterov
2005-03-15 17:19   ` [PATCH 1/2] " Oleg Nesterov
2005-03-15 17:20   ` [PATCH 2/2] " Oleg Nesterov
2005-03-16  9:00     ` Ingo Molnar
2005-03-16 12:09       ` Oleg Nesterov
2005-03-16 13:52         ` Ingo Molnar
2005-03-13 13:13 ` [patch] del_timer_sync scalability patch Oleg Nesterov
2005-03-14 19:40   ` Christoph Lameter
2005-03-15  9:12     ` Oleg Nesterov
2005-03-15  8:06   ` Christoph Lameter
2005-03-15  9:28     ` Ingo Molnar [this message]
2005-03-15 10:28     ` Oleg Nesterov
  -- strict thread matches above, loose matches on Subject: below --
2005-03-20 23:19 Chen, Kenneth W
2005-03-20 23:34 ` Andrew Morton
2005-03-21  0:47   ` Christoph Lameter
2005-03-21  1:00     ` Andrew Morton
2005-03-21  0:54   ` Christoph Lameter
2005-03-21  1:17     ` Andrew Morton
2005-03-08  6:47 Christoph Lameter
2005-03-08  7:32 ` Andrew Morton
2005-03-08  8:19   ` Ingo Molnar
2005-03-08  8:33     ` Andrew Morton
2005-03-08 20:05       ` Christoph Lameter
2005-03-08 19:44     ` Christoph Lameter

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=20050315092806.GA28924@elte.hu \
    --to=mingo@elte.hu \
    --cc=Shai@Scalex86.org \
    --cc=akpm@osdl.org \
    --cc=christoph@lameter.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=oleg@tv-sign.ru \
    /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.