linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Mel Gorman <mel@csn.ul.ie>
To: Franck <vagabon.xyz@gmail.com>
Cc: Andrew Morton <akpm@osdl.org>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: Re: 2.6.17-mm1
Date: Mon, 26 Jun 2006 14:22:20 +0100 (IST)	[thread overview]
Message-ID: <Pine.LNX.4.64.0606261409140.24431@skynet.skynet.ie> (raw)
In-Reply-To: <449FC592.8050409@innova-card.com>

On Mon, 26 Jun 2006, Franck Bui-Huu wrote:

> Mel Gorman wrote:

>>>> Not all arches will use init_bootmem(). Arm for example uses
>>>> init_bootmem_node(). ARCH_PFN_OFFSET is only meant to affect mem_map,
>>>>
>>> well, I don't agree here. ARCH_PFN_OFFSET is used to save the first
>>> page number that has physical memory. I don't see why we couldn't 
>>> useit to correctly initialise the memory system...
>>
>> Architectures will not always have a known fixed start of physical
>> memory. On IA64 at least, they initialise memory as if it starts at 0
>> but on my one test machine, the beginning part is always a memory hole.
>
> in that case ARCH_PFN_OFFSET is 0 which is the old behaviour, nothing
> change...
>

The change is that ARCH_PFN_OFFSET has a slightly different meaning when 
you alter those two initialisation functions. Currently it is used to 
offset memmap from NODE_DATA(0)->node_start_pfn. By changing 
free_area_init() and init_bootmem(), it changes to altering the value of 
NODE_DATA(0)->node_start_pfn but only when memory is initialised in a 
particular way. I believe it makes ARCH_PFN_OFFSET even more obscure than 
it currently is.

I think we should just fix the problem at hand now for which two simple 
patches have been posted and consider making further changes to 
free_area_init() and init_bootmem() as a separate issue.

>> I've seen nothing to indicate that this hole will be the same size on
>> all IA64 machines but I kinda doubt it. Also, arches that use
>> init_bootmem() do not necessary use free_area_init().
>>
>
> but in that case do they use ARCH_PFN_OFFSET != 0 ?

IA64 do not and I didn't check all arches.

> if so that would be
> very surprising. That would meand "I have a hole a the start of my mem,
> I don't know at compile time where it starts, but I state that my physical
> mem start at ARCH_PFN_OFFSET anyways"
>
>>> If we don't change init_bootmem() to use ARCH_PFN_OFFSET, then the
>>> kernel will initialise the start of memory to 0 which is boggus.
>>> IOW,
>>> we can't use this function without this change (except if your memory
>>> start at 0 of course). And I think that init_bootmem() has been
>>> implemented for systems which have only one node _whatever_ memory
>>> start value...
>>>
>>
>> While you may be right, it'll only fix the problem for arches with
>> ARCH_PFN_OFFSET and using init_bootmem (which is the case of MIPS I
>> guess). But arches using init_bootmem_node or not using free_area_init()
>> may still get kicked.
>>
>
> Again in these cases, I doubt that they will setup ARCH_PFN_OFFSET...
>

-- 
Mel Gorman
Part-time Phd Student                          Linux Technology Center
University of Limerick                         IBM Dublin Software Lab

  reply	other threads:[~2006-06-26 13:22 UTC|newest]

Thread overview: 137+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-06-21 10:48 2.6.17-mm1 Andrew Morton
2006-06-21 11:07 ` 2.6.17-mm1 Michal Piotrowski
2006-06-21 11:17   ` 2.6.17-mm1 Andrew Morton
2006-06-21 11:29     ` 2.6.17-mm1 Michal Piotrowski
2006-06-21 13:53       ` 2.6.17-mm1 Cedric Le Goater
2006-06-21 14:13         ` 2.6.17-mm1 Michal Piotrowski
2006-06-21 16:44         ` 2.6.17-mm1 H. Peter Anvin
2006-06-21 19:26           ` 2.6.17-mm1 Cedric Le Goater
2006-06-21 21:46           ` 2.6.17-mm1 Michal Piotrowski
2006-06-21 11:28 ` 2.6.17-mm1 Andrew Morton
2006-06-21 15:35   ` 2.6.17-mm1 Christoph Lameter
2006-06-21 12:06 ` 2.6.17-mm1 Michal Piotrowski
2006-06-21 15:10 ` [-mm patch] drivers/net/ni5010.c: fix compile error Adrian Bunk
2006-06-22  8:13   ` Andreas Mohr
2006-06-22  8:45     ` Adrian Bunk
2006-06-21 18:22 ` [PATCH] pi-futex-rt-mutex-core-merge.patch (was Re: 2.6.17-mm1 Valdis.Kletnieks
2006-06-21 21:48 ` swsusp regression [Was: 2.6.17-mm1] Jiri Slaby
2006-06-21 22:14   ` Mattia Dongili
2006-06-21 22:18     ` Mattia Dongili
2006-06-22  6:19     ` [linux-pm] " Greg KH
2006-06-22  7:46       ` Andrew Morton
2006-06-22  8:25         ` Jeremy Fitzhardinge
2006-06-22 15:51         ` Alan Stern
2006-06-22 17:17           ` Jeremy Fitzhardinge
2006-06-22 18:46           ` Greg KH
2006-06-22 19:07             ` Greg KH
2006-06-22 19:57             ` Alan Stern
2006-06-22 20:22               ` Greg KH
2006-06-22 20:38               ` Jiri Slaby
2006-06-22 21:09                 ` Alan Stern
2006-06-22 21:11                   ` Greg KH
2006-06-22 16:04         ` Frederik Deweerdt
2006-06-22 16:25           ` Andrew Morton
2006-06-22 19:07             ` Frederik Deweerdt
2006-06-23  9:02             ` Frederik Deweerdt
2006-06-23  9:10               ` Pavel Machek
2006-06-23  9:31                 ` Andrew Morton
2006-06-23 12:12                 ` Frederik Deweerdt
2006-06-23 12:57                   ` Pavel Machek
2006-06-23 13:47                     ` Frederik Deweerdt
2006-06-23 19:57                     ` Andrew Morton
2006-06-26  9:00                       ` Frederik Deweerdt
2006-06-23 19:41                 ` Russell King
2006-06-23 20:22                   ` Dave Jones
2006-06-23 21:10                   ` Rafael J. Wysocki
2006-06-23 22:11                   ` Pavel Machek
2006-06-23 23:53                     ` Frederik Deweerdt
2006-06-24 17:16                       ` Rafael J. Wysocki
2006-06-21 21:57 ` [-mm patch] drivers/acpi/scan.c: make acpi_bus_type static Adrian Bunk
2006-06-21 21:57 ` [-mm patch] drivers/ide/legacy/ide-cs.c: make 2 functions static Adrian Bunk
2006-06-21 21:57 ` [-mm patch] drivers/md/md.c: make code static Adrian Bunk
2006-06-21 21:57 ` [-mm patch] drivers/media/video/vivi.c: make 2 functions static Adrian Bunk
2006-06-21 21:57 ` [-mm patch] gpio: make two mutexes static again Adrian Bunk
2006-06-21 22:54 ` [-mm patch] drivers/scsi/qla2xxx/: make some functions static Adrian Bunk
2006-06-21 23:20 ` [-mm patch] make drivers/scsi/pata_pcmcia.c:pcmcia_remove_one() static Adrian Bunk
2006-06-22 10:50   ` Alan Cox
2006-06-21 23:37 ` [-mm patch] make drivers/usb/misc/cy7c63.c:vendor_command() static Adrian Bunk
2006-06-21 23:39 ` 2.6.17-mm1 : two PF flags with the same value Peter Williams
2006-06-21 23:44   ` Andrew Morton
2006-06-22  0:12   ` Paul Jackson
2006-06-22 10:03 ` [-mm patch] #if 0 drivers/usb/input/hid-core.c:hid_find_field_by_usage() Adrian Bunk
2006-06-22 10:03 ` [-mm patch] fs/gfs2/: make code static Adrian Bunk
2006-06-22 10:25   ` Steven Whitehouse
2006-06-22 14:58 ` 2.6.17-mm1 Franck Bui-Huu
2006-06-22 15:20   ` 2.6.17-mm1 Mel Gorman
2006-06-22 15:50     ` 2.6.17-mm1 Franck Bui-Huu
2006-06-22 15:54       ` 2.6.17-mm1 Mel Gorman
2006-06-22 16:14         ` 2.6.17-mm1 Russell King
2006-06-22 16:50           ` 2.6.17-mm1 Mel Gorman
2006-06-22 17:25         ` 2.6.17-mm1 Franck Bui-Huu
2006-06-23 10:20           ` 2.6.17-mm1 Mel Gorman
2006-06-23 12:22             ` 2.6.17-mm1 Franck Bui-Huu
2006-06-23 12:56               ` 2.6.17-mm1 Franck Bui-Huu
2006-06-23 13:46               ` 2.6.17-mm1 Mel Gorman
2006-06-23 14:52                 ` 2.6.17-mm1 Franck Bui-Huu
2006-06-23 15:06                 ` 2.6.17-mm1 Franck Bui-Huu
2006-06-23 15:13                   ` 2.6.17-mm1 Mel Gorman
2006-06-23 15:51                     ` 2.6.17-mm1 Franck Bui-Huu
2006-06-23 16:38                       ` 2.6.17-mm1 Mel Gorman
2006-06-26  8:31                         ` 2.6.17-mm1 Franck Bui-Huu
2006-06-26 10:37                           ` 2.6.17-mm1 Mel Gorman
2006-06-26 11:31                             ` 2.6.17-mm1 Franck Bui-Huu
2006-06-26 13:22                               ` Mel Gorman [this message]
2006-06-26 13:49                                 ` 2.6.17-mm1 Franck Bui-Huu
2006-06-26 14:31                                   ` 2.6.17-mm1 Mel Gorman
2006-06-26 15:05                                     ` 2.6.17-mm1 Franck Bui-Huu
2006-06-26 15:15                                       ` 2.6.17-mm1 Mel Gorman
2006-06-23 15:14                   ` 2.6.17-mm1 Franck Bui-Huu
2006-06-23 19:55                     ` 2.6.17-mm1 Russell King
2006-06-22 15:52 ` 2.6.17-mm1: kernel/lockdep.c: write-only variables Adrian Bunk
2006-06-23  7:26   ` Ingo Molnar
2006-06-23  7:49     ` Ingo Molnar
2006-06-22 21:34 ` 2.6.17-mm1: UML failing w/o SKAS enabled Theodore Tso
2006-06-22 21:57   ` Andrew Morton
2006-06-23  2:54     ` Jeff Dike
2006-06-23 10:10       ` Roman Zippel
2006-06-23 14:28         ` Jeff Dike
2006-06-26 11:52           ` Roman Zippel
2006-06-29 21:13             ` Jeff Dike
2006-06-23  2:42   ` Jeff Dike
2006-06-23 21:07     ` Theodore Tso
2006-06-23 21:46       ` Jeff Dike
2006-06-24 12:43         ` Theodore Tso
2006-06-24 15:18           ` Jeff Dike
2006-06-24 14:00         ` Theodore Tso
2006-06-24 15:22           ` Jeff Dike
2006-06-24 15:38             ` Theodore Tso
2006-06-24 16:06             ` Thomas Gleixner
2006-06-25 16:08               ` Jeff Dike
2006-06-23 10:55 ` [-mm patch] fs/reiser4/: possible cleanups Adrian Bunk
2006-06-23 15:54   ` Hans Reiser
2006-06-23 10:55 ` [-mm patch] fs/ufs/inode.c: make 2 functions static Adrian Bunk
2006-06-23 10:55 ` [-mm patch] make ipc/sem.c:exit_sem() static Adrian Bunk
2006-06-23 10:55 ` [-mm patch] kernel/lockdep.c: make 3 functions static Adrian Bunk
2006-06-23 11:08   ` Ingo Molnar
2006-06-23 10:55 ` [-mm patch] drivers/char/agp/nvidia-agp.c: remove unused variable Adrian Bunk
2006-06-23 10:55 ` [-mm patch] make kernel/sysctl.c:_proc_do_string() static Adrian Bunk
2006-06-23 10:55 ` [-mm patch] make kernel/utsname.c:clone_uts_ns() Adrian Bunk
2006-06-23 16:35   ` Serge E. Hallyn
2006-06-23 10:56 ` [-mm patch] mm/readahead.c: cleanups Adrian Bunk
2006-06-24  6:00   ` Andrew Morton
2006-06-23 12:33 ` 2.6.17-mm1 Michal Piotrowski
2006-06-23 20:42   ` 2.6.17-mm1 Andrew Morton
2006-06-23 15:48 ` 2.6.17-mm1 Eduard Bloch
2006-06-23 16:42   ` 2.6.17-mm1 Jiri Slaby
2006-06-23 20:39 ` 2.6.17-mm1 Keith Mannthey
2006-06-23 21:32   ` 2.6.17-mm1 Andrew Morton
2006-06-24 21:27     ` 2.6.17-mm1 Sam Ravnborg
2006-06-24 21:53       ` 2.6.17-mm1 Andrew Morton
2006-07-02 18:54         ` 2.6.17-mm1 Tom Rini
2006-06-21 18:19 2.6.17-mm1 Martin Bligh
2006-06-21 18:48 ` 2.6.17-mm1 Mattia Dongili
2006-06-21 19:19   ` 2.6.17-mm1 H. Peter Anvin
2006-06-23 19:23 2.6.17-mm1 Martin Bligh
2006-06-23 21:30 ` 2.6.17-mm1 Andrew Morton
2006-06-26 14:07   ` 2.6.17-mm1 Paulo Marques
2006-06-25  6:03 2.6.17-mm1 Chuck Ebbert

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=Pine.LNX.4.64.0606261409140.24431@skynet.skynet.ie \
    --to=mel@csn.ul.ie \
    --cc=akpm@osdl.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=vagabon.xyz@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 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).