* [PATCH] fix x86-32 early fixmap initialization. [not found] <47520F37.20657.4A6846F1@pageexec.freemail.hu> @ 2007-12-02 1:34 ` Eric W. Biederman 2007-12-02 2:24 ` Yinghai Lu 0 siblings, 1 reply; 4+ messages in thread From: Eric W. Biederman @ 2007-12-02 1:34 UTC (permalink / raw) To: H. Peter Anvin, Thomas Gleixner, Ingo Molnar Cc: linux-kernel, pageexec, Yinghai Lu pageexec@freemail.hu writes: > hello, > > i've just noticed that the chunk in i386/kernel/head.S ended up in a > weird place, namely, it's not going to be executed as it's just after > a 'jmp 3f' and before startup_32_smp, probably not what you intended. > on a sidenote, the whole thing can be done in a single insn, like: > > movl $(swapper_pg_pmd - __PAGE_OFFSET + 0x067), (swapper_pg_dir - > __PAGE_OFFSET+ 4092) > > PS: your email address ebiderman@xmisson.com in the commit seems to > be wrong as well. Yes. YH refresh one of my old patches and apparently got my email address wrong. Thanks for the reminder I thought we had fixed this problem a while ago. Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com> --- diff --git a/arch/x86/kernel/head_32.S b/arch/x86/kernel/head_32.S index 374b7ec..ac0637a 100644 --- a/arch/x86/kernel/head_32.S +++ b/arch/x86/kernel/head_32.S @@ -193,6 +193,12 @@ default_entry: jb 10b movl %edi,(init_pg_tables_end - __PAGE_OFFSET) + /* Do an early initialization of the fixmap area */ + movl $(swapper_pg_dir - __PAGE_OFFSET), %edx + movl $(swapper_pg_pmd - __PAGE_OFFSET), %eax + addl $0x007, %eax /* 0x007 = PRESENT+RW+USER */ + movl %eax, 4092(%edx) + xorl %ebx,%ebx /* This is the boot CPU (BSP) */ jmp 3f /* @@ -208,12 +214,6 @@ default_entry: .section .init.text,"ax",@progbits #endif - /* Do an early initialization of the fixmap area */ - movl $(swapper_pg_dir - __PAGE_OFFSET), %edx - movl $(swapper_pg_pmd - __PAGE_OFFSET), %eax - addl $0x007, %eax /* 0x007 = PRESENT+RW+USER */ - movl %eax, 4092(%edx) - #ifdef CONFIG_SMP ENTRY(startup_32_smp) cld ^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH] fix x86-32 early fixmap initialization. 2007-12-02 1:34 ` [PATCH] fix x86-32 early fixmap initialization Eric W. Biederman @ 2007-12-02 2:24 ` Yinghai Lu 2007-12-02 2:32 ` Eric W. Biederman 2007-12-04 12:51 ` Ingo Molnar 0 siblings, 2 replies; 4+ messages in thread From: Yinghai Lu @ 2007-12-02 2:24 UTC (permalink / raw) To: Eric W. Biederman Cc: H. Peter Anvin, Thomas Gleixner, Ingo Molnar, linux-kernel, pageexec On Dec 1, 2007 5:34 PM, Eric W. Biederman <ebiederm@xmission.com> wrote: > > pageexec@freemail.hu writes: > > > hello, > > > > i've just noticed that the chunk in i386/kernel/head.S ended up in a > > weird place, namely, it's not going to be executed as it's just after > > a 'jmp 3f' and before startup_32_smp, probably not what you intended. > > on a sidenote, the whole thing can be done in a single insn, like: > > > > movl $(swapper_pg_pmd - __PAGE_OFFSET + 0x067), (swapper_pg_dir - > > __PAGE_OFFSET+ 4092) > > > > PS: your email address ebiderman@xmisson.com in the commit seems to > > be wrong as well. > > Yes. YH refresh one of my old patches and apparently got my email > address wrong. > > Thanks for the reminder I thought we had fixed this problem a while ago. i sent fix to andrew and andi. but it seems they missed it. BTW: how about your head32.c patch series. YH ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] fix x86-32 early fixmap initialization. 2007-12-02 2:24 ` Yinghai Lu @ 2007-12-02 2:32 ` Eric W. Biederman 2007-12-04 12:51 ` Ingo Molnar 1 sibling, 0 replies; 4+ messages in thread From: Eric W. Biederman @ 2007-12-02 2:32 UTC (permalink / raw) To: Yinghai Lu Cc: H. Peter Anvin, Thomas Gleixner, Ingo Molnar, linux-kernel, pageexec "Yinghai Lu" <yhlu.kernel@gmail.com> writes: > On Dec 1, 2007 5:34 PM, Eric W. Biederman <ebiederm@xmission.com> wrote: >> >> pageexec@freemail.hu writes: >> >> > hello, >> > >> > i've just noticed that the chunk in i386/kernel/head.S ended up in a >> > weird place, namely, it's not going to be executed as it's just after >> > a 'jmp 3f' and before startup_32_smp, probably not what you intended. >> > on a sidenote, the whole thing can be done in a single insn, like: >> > >> > movl $(swapper_pg_pmd - __PAGE_OFFSET + 0x067), (swapper_pg_dir - >> > __PAGE_OFFSET+ 4092) >> > >> > PS: your email address ebiderman@xmisson.com in the commit seems to >> > be wrong as well. >> >> Yes. YH refresh one of my old patches and apparently got my email >> address wrong. >> >> Thanks for the reminder I thought we had fixed this problem a while ago. > > i sent fix to andrew and andi. but it seems they missed it. Well hopefully the new arch/x86 maintainers can pick up a simple bug fix. Hopefully this code has not bit-rotted yet. > BTW: how about your head32.c patch series. I think it is a wonderful idea ;) Right now I'm buried in the namespace work. I am seeing my todo list shrink visibly on that day by day, but it is still a mighty list. Hopefully that list will won't include any patches that just need refreshing and merging by the time 2.6.25 rolls around... Eric ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] fix x86-32 early fixmap initialization. 2007-12-02 2:24 ` Yinghai Lu 2007-12-02 2:32 ` Eric W. Biederman @ 2007-12-04 12:51 ` Ingo Molnar 1 sibling, 0 replies; 4+ messages in thread From: Ingo Molnar @ 2007-12-04 12:51 UTC (permalink / raw) To: Yinghai Lu Cc: Eric W. Biederman, H. Peter Anvin, Thomas Gleixner, Ingo Molnar, linux-kernel, pageexec * Yinghai Lu <yhlu.kernel@gmail.com> wrote: > On Dec 1, 2007 5:34 PM, Eric W. Biederman <ebiederm@xmission.com> wrote: > > > > pageexec@freemail.hu writes: > > > > > hello, > > > > > > i've just noticed that the chunk in i386/kernel/head.S ended up in a > > > weird place, namely, it's not going to be executed as it's just after > > > a 'jmp 3f' and before startup_32_smp, probably not what you intended. > > > on a sidenote, the whole thing can be done in a single insn, like: > > > > > > movl $(swapper_pg_pmd - __PAGE_OFFSET + 0x067), (swapper_pg_dir - > > > __PAGE_OFFSET+ 4092) > > > > > > PS: your email address ebiderman@xmisson.com in the commit seems to > > > be wrong as well. > > > > Yes. YH refresh one of my old patches and apparently got my email > > address wrong. > > > > Thanks for the reminder I thought we had fixed this problem a while > > ago. > > i sent fix to andrew and andi. but it seems they missed it. ok, this one is now upstream, it's in -rc4: -------------> commit 17d57a9206b4de6ad082ac9f2d2346985abbd2aa Author: Eric W. Biederman <ebiederm@xmission.com> Date: Sat Dec 1 18:34:06 2007 -0700 x86: fix x86-32 early fixmap initialization. pageexec@freemail.hu writes: ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2007-12-04 12:51 UTC | newest] Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- [not found] <47520F37.20657.4A6846F1@pageexec.freemail.hu> 2007-12-02 1:34 ` [PATCH] fix x86-32 early fixmap initialization Eric W. Biederman 2007-12-02 2:24 ` Yinghai Lu 2007-12-02 2:32 ` Eric W. Biederman 2007-12-04 12:51 ` Ingo Molnar
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).