aboutsummaryrefslogtreecommitdiff
path: root/x86_64/spl.S
diff options
context:
space:
mode:
authorSamuel Thibault <samuel.thibault@ens-lyon.org>2023-05-26 02:38:59 +0200
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2023-05-26 02:46:59 +0200
commit9a8e6290eb6db52b3aa19cad522880d22807ed65 (patch)
tree5b29b214b633f1e33a5d0ee12500e06919337f53 /x86_64/spl.S
parentf7e039d23dd7ed50a4af53fa63ee322e7e4b386c (diff)
downloadgnumach-9a8e6290eb6db52b3aa19cad522880d22807ed65.tar.gz
gnumach-9a8e6290eb6db52b3aa19cad522880d22807ed65.tar.bz2
gnumach-9a8e6290eb6db52b3aa19cad522880d22807ed65.zip
Xen 64bit: Also put kernel at end of addressing space
Diffstat (limited to 'x86_64/spl.S')
-rw-r--r--x86_64/spl.S6
1 files changed, 4 insertions, 2 deletions
diff --git a/x86_64/spl.S b/x86_64/spl.S
index 27bc39ea..e4f87d85 100644
--- a/x86_64/spl.S
+++ b/x86_64/spl.S
@@ -198,7 +198,8 @@ splx_cli:
je 1f /* yes, all done */
movl %edx,CX(EXT(curr_ipl),%eax) /* set ipl */
#ifdef MACH_XEN
- movl EXT(int_mask)(,%edx,4),%eax
+ movl EXT(int_mask),%eax
+ movl (%eax,%edx,4),%eax
/* get int mask */
XEN_SETMASK() /* program xen evts with new mask */
#endif
@@ -228,7 +229,8 @@ spl:
cmpl $SPL7,%edx /* spl7? */
je EXT(spl7) /* yes, handle specially */
#ifdef MACH_XEN
- movl EXT(int_mask)(,%edx,4),%eax
+ movl EXT(int_mask),%eax
+ movl (%eax,%edx,4),%eax
/* get int mask */
#endif
cli /* disable interrupts */