All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
To: Ingo Molnar <mingo@elte.hu>
Cc: Yinghai Lu <yinghai@kernel.org>,
	linux-kernel@vger.kernel.org, mingo@redhat.com, hpa@zytor.com,
	tglx@linutronix.de
Subject: Re: [tip:core/rcu] Revert "rcu: Decrease memory-barrier usage based on semi-formal proof"
Date: Wed, 25 May 2011 13:47:39 -0700	[thread overview]
Message-ID: <20110525204739.GJ2341@linux.vnet.ibm.com> (raw)
In-Reply-To: <20110525072742.GI429@elte.hu>

On Wed, May 25, 2011 at 09:27:42AM +0200, Ingo Molnar wrote:
> 
> * Paul E. McKenney <paulmck@linux.vnet.ibm.com> wrote:
> 
> > On Tue, May 24, 2011 at 05:10:11PM -0700, Yinghai Lu wrote:
> > > On 05/24/2011 02:23 PM, Yinghai Lu wrote:
> > > > On 05/23/2011 06:35 PM, Paul E. McKenney wrote:
> > > >> On Mon, May 23, 2011 at 06:26:23PM -0700, Yinghai Lu wrote:
> > > >>> On 05/23/2011 06:18 PM, Paul E. McKenney wrote:
> > > >>>
> > > >>>> OK, so it looks like I need to get this out of the way in order to track
> > > >>>> down the delays.  Or does reverting PeterZ's patch get you a stable
> > > >>>> system, but with the longish delays in memory_dev_init()?  If the latter,
> > > >>>> it might be more productive to handle the two problems separately.
> > > >>>>
> > > >>>> For whatever it is worth, I do see about 5% increase in grace-period
> > > >>>> duration when switching to kthreads.  This is acceptable -- your
> > > >>>> 30x increase clearly is completely unacceptable and must be fixed.
> > > >>>> Other than that, the main thing that affects grace period duration is
> > > >>>> the setting of CONFIG_HZ -- the smaller the HZ value, the longer the
> > > >>>> grace-period duration.
> > > >>>
> > > >>> for my 1024g system when memory hotadd is enabled in kernel config:
> > > >>> 1. current linus tree + tip tree:  memory_dev_init will take about 100s.
> > > >>> 2. current linus tree + tip tree + your tree - Peterz patch: 
> > > >>>    a. on fedora 14 gcc: will cost about 4s: like old times
> > > >>>    b. on opensuse 11.3 gcc: will cost about 10s.
> > > >>
> > > >> So some patch in my tree that is not yet in tip makes things better?
> > > >>
> > > >> If so, could you please see which one?  Maybe that would give me a hint
> > > >> that could make things better on opensuse 11.3 as well.
> > > > 
> > > > today's tip:
> > > > 
> > > > [   31.795597] cpu_dev_init done
> > > > [   40.930202] memory_dev_init done
> > > > 
> > > 
> > > another boot from tip got:
> > > 
> > > [   35.211927] cpu_dev_init done
> > > [  136.053698] memory_dev_init done
> > > 
> > > wonder if you can have clean revert for
> > > 
> > > commit a26ac2455ffcf3be5c6ef92bc6df7182700f2114
> > > > Author: Paul E. McKenney <paul.mckenney@linaro.org>
> > > > Date:   Wed Jan 12 14:10:23 2011 -0800
> > > > 
> > > >     rcu: move TREE_RCU from softirq to kthread
> > > >     
> > > >     If RCU priority boosting is to be meaningful, callback invocation must
> > > >     be boosted in addition to preempted RCU readers.  Otherwise, in presence
> > > >     of CPU real-time threads, the grace period ends, but the callbacks don't
> > > >     get invoked.  If the callbacks don't get invoked, the associated memory
> > > >     doesn't get freed, so the system is still subject to OOM.
> > > >     
> > > >     But it is not reasonable to priority-boost RCU_SOFTIRQ, so this commit
> > > >     moves the callback invocations to a kthread, which can be boosted easily.
> > > >     
> > > >     Also add comments and properly synchronized all accesses to
> > > >     rcu_cpu_kthread_task, as suggested by Lai Jiangshan.
> > > >     
> > > >     Signed-off-by: Paul E. McKenney <paul.mckenney@linaro.org>
> > > >     Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
> > > >     Reviewed-by: Josh Triplett <josh@joshtriplett.org>
> > 
> > There is a new branch yinghai.2011.05.24a on:
> > 
> > git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-2.6-rcu.git
> > 
> > Or will be as soon as kernel.org updates its mirrors.
> > 
> > I am not sure I could call this "clean", but it does revert that commit
> > and 11 of the subsequent commits that depend on it.  It does build,
> > and I will test it once my currently running tests complete.
> 
> Given that this is about a 1-2 minute delays with 1 *terabyte* of RAM, the per 
> gigabyte delay is like 60-120 msecs, right?
> 
> So it's not a regression we are absolutely forced to address via a quick 
> revert, debugging it would be nicer. There's something we don't understand and 
> that's arguably worse than having unresolved non-fatal bugs :-)

And my attempted revert results in test failures in any case.  :-(

> We already fixed the worst problem via a revert, the semi-hang: so i don't 
> think there's pressure to do other reverts - other than for diagnostic 
> purposes, of course.

Given that I have to debug in any case, I am happier debugging in the
forward direction rather than in the backwards direction.  ;-)

							Thanx, Paul

  reply	other threads:[~2011-05-25 20:47 UTC|newest]

Thread overview: 45+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <tip-80d02085d99039b3b7f3a73c8896226b0cb1ba07@git.kernel.org>
2011-05-20 21:04 ` [tip:core/rcu] Revert "rcu: Decrease memory-barrier usage based on semi-formal proof" Yinghai Lu
2011-05-20 22:42   ` Paul E. McKenney
2011-05-20 23:09     ` Yinghai Lu
2011-05-20 23:14       ` Paul E. McKenney
2011-05-20 23:16         ` Yinghai Lu
2011-05-20 23:49           ` Paul E. McKenney
2011-05-21  0:02             ` Yinghai Lu
2011-05-21 13:18               ` Paul E. McKenney
2011-05-21 14:08                 ` Paul E. McKenney
2011-05-23 20:14                   ` Yinghai Lu
2011-05-23 21:25                     ` Paul E. McKenney
2011-05-23 22:01                       ` Yinghai Lu
2011-05-23 22:55                         ` Yinghai Lu
2011-05-23 22:58                           ` Yinghai Lu
2011-05-24  1:18                             ` Paul E. McKenney
2011-05-24  1:26                               ` Yinghai Lu
2011-05-24  1:35                                 ` Paul E. McKenney
2011-05-24 21:23                                   ` Yinghai Lu
2011-05-25  0:05                                     ` Paul E. McKenney
2011-05-25  0:13                                       ` Yinghai Lu
2011-05-25  4:46                                         ` Paul E. McKenney
2011-05-25  7:24                                           ` Ingo Molnar
2011-05-25 20:48                                             ` Paul E. McKenney
2011-05-25  7:18                                         ` Ingo Molnar
2011-05-25  0:16                                       ` Paul E. McKenney
2011-05-25  0:10                                     ` Yinghai Lu
2011-05-25  4:52                                       ` Paul E. McKenney
2011-05-25  7:27                                         ` Ingo Molnar
2011-05-25 20:47                                           ` Paul E. McKenney [this message]
2011-05-25 20:52                                             ` Ingo Molnar
2011-05-25 22:15                                         ` Yinghai Lu
2011-05-25 22:34                                           ` Paul E. McKenney
2011-05-25 22:49                                             ` Yinghai Lu
2011-05-26  1:13                                               ` Paul E. McKenney
2011-05-26  1:30                                                 ` Paul E. McKenney
2011-05-26  6:13                                                   ` Ingo Molnar
2011-05-26 14:25                                                     ` Paul E. McKenney
2011-05-26 17:43                                                       ` Paul E. McKenney
2011-05-26 20:26                                                         ` Ingo Molnar
2011-05-26 15:08                                                   ` Yinghai Lu
2011-05-26 16:28                                                     ` Paul E. McKenney
2011-05-28  1:04                                                       ` Paul E. McKenney
2011-05-28  4:03                                                         ` Yinghai Lu
2011-05-28  6:38                                                           ` Paul E. McKenney
2011-05-24  1:12                         ` Paul E. McKenney

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=20110525204739.GJ2341@linux.vnet.ibm.com \
    --to=paulmck@linux.vnet.ibm.com \
    --cc=hpa@zytor.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    --cc=mingo@redhat.com \
    --cc=tglx@linutronix.de \
    --cc=yinghai@kernel.org \
    /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.