From 4124fccb77aaa513e8e2d89187f20fb6d0d7475d Mon Sep 17 00:00:00 2001 From: Michal Simek Date: Tue, 22 Jun 2010 17:46:27 +0200 Subject: [PATCH] --- yaml --- r: 204663 b: refs/heads/master c: b318067e2c946a560035faf47e24a20e50696cce h: refs/heads/master i: 204661: 213c10fdf307f5be6af0f25d3440d685020de3f2 204659: 7763dfef19dbedd106958d444be3ab9c6fe49126 204655: 377bcefb2e5430b21b1bec23c100d04e648630c6 v: v3 --- [refs] | 2 +- trunk/arch/microblaze/kernel/entry.S | 15 +++++++++++++++ 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index bb585ba8faf9..11bcdc839f62 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 77f6d226050e2d8f046e268a9f84ec834172f0de +refs/heads/master: b318067e2c946a560035faf47e24a20e50696cce diff --git a/trunk/arch/microblaze/kernel/entry.S b/trunk/arch/microblaze/kernel/entry.S index 5318ad375fec..5529f64e97e8 100644 --- a/trunk/arch/microblaze/kernel/entry.S +++ b/trunk/arch/microblaze/kernel/entry.S @@ -91,6 +91,11 @@ nop .endm + .macro clear_ums + msrclr r11, MSR_UMS + nop + .endm + .macro clear_vms_ums msrclr r11, MSR_VMS | MSR_UMS nop @@ -162,6 +167,14 @@ nop .endm + .macro clear_ums + mfs r11, rmsr + nop + andni r11, r11, MSR_UMS + mts rmsr,r11 + nop + .endm + .macro clear_vms_ums mfs r11, rmsr nop @@ -526,6 +539,8 @@ C_ENTRY(sys_rt_sigreturn_wrapper): swi r0, r1, PTO + PT_MODE; /* Was in user-mode. */ \ lwi r11, r0, TOPHYS(PER_CPU(ENTRY_SP)); \ swi r11, r1, PTO+PT_R1; /* Store user SP. */ \ + /* MS: I am clearing UMS even in case when I come from kernel space */ \ + clear_ums; \ 2: lwi CURRENT_TASK, r0, TOPHYS(PER_CPU(CURRENT_SAVE)); C_ENTRY(full_exception_trap):