diff options
author | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2018-01-18 14:09:03 +0100 |
---|---|---|
committer | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2018-01-18 14:09:03 +0100 |
commit | 9c527481190ed900f9bac550353988fdc7b2526c (patch) | |
tree | 4df149892cf46098ee25d9e83a56f14d28985d29 /i386/ldscript | |
parent | de813a9cd1351607ea8c183d2b64628328c358fd (diff) |
Pushing what I came up with for now. Next issues are at least kernel stacks access and LDT accessmeltdown
Diffstat (limited to 'i386/ldscript')
-rw-r--r-- | i386/ldscript | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/i386/ldscript b/i386/ldscript index ddbbf910..79f25ea5 100644 --- a/i386/ldscript +++ b/i386/ldscript @@ -16,6 +16,14 @@ SECTIONS AT (_START_MAP) { *(.text.start) + + /* Separate pages for what should be mapped along userland */ + . = ALIGN (CONSTANT(MAXPAGESIZE)); + PROVIDE (_sharedtext_start = .); + *(.text.shared) + . = ALIGN (CONSTANT(MAXPAGESIZE)); + PROVIDE (_sharedtext_end = .); + *(.text .stub .text.* .gnu.linkonce.t.*) *(.text.unlikely .text.*_unlikely) KEEP (*(.text.*personality*)) @@ -138,6 +146,14 @@ SECTIONS .got.plt : { *(.got.plt) *(.igot.plt) } .data : { + + /* Separate pages for what should be mapped along userland */ + . = ALIGN (CONSTANT(MAXPAGESIZE)); + PROVIDE (_shareddata_start = .); + *(.data.shared) + . = ALIGN (CONSTANT(MAXPAGESIZE)); + PROVIDE (_shareddata_end = .); + *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } |