x86: fix fragile computation of vsyscall address
authorAnders Kaseorg <andersk@ksplice.com>
Wed, 16 Sep 2009 20:44:26 +0000 (16:44 -0400)
committerH. Peter Anvin <hpa@zytor.com>
Fri, 18 Sep 2009 17:21:45 +0000 (10:21 -0700)
commitd223246ef7e6d73c8e3d9b58f27f2eb3fe95e25d
tree7d2d5d3ed0825fe2a832369af55ca76b71afee97
parentdaf7b9c9216e2b82e4c14b7248a85286dab021c3
x86: fix fragile computation of vsyscall address

Previously, the address of the vsyscall page (VSYSCALL_PHYS_ADDR,
VSYSCALL_VIRT_ADDR) was computed by arithmetic on the address of the
last section.  This leads to bugs when new sections are inserted, such
as the one fixed by commit d312ceda567ab91acd756cde95ac5fbc6b40ed40.
Let's compute it from the current address instead.

Signed-off-by: Anders Kaseorg <andersk@ksplice.com>
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
arch/x86/kernel/vmlinux.lds.S