[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <48EB8BBB.8000907@kernel.org>
Date: Tue, 07 Oct 2008 09:18:03 -0700
From: Yinghai Lu <yinghai@...nel.org>
To: KAMEZAWA Hiroyuki <kamezawa.hiroyu@...fujitsu.com>
CC: "mingo@...e.hu" <mingo@...e.hu>, linux-kernel@...r.kernel.org,
akpm@...ux-foundation.org
Subject: Re: mmotm 2008-10-02-16-17 uploaded
KAMEZAWA Hiroyuki wrote:
> I'm sorry if alread fixed.
>
> Folloing function in git-x86.patch touches invalid address.
> ==
> +void __init early_cpu_init(void)
> +{
> + struct cpu_dev **cdev;
> + int count = 0;
> +
> + printk("KERNEL supported cpus:\n");
> + for (cdev = __x86_cpu_dev_start; cdev < __x86_cpu_dev_end; cdev++) {
> + struct cpu_dev *cpudev = *cdev;
> + unsigned int j;
> +
> + if (count >= X86_VENDOR_NUM)
> + break;
> + cpu_devs[count] = cpudev;
> + count++;
> +
> + for (j = 0; j < 2; j++) {
> + if (!cpudev->c_ident[j])
> + continue;
> + printk(" %s %s\n", cpudev->c_vendor,
> + cpudev->c_ident[j]);
> + }
> + }
> +
> + early_identify_cpu(&boot_cpu_data);
> }
> ==
> printk(" %s %s\n", cpudev->c_vendor, cpudev->c_ident[j]);
> touches invalid address. (following is printk() result by
> replacing %s with %p.
> ==
> ffffffff8066e38a ffffffff8066e383
> ffffffff8066e3ab ffffffff8066e3a2
> ffffffff8066e3af ffffffff8066e3b7
> 807064c0c7c74855 08ec834853e58948
> 807064c0c7c74855 74c085fffffe9fe8
> ==
> and the kernel never boots on my box.
could be merging problem again.
please check in arch/x86/kernel/vmliux_64.lds.S
it should be like
__con_initcall_end = .;
__x86_cpu_dev_start = .;
.x86_cpu_dev.init : AT(ADDR(.x86_cpu_dev.init) - LOAD_OFFSET) {
*(.x86_cpu_dev.init)
}
__x86_cpu_dev_end = .;
DYN_ARRAY_INIT(8)
SECURITY_INIT
YH
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists