All of lore.kernel.org
 help / color / mirror / Atom feed
From: Chris Metcalf <cmetcalf@tilera.com>
To: Peter Zijlstra <peterz@infradead.org>, <mingo@kernel.org>,
	<tglx@linutronix.de>, <luto@amacapital.net>,
	<nicolas.pitre@linaro.org>, <daniel.lezcano@linaro.org>,
	<umgwanakikbuti@gmail.com>
Cc: <linux-kernel@vger.kernel.org>
Subject: Re: [RFC][PATCH 2/8] sched,idle,tile: Switch from TS_POLLING to TIF_POLLING_NRFLAG
Date: Fri, 11 Apr 2014 11:15:14 -0400	[thread overview]
Message-ID: <53480702.3080100@tilera.com> (raw)
In-Reply-To: <20140411135218.242750053@infradead.org>

On 4/11/2014 9:42 AM, Peter Zijlstra wrote:
> Standardize the idle polling indicator to TIF_POLLING_NRFLAG such that
> both TIF_NEED_RESCHED and TIF_POLLING_NRFLAG are in the same word.
> This will allow us, using fetch_or(), to both set NEED_RESCHED and
> check for POLLING_NRFLAG in a single operation and avoid pointless
> wakeups.
>
> Changing from the non-atomic thread_info::status flags to the atomic
> thread_info::flags shouldn't be a big issue since most polling state
> changes were followed/preceded by a full memory barrier anyway.
>
> Cc: Thomas Gleixner <tglx@linutronix.de>
> Cc: Andy Lutomirski <luto@amacapital.net>
> Cc: Chris Metcalf <cmetcalf@tilera.com>
> Signed-off-by: Peter Zijlstra <peterz@infradead.org>
> ---
>  arch/tile/include/asm/thread_info.h |    3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)

Acked-by: Chris Metcalf <cmetcalf@tilera.com>

It's unfortunate that you're rolling the fetch_or() unconditionally out of cmpxchg(), since some architectures (like tilegx) do have support for "fetchor" as a primitive atomic operation.  Currently the tilegx fetchor is only exposed to architecture-independent code via set_bit() and test_and_set_bit(), but perhaps it's worth having an atomic_or() in atomic.h so architectures can choose to optimize it?

-- 
Chris Metcalf, Tilera Corp.
http://www.tilera.com


  reply	other threads:[~2014-04-11 15:15 UTC|newest]

Thread overview: 64+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-04-11 13:42 [RFC][PATCH 0/8] sched,idle: need resched polling rework Peter Zijlstra
2014-04-11 13:42 ` [RFC][PATCH 1/8] sched,idle,alpha: Switch from TS_POLLING to TIF_POLLING_NRFLAG Peter Zijlstra
2014-04-11 14:38   ` Richard Henderson
2014-04-11 13:42 ` [RFC][PATCH 2/8] sched,idle,tile: " Peter Zijlstra
2014-04-11 15:15   ` Chris Metcalf [this message]
2014-04-11 15:30     ` Peter Zijlstra
2014-04-11 13:42 ` [RFC][PATCH 3/8] sched,idle,ia64: " Peter Zijlstra
2014-04-11 13:42 ` [RFC][PATCH 4/8] sched,idle,x86: " Peter Zijlstra
2014-04-11 13:42 ` [RFC][PATCH 5/8] sched,idle: Remove TS_POLLING support Peter Zijlstra
2014-04-11 13:42 ` [RFC][PATCH 6/8] sched,idle: Avoid spurious wakeup IPIs Peter Zijlstra
2014-04-13 21:41   ` Nicolas Pitre
2014-05-09 13:37   ` James Hogan
2014-05-09 13:37     ` James Hogan
2014-05-09 14:15     ` Peter Zijlstra
2014-05-09 14:15       ` Peter Zijlstra
2014-05-09 14:40       ` Catalin Marinas
2014-05-09 14:40         ` Catalin Marinas
2014-05-09 14:50         ` Peter Zijlstra
2014-05-09 14:50           ` Peter Zijlstra
2014-05-09 14:57           ` Catalin Marinas
2014-05-09 14:57             ` Catalin Marinas
2014-05-09 17:02             ` Peter Zijlstra
2014-05-09 17:02               ` Peter Zijlstra
2014-05-09 17:06               ` Peter Zijlstra
2014-05-09 17:06                 ` Peter Zijlstra
2014-05-09 17:09                 ` Catalin Marinas
2014-05-09 17:09                   ` Catalin Marinas
2014-05-09 17:20                   ` Peter Zijlstra
2014-05-09 17:20                     ` Peter Zijlstra
2014-05-19 12:54                 ` [tip:sched/arch] arm64: Remove TIF_POLLING_NRFLAG tip-bot for Peter Zijlstra
2014-05-22 12:26                 ` [tip:sched/core] " tip-bot for Peter Zijlstra
2014-05-09 14:51       ` [RFC][PATCH 6/8] sched,idle: Avoid spurious wakeup IPIs James Hogan
2014-05-09 14:51         ` James Hogan
2014-05-09 14:51         ` James Hogan
     [not found]         ` <536CEB7E.9080007-1AXoQHu6uovQT0dZR+AlfA@public.gmane.org>
2014-05-15  9:17           ` James Hogan
2014-05-15  9:17             ` James Hogan
2014-05-15  9:17             ` James Hogan
2014-05-19 12:54         ` [tip:sched/arch] metag: Remove TIF_POLLING_NRFLAG tip-bot for James Hogan
2014-05-22 12:26         ` [tip:sched/core] " tip-bot for James Hogan
2014-04-11 13:42 ` [RFC][PATCH 7/8] sched,idle: Delay clearing the polling bit Peter Zijlstra
2014-04-13 21:51   ` Nicolas Pitre
2014-04-11 13:42 ` [RFC][PATCH 8/8] sched,idle: Reflow cpuidle_idle_call() Peter Zijlstra
2014-04-13 21:36   ` Nicolas Pitre
2014-04-14  8:59     ` Peter Zijlstra
2014-04-14  9:25       ` Peter Zijlstra
2014-04-14 13:55         ` Nicolas Pitre
2014-04-11 15:00 ` [RFC][PATCH 0/8] sched,idle: need resched polling rework Andy Lutomirski
2014-04-11 15:14   ` Peter Zijlstra
2014-05-22 12:58   ` Peter Zijlstra
2014-05-22 13:09     ` Peter Zijlstra
2014-05-29  0:01       ` Andy Lutomirski
2014-05-29  6:48         ` Peter Zijlstra
2014-06-03  6:40           ` Andy Lutomirski
2014-06-03  6:51             ` Peter Zijlstra
2014-06-03 10:43             ` Peter Zijlstra
2014-06-03 14:02               ` Peter Zijlstra
2014-06-03 16:05                 ` Andy Lutomirski
2014-06-03 16:19                   ` Peter Zijlstra
2014-06-03 16:52                     ` Andy Lutomirski
2014-06-03 17:00                       ` Peter Zijlstra
2014-06-03 18:28                         ` Peter Zijlstra
2014-06-03 18:44                           ` Andy Lutomirski
2014-06-03 20:07                             ` Andy Lutomirski
2014-04-12  8:35 ` Mike Galbraith

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=53480702.3080100@tilera.com \
    --to=cmetcalf@tilera.com \
    --cc=daniel.lezcano@linaro.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=luto@amacapital.net \
    --cc=mingo@kernel.org \
    --cc=nicolas.pitre@linaro.org \
    --cc=peterz@infradead.org \
    --cc=tglx@linutronix.de \
    --cc=umgwanakikbuti@gmail.com \
    /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.