LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
From: Yasunori Goto <y-goto@jp.fujitsu.com>
To: Badari Pulavarty <pbadari@us.ibm.com>
Cc: Andrew Morton <akpm@linux-foundation.org>,
	lkml <linux-kernel@vger.kernel.org>,
	greg@kroah.com, haveblue@us.ibm.com,
	linux-mm <linux-mm@kvack.org>
Subject: Re: [-mm PATCH] register_memory/unregister_memory clean ups
Date: Tue, 12 Feb 2008 17:06:30 +0900	[thread overview]
Message-ID: <20080212154309.F9DA.Y-GOTO@jp.fujitsu.com> (raw)
In-Reply-To: <1202765553.25604.12.camel@dyn9047017100.beaverton.ibm.com>

> On Mon, 2008-02-11 at 11:48 -0800, Andrew Morton wrote:
> > On Mon, 11 Feb 2008 09:23:18 -0800
> > Badari Pulavarty <pbadari@us.ibm.com> wrote:
> > 
> > > Hi Andrew,
> > > 
> > > While testing hotplug memory remove against -mm, I noticed
> > > that unregister_memory() is not cleaning up /sysfs entries
> > > correctly. It also de-references structures after destroying
> > > them (luckily in the code which never gets used). So, I cleaned
> > > up the code and fixed the extra reference issue.
> > > 
> > > Could you please include it in -mm ?
> > > 
> > > Thanks,
> > > Badari
> > > 
> > > register_memory()/unregister_memory() never gets called with
> > > "root". unregister_memory() is accessing kobject_name of
> > > the object just freed up. Since no one uses the code,
> > > lets take the code out. And also, make register_memory() static.  
> > > 
> > > Another bug fix - before calling unregister_memory()
> > > remove_memory_block() gets a ref on kobject. unregister_memory()
> > > need to drop that ref before calling sysdev_unregister().
> > > 
> > 
> > I'd say this:
> > 
> > > Subject: [-mm PATCH] register_memory/unregister_memory clean ups
> > 
> > is rather tame.  These are more than cleanups!  These sound like
> > machine-crashing bugs.  Do they crash machines?  How come nobody noticed
> > it?
> > 
> 
> No they don't crash machine - mainly because, they never get called
> with "root" argument (where we have the bug). They were never tested
> before, since we don't have memory remove work yet. All it does
> is, it leave /sysfs directory laying around and causing next
> memory add failure. 

Badari-san.

Which function does call unregister_memory() or unregister_memory_section()?
I can't find its caller in current 2.6.24-mm1.


???????()
  |
  |nothing calls?
  |
  +-->unregister_memory_section()
       |
       |call
       |
       +---> remove_memory_block()
              |
              |call
              |
              +----> unregister_memory()

unregister_memory_section() is only externed in linux/memory.h.

Do you have any another patch to call it?
I think it is necessary for physical memory removing.

If you have not posted it or it is not merged to -mm,
I can understand why this bug remains.
If you posted it, could you point it to me?

Or do I misunderstand something?


Thanks.

-- 
Yasunori Goto 



  reply	other threads:[~2008-02-12  8:12 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-02-11 17:23 Badari Pulavarty
2008-02-11 17:54 ` Greg KH
2008-02-11 18:05   ` Badari Pulavarty
2008-02-11 19:48 ` Andrew Morton
2008-02-11 20:35   ` Greg KH
2008-02-11 21:32   ` Badari Pulavarty
2008-02-12  8:06     ` Yasunori Goto [this message]
2008-02-12 17:22       ` Badari Pulavarty
2008-02-12 20:59         ` Dave Hansen
2008-02-12 21:56           ` Badari Pulavarty
2008-02-12 21:57             ` Dave Hansen
2008-02-12 22:07               ` Badari Pulavarty
2008-02-12 22:15                 ` Dave Hansen
2008-02-12 22:51                   ` Badari Pulavarty
2008-02-12 23:03                   ` Badari Pulavarty
2008-02-12 23:20                     ` Dave Hansen
2008-02-12 22:06             ` Dave Hansen
2008-02-13  5:09               ` Yasunori Goto
2008-02-13 17:31                 ` Badari Pulavarty
2008-02-19 19:43 ` patch driver-core-register_memory-unregister_memory-clean-ups-and-bugfix.patch added to gregkh-2.6 tree gregkh

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=20080212154309.F9DA.Y-GOTO@jp.fujitsu.com \
    --to=y-goto@jp.fujitsu.com \
    --cc=akpm@linux-foundation.org \
    --cc=greg@kroah.com \
    --cc=haveblue@us.ibm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=pbadari@us.ibm.com \
    --subject='Re: [-mm PATCH] register_memory/unregister_memory clean ups' \
    /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

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).