浏览代码

x86: prepare arch/x86/kernel/ldt_32/64.c for merging

White space and coding style cleanups.

Change unsigned to int. There is no win when we compare mincount against pc->size,
which is an int as well. Casting pc->size to unsigned just might hide real problems.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Thomas Gleixner 17 年之前
父节点
当前提交
70f5088dd5
共有 2 个文件被更改,包括 12 次插入15 次删除
  1. 1 2
      arch/x86/kernel/ldt_32.c
  2. 11 13
      arch/x86/kernel/ldt_64.c

+ 1 - 2
arch/x86/kernel/ldt_32.c

@@ -27,8 +27,7 @@ static void flush_ldt(void *null)
 
 static int alloc_ldt(mm_context_t *pc, int mincount, int reload)
 {
-	void *oldldt;
-	void *newldt;
+	void *oldldt, *newldt;
 	int oldsize;
 
 	if (mincount <= pc->size)

+ 11 - 13
arch/x86/kernel/ldt_64.c

@@ -18,7 +18,7 @@
 #include <asm/system.h>
 #include <asm/ldt.h>
 #include <asm/desc.h>
-#include <asm/proto.h>
+#include <asm/mmu_context.h>
 
 #ifdef CONFIG_SMP
 static void flush_ldt(void *null)
@@ -28,13 +28,12 @@ static void flush_ldt(void *null)
 }
 #endif
 
-static int alloc_ldt(mm_context_t *pc, unsigned mincount, int reload)
+static int alloc_ldt(mm_context_t *pc, int mincount, int reload)
 {
-	void *oldldt;
-	void *newldt;
-	unsigned oldsize;
+	void *oldldt, *newldt;
+	int oldsize;
 
-	if (mincount <= (unsigned)pc->size)
+	if (mincount <= pc->size)
 		return 0;
 	oldsize = pc->size;
 	mincount = (mincount + 511) & (~511);
@@ -56,13 +55,14 @@ static int alloc_ldt(mm_context_t *pc, unsigned mincount, int reload)
 	wmb();
 	pc->size = mincount;
 	wmb();
+
 	if (reload) {
 #ifdef CONFIG_SMP
 		cpumask_t mask;
 
 		preempt_disable();
-		mask = cpumask_of_cpu(smp_processor_id());
 		load_LDT(pc);
+		mask = cpumask_of_cpu(smp_processor_id());
 		if (!cpus_equal(current->mm->cpu_vm_mask, mask))
 			smp_call_function(flush_ldt, NULL, 1, 1);
 		preempt_enable();
@@ -115,7 +115,7 @@ int init_new_context(struct task_struct *tsk, struct mm_struct *mm)
 void destroy_context(struct mm_struct *mm)
 {
 	if (mm->context.size) {
-		if ((unsigned)mm->context.size * LDT_ENTRY_SIZE > PAGE_SIZE)
+		if (mm->context.size * LDT_ENTRY_SIZE > PAGE_SIZE)
 			vfree(mm->context.ldt);
 		else
 			kfree(mm->context.ldt);
@@ -170,18 +170,16 @@ static int read_default_ldt(void __user *ptr, unsigned long bytecount)
 
 static int write_ldt(void __user *ptr, unsigned long bytecount, int oldmode)
 {
-	struct task_struct *me = current;
-	struct mm_struct *mm = me->mm;
+	struct mm_struct *mm = current->mm;
 	__u32 entry_1, entry_2;
 	int error;
 	struct user_desc ldt_info;
 
 	error = -EINVAL;
-
 	if (bytecount != sizeof(ldt_info))
 		goto out;
 	error = -EFAULT;
-	if (copy_from_user(&ldt_info, ptr, bytecount))
+	if (copy_from_user(&ldt_info, ptr, sizeof(ldt_info)))
 		goto out;
 
 	error = -EINVAL;
@@ -195,7 +193,7 @@ static int write_ldt(void __user *ptr, unsigned long bytecount, int oldmode)
 	}
 
 	mutex_lock(&mm->context.lock);
-	if (ldt_info.entry_number >= (unsigned)mm->context.size) {
+	if (ldt_info.entry_number >= mm->context.size) {
 		error = alloc_ldt(&current->mm->context,
 				  ldt_info.entry_number + 1, 1);
 		if (error < 0)