* [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).