All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andrew Morton <akpm@linux-foundation.org>
To: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
Cc: balbir@linux.vnet.ibm.com, linux-mm@kvack.org,
	linux-kernel@vger.kernel.org,
	"nishimura@mxp.nes.nec.co.jp" <nishimura@mxp.nes.nec.co.jp>
Subject: Re: [PATCH] memcg: remove trylock_page_cgroup
Date: Tue, 21 Apr 2009 23:01:47 -0700	[thread overview]
Message-ID: <20090421230147.eecfe82c.akpm@linux-foundation.org> (raw)
In-Reply-To: <20090422134108.f21e5bba.kamezawa.hiroyu@jp.fujitsu.com>

On Wed, 22 Apr 2009 13:41:08 +0900 KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com> wrote:

> > I expect that it will reliably fail if the caller is running as
> > SCHED_FIFO and the machine is single-CPU, or if we're trying to yield
> > to a SCHED_OTHER task which is pinned to this CPU, etc.  The cond_resched()
> > won't work.
> > 
> Hm, signal_pending() is supported now (so special user scan use alaram())
> I used yield() before cond_resched() but I was told don't use it.
> Should I replace cond_resched() with congestion_wait(HZ/10) or some ?

msleep(1) would be typical.  That can also be used to give a
predictable number of seconds for the timeout.

If 1 millisecond is too coarse then it's possible to sleep for much
shorter intervals if the platform implements hi-res timers.  We don't
appear to have a handy interface to that (usleep, microsleep,
nanosleep, etc?).

And an attempt to sleep for 1us will fall back to 1/HZ if the platform
doesn't implement hi-res timers, so that loop will need to be turned
into a do {} while(!timer_after(jiffies, start))) thing.  Probably it
should be converted to that anyway, to be better behaved/predictable,
etc.


WARNING: multiple messages have this Message-ID (diff)
From: Andrew Morton <akpm@linux-foundation.org>
To: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
Cc: balbir@linux.vnet.ibm.com, linux-mm@kvack.org,
	linux-kernel@vger.kernel.org,
	"nishimura@mxp.nes.nec.co.jp" <nishimura@mxp.nes.nec.co.jp>
Subject: Re: [PATCH] memcg: remove trylock_page_cgroup
Date: Tue, 21 Apr 2009 23:01:47 -0700	[thread overview]
Message-ID: <20090421230147.eecfe82c.akpm@linux-foundation.org> (raw)
In-Reply-To: <20090422134108.f21e5bba.kamezawa.hiroyu@jp.fujitsu.com>

On Wed, 22 Apr 2009 13:41:08 +0900 KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com> wrote:

> > I expect that it will reliably fail if the caller is running as
> > SCHED_FIFO and the machine is single-CPU, or if we're trying to yield
> > to a SCHED_OTHER task which is pinned to this CPU, etc.  The cond_resched()
> > won't work.
> > 
> Hm, signal_pending() is supported now (so special user scan use alaram())
> I used yield() before cond_resched() but I was told don't use it.
> Should I replace cond_resched() with congestion_wait(HZ/10) or some ?

msleep(1) would be typical.  That can also be used to give a
predictable number of seconds for the timeout.

If 1 millisecond is too coarse then it's possible to sleep for much
shorter intervals if the platform implements hi-res timers.  We don't
appear to have a handy interface to that (usleep, microsleep,
nanosleep, etc?).

And an attempt to sleep for 1us will fall back to 1/HZ if the platform
doesn't implement hi-res timers, so that loop will need to be turned
into a do {} while(!timer_after(jiffies, start))) thing.  Probably it
should be converted to that anyway, to be better behaved/predictable,
etc.

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

  reply	other threads:[~2009-04-22  6:05 UTC|newest]

Thread overview: 64+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-04-15 12:05 [PATCH] Add file based RSS accounting for memory resource controller (v2) Balbir Singh
2009-04-15 12:05 ` Balbir Singh
2009-04-16  0:53 ` KAMEZAWA Hiroyuki
2009-04-16  0:53   ` KAMEZAWA Hiroyuki
2009-04-16  1:59   ` Balbir Singh
2009-04-16  1:59     ` Balbir Singh
2009-04-16  2:02     ` KAMEZAWA Hiroyuki
2009-04-16  2:02       ` KAMEZAWA Hiroyuki
2009-04-16  7:40       ` KAMEZAWA Hiroyuki
2009-04-16  7:40         ` KAMEZAWA Hiroyuki
2009-04-16  8:15         ` KAMEZAWA Hiroyuki
2009-04-16  8:15           ` KAMEZAWA Hiroyuki
2009-04-16 12:03           ` Balbir Singh
2009-04-16 12:03             ` Balbir Singh
2009-04-17  0:14             ` KAMEZAWA Hiroyuki
2009-04-17  0:14               ` KAMEZAWA Hiroyuki
2009-04-17  0:17               ` KAMEZAWA Hiroyuki
2009-04-17  0:17                 ` KAMEZAWA Hiroyuki
2009-04-17  1:40               ` Balbir Singh
2009-04-17  1:40                 ` Balbir Singh
2009-04-17  2:03                 ` KAMEZAWA Hiroyuki
2009-04-17  2:03                   ` KAMEZAWA Hiroyuki
2009-04-17  3:45                   ` Balbir Singh
2009-04-17  3:45                     ` Balbir Singh
2009-04-17  3:49                     ` KAMEZAWA Hiroyuki
2009-04-17  3:49                       ` KAMEZAWA Hiroyuki
2009-04-17  4:56                       ` Balbir Singh
2009-04-17  4:56                         ` Balbir Singh
2009-04-17  5:17                         ` KAMEZAWA Hiroyuki
2009-04-17  5:17                           ` KAMEZAWA Hiroyuki
2009-04-17  6:47                           ` Balbir Singh
2009-04-17  6:47                             ` Balbir Singh
2009-04-17  6:56                             ` KAMEZAWA Hiroyuki
2009-04-17  6:56                               ` KAMEZAWA Hiroyuki
2009-04-17 14:18                               ` [PATCH] Add file based RSS accounting for memory resource controller (v3) Balbir Singh
2009-04-17 14:18                                 ` Balbir Singh
2009-04-17 16:30                                 ` KAMEZAWA Hiroyuki
2009-04-17 16:30                                   ` KAMEZAWA Hiroyuki
2009-04-21  3:00                                   ` Balbir Singh
2009-04-21  3:00                                     ` Balbir Singh
2009-04-21 20:25                                 ` Andrew Morton
2009-04-21 20:25                                   ` Andrew Morton
2009-04-22  0:02                                   ` KAMEZAWA Hiroyuki
2009-04-22  0:02                                     ` KAMEZAWA Hiroyuki
2009-04-22  3:16                                     ` [PATCH] memcg: remove trylock_page_cgroup KAMEZAWA Hiroyuki
2009-04-22  3:16                                       ` KAMEZAWA Hiroyuki
2009-04-22  3:41                                       ` Andrew Morton
2009-04-22  3:41                                         ` Andrew Morton
2009-04-22  4:41                                         ` KAMEZAWA Hiroyuki
2009-04-22  4:41                                           ` KAMEZAWA Hiroyuki
2009-04-22  6:01                                           ` Andrew Morton [this message]
2009-04-22  6:01                                             ` Andrew Morton
2009-04-22  6:13                                             ` KAMEZAWA Hiroyuki
2009-04-22  6:13                                               ` KAMEZAWA Hiroyuki
2009-04-22  3:19                                     ` [PATCH] Add file based RSS accounting for memory resource controller (v3) Balbir Singh
2009-04-22  3:19                                       ` Balbir Singh
2009-04-16 12:14         ` [PATCH] Add file based RSS accounting for memory resource controller (v2) Balbir Singh
2009-04-16 12:14           ` Balbir Singh
2009-04-16 23:57           ` KAMEZAWA Hiroyuki
2009-04-16 23:57             ` KAMEZAWA Hiroyuki
2009-04-16  3:59     ` Bharata B Rao
2009-04-16  3:59       ` Bharata B Rao
2009-04-16  4:34       ` Balbir Singh
2009-04-16  4:34         ` Balbir Singh

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=20090421230147.eecfe82c.akpm@linux-foundation.org \
    --to=akpm@linux-foundation.org \
    --cc=balbir@linux.vnet.ibm.com \
    --cc=kamezawa.hiroyu@jp.fujitsu.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=nishimura@mxp.nes.nec.co.jp \
    /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.