提交 343c3f64 编写于 作者: P Pavel Machek 提交者: Linus Torvalds

[PATCH] s-t-RAM: load gdt the right way

Sleep code uses wrong version of lgdt, that does the wrong thing when
gdt is beyond 16MB or so.
Signed-off-by: NPavel Machek <pavel@suse.cz>
Signed-off-by: NAndrew Morton <akpm@osdl.org>
Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
上级 648be318
...@@ -67,7 +67,7 @@ wakeup_code: ...@@ -67,7 +67,7 @@ wakeup_code:
shll $4, %eax shll $4, %eax
addl $(gdta - wakeup_code), %eax addl $(gdta - wakeup_code), %eax
movl %eax, gdt_48a +2 - wakeup_code movl %eax, gdt_48a +2 - wakeup_code
lgdt %ds:gdt_48a - wakeup_code # load gdt with whatever is lgdtl %ds:gdt_48a - wakeup_code # load gdt with whatever is
# appropriate # appropriate
movl $1, %eax # protected mode (PE) bit movl $1, %eax # protected mode (PE) bit
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册