Module Name: src
Committed By: christos
Date: Fri Oct 23 18:53:26 UTC 2015
Modified Files:
src/sys/arch/x86/x86: sys_machdep.c
Log Message:
fix broken error handling; error was used uninitialized. Changing the
compilation flags broke all threaded programs for me.
XXX: pullup-7
To generate a diff of this commit:
cvs rdiff -u -r1.28 -r1.29 src/sys/arch/x86/x86/sys_machdep.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/arch/x86/x86/sys_machdep.c
diff -u src/sys/arch/x86/x86/sys_machdep.c:1.28 src/sys/arch/x86/x86/sys_machdep.c:1.29
--- src/sys/arch/x86/x86/sys_machdep.c:1.28 Sat Jun 28 17:13:12 2014
+++ src/sys/arch/x86/x86/sys_machdep.c Fri Oct 23 14:53:26 2015
@@ -1,4 +1,4 @@
-/* $NetBSD: sys_machdep.c,v 1.28 2014/06/28 21:13:12 dholland Exp $ */
+/* $NetBSD: sys_machdep.c,v 1.29 2015/10/23 18:53:26 christos Exp $ */
/*-
* Copyright (c) 1998, 2007, 2009 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: sys_machdep.c,v 1.28 2014/06/28 21:13:12 dholland Exp $");
+__KERNEL_RCSID(0, "$NetBSD: sys_machdep.c,v 1.29 2015/10/23 18:53:26 christos Exp $");
#include "opt_mtrr.h"
#include "opt_perfctrs.h"
@@ -659,7 +659,6 @@ x86_set_sdbase(void *arg, char which, lw
#else
struct pcb *pcb;
vaddr_t base;
- int error;
if (l->l_proc->p_flag & PK_32) {
return x86_set_sdbase32(arg, which, l, direct);
@@ -668,7 +667,7 @@ x86_set_sdbase(void *arg, char which, lw
if (direct) {
base = (vaddr_t)arg;
} else {
- error = copyin(arg, &base, sizeof(base));
+ int error = copyin(arg, &base, sizeof(base));
if (error != 0)
return error;
}
@@ -676,10 +675,6 @@ x86_set_sdbase(void *arg, char which, lw
if (base >= VM_MAXUSER_ADDRESS)
return EINVAL;
- if (error) {
- return error;
- }
-
pcb = lwp_getpcb(l);
kpreempt_disable();
@@ -699,7 +694,7 @@ x86_set_sdbase(void *arg, char which, lw
}
kpreempt_enable();
- return error;
+ return 0;
#endif
}