Messages in this thread | | | Date | Wed, 1 Oct 2008 09:36:36 +0200 | From | Ingo Molnar <> | Subject | Re: [PATCH] fix: x86: remove cpu_vendor_dev |
| |
* Yinghai Lu <yinghai@kernel.org> wrote:
> On Tue, Sep 30, 2008 at 11:49 PM, Ingo Molnar <mingo@elte.hu> wrote: > > > > * Yinghai Lu <yinghai@kernel.org> wrote: > > > >> On Tue, Sep 30, 2008 at 12:37 PM, Alexander van Heukelum > >> <heukelum@mailshack.com> wrote: > >> > x86_64-kernels after commit 10a434fcb "x86: remove cpu_vendor_dev" > >> > crashed on qemu-system-x86_64 due to a typo in vmlinux_64.lds.S. > >> > > >> > Signed-off-by: Alexander van Heukelum <heukelum@fastmail.fm> > >> > > >> > --- > >> > > >> > On Tue, Sep 30, 2008 at 06:41:33PM +0200, Alexander van Heukelum wrote: > >> >> Moreover, a defconfig won't run :-/ (on qemu-system-x86_64). > >> >> Bisection pointed to commit 10a434fcb "x86: remove cpu_vendor_dev". > >> >> The kernel crashes early with a general protection fault in a call > >> >> to strnlen. I have no idea what goes wrong, yet. > >> > > >> > It took quite some time, but I found the problem... I'll leave > >> > the other one to you ;). > >> > > >> > Greetings, > >> > Alexander > >> > > >> > arch/x86/kernel/vmlinux_64.lds.S | 2 +- > >> > 1 files changed, 1 insertions(+), 1 deletions(-) > >> > > >> > diff --git a/arch/x86/kernel/vmlinux_64.lds.S b/arch/x86/kernel/vmlinux_64.lds.S > >> > index 201e81a..46e0544 100644 > >> > --- a/arch/x86/kernel/vmlinux_64.lds.S > >> > +++ b/arch/x86/kernel/vmlinux_64.lds.S > >> > @@ -172,8 +172,8 @@ SECTIONS > >> > .x86_cpu_dev.init : AT(ADDR(.x86_cpu_dev.init) - LOAD_OFFSET) { > >> > *(.x86_cpu_dev.init) > >> > } > >> > - SECURITY_INIT > >> > __x86_cpu_dev_end = .; > >> > + SECURITY_INIT > >> > > >> > . = ALIGN(8); > >> > .parainstructions : AT(ADDR(.parainstructions) - LOAD_OFFSET) { > >> > > >> > >> that is merging problem, Ingo should fix that already... > > > > indeed. I've fixed it in tip/x86/traps by applying Alexander's patch. > > > > still have merging problem... in tip/master we have > > __x86_cpu_dev_start = .; > .x86_cpu_dev.init : AT(ADDR(.x86_cpu_dev.init) - LOAD_OFFSET) { > *(.x86_cpu_dev.init) > } > __x86_cpu_dev_end = .; > SECURITY_INIT > > DYN_ARRAY_INIT(8) > > SECURITY_INIT > > there is two copy of SECURITY_INIT
indeed. I fixed this up now.
interestingly, this seems to be one of the rare cases where Git auto-merge does the wrong thing - tt should have detected a conflict.
Ingo
| |