On May 8, 2007, at 1:14 AM, Simon Horman wrote: > X-SpamDetect-Info: ------------- Start ASpam results --------------- > X-SpamDetect-Info: This message may be spam. This message BODY has > been altered to show you the spam information > X-SpamDetect: ****: 4.500000 From3consonants=0.5, GreyPassed=1.0, > DodgySource=2.0, SPF Default Fail=1.0 > X-SpamDetect-Info: ------------- End ASpam results ----------------- > > On Mon, May 07, 2007 at 05:03:04PM -0700, Geoff Levand wrote: >> Change the ppc64 device-tree memory node name spec to match the >> allowable names >> specified in the booting-without-of document. >> >> Signed-off-by: Geoff Levand <geoffrey.levand at am.sony.com> > > Again, this seems fine to me, but I'm not an expert on the device tree. > Milton, how does this change sit with you? [several cases of] >> - if (strncmp(dentry->d_name, "memory@", 7)) >> + if (strncmp(dentry->d_name, "memory", 6)) Thinking about it a bit, this makes the check too generic. There are firmware platforms that generate /memory-controller nodes which should not be found. While we really should be looking for the device type, for now the simplest would be to accept ether memory@ or memory\0. The one counting the nodes could remain memory, since we are just sizing an allocation. > >> --- >> kexec/arch/ppc64/crashdump-ppc64.c | 2 +- >> kexec/arch/ppc64/kexec-ppc64.c | 10 +++++----- >> 2 files changed, 6 insertions(+), 6 deletions(-) >> >> --- kexec-tools-hacked.orig/kexec/arch/ppc64/crashdump-ppc64.c >> +++ kexec-tools-hacked/kexec/arch/ppc64/crashdump-ppc64.c >> @@ -129,7 +129,7 @@ static int get_crash_memory_ranges(struc >> goto err; >> } >> while ((dentry = readdir(dir)) != NULL) { >> - if (strncmp(dentry->d_name, "memory@", 7)) >> + if (strncmp(dentry->d_name, "memory", 6)) >> continue; >> strcpy(fname, device_tree); >> strcat(fname, dentry->d_name); >> --- kexec-tools-hacked.orig/kexec/arch/ppc64/kexec-ppc64.c >> +++ kexec-tools-hacked/kexec/arch/ppc64/kexec-ppc64.c >> @@ -98,7 +98,7 @@ err1: >> } >> >> /* >> - * Count the memory@ nodes under /proc/device-tree and populate the >> + * Count the memory nodes under /proc/device-tree and populate the >> * max_memory_ranges variable. This variable replaces >> MAX_MEMORY_RANGES >> * macro used earlier. >> */ >> @@ -114,7 +114,7 @@ static int count_memory_ranges(void) >> } >> >> while ((dentry = readdir(dir)) != NULL) { >> - if (strncmp(dentry->d_name, "memory@", 7) && >> + if (strncmp(dentry->d_name, "memory", 6) && >> strncmp(dentry->d_name, "pci@", 4)) >> continue; >> max_memory_ranges++; >> @@ -170,7 +170,7 @@ static int get_base_ranges(void) >> return -1; >> } >> while ((dentry = readdir(dir)) != NULL) { >> - if (strncmp(dentry->d_name, "memory@", 7)) >> + if (strncmp(dentry->d_name, "memory", 6)) >> continue; >> strcpy(fname, device_tree); >> strcat(fname, dentry->d_name); >> @@ -272,7 +272,7 @@ static int get_devtree_details(unsigned >> >> while ((dentry = readdir(dir)) != NULL) { >> if (strncmp(dentry->d_name, "chosen", 6) && >> - strncmp(dentry->d_name, "memory at 0", 8) && >> + strncmp(dentry->d_name, "memory", 6) && >> strncmp(dentry->d_name, "pci@", 4) && >> strncmp(dentry->d_name, "rtas", 4)) >> continue; >> @@ -452,7 +452,7 @@ static int get_devtree_details(unsigned >> add_usable_mem_rgns(rtas_base, rtas_size); >> } /* rtas */ >> >> - if (strncmp(dentry->d_name, "memory at 0", 8) == 0) { >> + if (strncmp(dentry->d_name, "memory", 6) == 0) { >> strcat(fname, "/reg"); >> if ((file = fopen(fname, "r")) == NULL) { >> perror(fname); >> >> -- >> >> >> >> _______________________________________________ >> kexec mailing list >> kexec at lists.infradead.org >> http://lists.infradead.org/mailman/listinfo/kexec > > -- > Horms > H: http://www.vergenet.net/~horms/ > W: http://www.valinux.co.jp/en/ >