linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: Minchan Kim <minchan.kim@gmail.com>
To: Christoph Lameter <cl@linux-foundation.org>
Cc: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>,
	Milton Miller <miltonm@bga.com>,
	linux-kernel@vger.kernel.org, linux-mm@kvack.org,
	Andrew Morton <akpm@linux-foundation.org>,
	Russell King <linux@arm.linux.org.uk>, Mel Gorman <mel@csn.ul.ie>,
	Johannes Weiner <hannes@cmpxchg.org>,
	Kukjin Kim <kgene.kim@samsung.com>
Subject: Re: [PATCH] Tight check of pfn_valid on sparsemem - v4
Date: Fri, 30 Jul 2010 02:03:13 +0900	[thread overview]
Message-ID: <20100729170313.GB16420@barrios-desktop> (raw)
In-Reply-To: <alpine.DEB.2.00.1007291132210.17734@router.home>

On Thu, Jul 29, 2010 at 11:47:26AM -0500, Christoph Lameter wrote:
> On Fri, 30 Jul 2010, Minchan Kim wrote:
> 
> > The thing is valid section also have a invalid memmap.
> 
> Oww... . A valid section points to a valid memmap memory block (the page
> structs) but the underlying memory pages may not present. So you can check
> the (useless) page structs for the page state of the not present pages in
> the memory map. If the granularity of the sparsemem mapping is not
> sufficient for your purpose then you can change the sparsemem config
> (configuration is in arch/<arch>/include/asm/sparsemem.h but does not
> exist for arm).
> 
> >      It means section 0 is an incompletely filled section.
> >      Nontheless, current pfn_valid of sparsemem checks pfn loosely.
> >      It checks only mem_section's validation but ARM can free mem_map on hole
> >      to save memory space. So in above case, pfn on 0x25000000 can pass pfn_valid's
> >      validation check. It's not what we want.
> 
> IMHO ARM should not poke holes in the memmap sections. The guarantee of
> the full presence of the section is intentional to avoid having to do
> these checks that you are proposing. The page allocator typically expects
> to be able to check all page structs in one basic allocation unit.
> 
> Also pfn_valid then does not have to touch the pag struct to perform its
> function as long as we guarantee the presence of the memmap section.

Absolutely Right. Many mm guys wanted to do it. 
But Russell doesn't want it. 
Please, look at the discussion. 

http://www.spinics.net/lists/arm-kernel/msg93026.html

In fact, we didn't determine the approache at that time.
But I think we can't give up ARM's usecase although sparse model
dosn't be desinged to the such granularity. and I think this approach
can solve ARM's FLATMEM's pfn_valid problem which is doing binar search. 
So I just tried to solve this problem. But Russell still be quiet. 

Okay. I will wait other's opinion. 
First of all, let's fix the approach.
Russell, Could you speak your opinion about this approach or your suggestion?

-- 
Kind regards,
Minchan Kim

--
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:[~2010-07-29 17:03 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-07-26 15:46 Minchan Kim
2010-07-26 16:40 ` Christoph Lameter
2010-07-26 22:47   ` Minchan Kim
     [not found]   ` <pfn.valid.v4.reply.1@mdm.bga.com>
     [not found]     ` <AANLkTimtTVvorrR9pDVTyPKj0HbYOYY3aR7B-QWGhTei@mail.gmail.com>
2010-07-27  8:12       ` Milton Miller
2010-07-27  8:13         ` KAMEZAWA Hiroyuki
2010-07-27 10:01           ` Minchan Kim
2010-07-27 14:34             ` Christoph Lameter
2010-07-27 22:33               ` Minchan Kim
2010-07-28 15:14                 ` Christoph Lameter
2010-07-28 15:56                   ` Minchan Kim
2010-07-28 17:02                     ` Christoph Lameter
2010-07-28 22:57                       ` Minchan Kim
2010-07-29 15:46                         ` Christoph Lameter
2010-07-29 16:18                           ` Minchan Kim
2010-07-29 16:47                             ` Christoph Lameter
2010-07-29 17:03                               ` Minchan Kim [this message]
2010-07-29 17:30                                 ` Christoph Lameter
2010-07-29 18:33                                   ` Russell King - ARM Linux
2010-07-29 19:55                                     ` Christoph Lameter
2010-07-29 21:13                                       ` Russell King - ARM Linux
2010-07-29 20:55                                     ` Dave Hansen
2010-07-29 22:14                                       ` Russell King - ARM Linux
2010-07-29 22:28                                         ` Christoph Lameter
2010-07-30  0:38                                         ` Dave Hansen
2010-07-30  9:43                                           ` Minchan Kim
2010-07-30 12:48                                           ` Christoph Lameter
2010-07-30 15:43                                             ` Dave Hansen
2010-07-31 15:30                                             ` Russell King - ARM Linux
2010-08-02 15:48                                               ` Christoph Lameter
2010-07-30  9:32                                       ` Minchan Kim
2010-07-31 10:38                                         ` Russell King - ARM Linux
2010-08-11 15:31                                           ` Dave Hansen
2010-07-27  9:56         ` Minchan Kim

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=20100729170313.GB16420@barrios-desktop \
    --to=minchan.kim@gmail.com \
    --cc=akpm@linux-foundation.org \
    --cc=cl@linux-foundation.org \
    --cc=hannes@cmpxchg.org \
    --cc=kamezawa.hiroyu@jp.fujitsu.com \
    --cc=kgene.kim@samsung.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=linux@arm.linux.org.uk \
    --cc=mel@csn.ul.ie \
    --cc=miltonm@bga.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox