x86/LDT: Print the real LDT base address
[deliverable/linux.git] / arch / x86 / kernel / process_64.c
index b35921a670b25b03878e3f9ac2e96abfae0e910c..b9d99e0f82c4f072a15f7cb3fb3434d391281daf 100644 (file)
@@ -125,7 +125,7 @@ void release_thread(struct task_struct *dead_task)
                if (dead_task->mm->context.ldt) {
                        pr_warn("WARNING: dead process %s still has LDT? <%p/%d>\n",
                                dead_task->comm,
-                               dead_task->mm->context.ldt,
+                               dead_task->mm->context.ldt->entries,
                                dead_task->mm->context.ldt->size);
                        BUG();
                }
@@ -332,7 +332,7 @@ __switch_to(struct task_struct *prev_p, struct task_struct *next_p)
        /*
         * Switch FS and GS.
         *
-        * These are even more complicated than FS and GS: they have
+        * These are even more complicated than DS and ES: they have
         * 64-bit bases are that controlled by arch_prctl.  Those bases
         * only differ from the values in the GDT or LDT if the selector
         * is 0.
@@ -401,14 +401,6 @@ __switch_to(struct task_struct *prev_p, struct task_struct *next_p)
         */
        this_cpu_write(current_task, next_p);
 
-       /*
-        * If it were not for PREEMPT_ACTIVE we could guarantee that the
-        * preempt_count of all tasks was equal here and this would not be
-        * needed.
-        */
-       task_thread_info(prev_p)->saved_preempt_count = this_cpu_read(__preempt_count);
-       this_cpu_write(__preempt_count, task_thread_info(next_p)->saved_preempt_count);
-
        /* Reload esp0 and ss1.  This changes current_thread_info(). */
        load_sp0(tss, next);
 
This page took 0.037073 seconds and 5 git commands to generate.