From 65de09c7a6eb13bf1dde5ff5db9f6560c33d2eb1 Mon Sep 17 00:00:00 2001 From: Adrian-Ken Rueegsegger Date: Tue, 17 Feb 2015 10:19:11 +0100 Subject: [PATCH] hw_x86_64: Reserve space for client context pointer A pointer to the client context is placed in the mt_client_context_ptr area. It is used to pass the current client context to the lowlevel mode-switching assembly code. --- repos/base-hw/src/core/spec/x86_64/mode_transition.s | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/repos/base-hw/src/core/spec/x86_64/mode_transition.s b/repos/base-hw/src/core/spec/x86_64/mode_transition.s index 08c200b53..78ca7d409 100644 --- a/repos/base-hw/src/core/spec/x86_64/mode_transition.s +++ b/repos/base-hw/src/core/spec/x86_64/mode_transition.s @@ -14,6 +14,9 @@ .include "macros.s" +/* size of pointer to CPU context */ +.set CONTEXT_PTR_SIZE, 1 * 8 + .section .text /* @@ -44,6 +47,7 @@ .p2align 2 .global _mt_client_context_ptr _mt_client_context_ptr: + .space CONTEXT_PTR_SIZE /* a globally mapped buffer per CPU */ .p2align 2