Upgrade to 4.4.50-rt62
[kvmfornfv.git] / kernel / arch / mips / kernel / traps.c
index ca9a810..99a4022 100644 (file)
@@ -144,7 +144,7 @@ static void show_backtrace(struct task_struct *task, const struct pt_regs *regs)
        if (!task)
                task = current;
 
-       if (raw_show_trace || !__kernel_text_address(pc)) {
+       if (raw_show_trace || user_mode(regs) || !__kernel_text_address(pc)) {
                show_raw_backtrace(sp);
                return;
        }
@@ -1241,7 +1241,7 @@ static int enable_restore_fp_context(int msa)
                err = init_fpu();
                if (msa && !err) {
                        enable_msa();
-                       _init_msa_upper();
+                       init_msa_upper();
                        set_thread_flag(TIF_USEDMSA);
                        set_thread_flag(TIF_MSA_CTX_LIVE);
                }
@@ -1304,7 +1304,7 @@ static int enable_restore_fp_context(int msa)
         */
        prior_msa = test_and_set_thread_flag(TIF_MSA_CTX_LIVE);
        if (!prior_msa && was_fpu_owner) {
-               _init_msa_upper();
+               init_msa_upper();
 
                goto out;
        }
@@ -1321,7 +1321,7 @@ static int enable_restore_fp_context(int msa)
                 * of each vector register such that it cannot see data left
                 * behind by another task.
                 */
-               _init_msa_upper();
+               init_msa_upper();
        } else {
                /* We need to restore the vector context. */
                restore_msa(current);