Module Name:    src
Committed By:   maxv
Date:           Wed Jul 13 15:59:54 UTC 2016

Modified Files:
        src/sys/compat/linux/arch/i386: linux_machdep.c

Log Message:
x86_alldisks can be NULL, so don't dereference it. Not tested, but obvious
enough.


To generate a diff of this commit:
cvs rdiff -u -r1.161 -r1.162 src/sys/compat/linux/arch/i386/linux_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/compat/linux/arch/i386/linux_machdep.c
diff -u src/sys/compat/linux/arch/i386/linux_machdep.c:1.161 src/sys/compat/linux/arch/i386/linux_machdep.c:1.162
--- src/sys/compat/linux/arch/i386/linux_machdep.c:1.161	Tue Dec  8 21:27:50 2015
+++ src/sys/compat/linux/arch/i386/linux_machdep.c	Wed Jul 13 15:59:54 2016
@@ -1,4 +1,4 @@
-/*	$NetBSD: linux_machdep.c,v 1.161 2015/12/08 21:27:50 christos Exp $	*/
+/*	$NetBSD: linux_machdep.c,v 1.162 2016/07/13 15:59:54 maxv Exp $	*/
 
 /*-
  * Copyright (c) 1995, 2000, 2008, 2009 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: linux_machdep.c,v 1.161 2015/12/08 21:27:50 christos Exp $");
+__KERNEL_RCSID(0, "$NetBSD: linux_machdep.c,v 1.162 2016/07/13 15:59:54 maxv Exp $");
 
 #if defined(_KERNEL_OPT)
 #include "opt_vm86.h"
@@ -107,8 +107,9 @@ __KERNEL_RCSID(0, "$NetBSD: linux_machde
 #define DPRINTF(a)
 #endif
 
-static struct biosdisk_info *fd2biosinfo(struct proc *, struct file *);
 extern struct disklist *x86_alldisks;
+
+static struct biosdisk_info *fd2biosinfo(struct proc *, struct file *);
 static void linux_save_ucontext(struct lwp *, struct trapframe *,
     const sigset_t *, struct sigaltstack *, struct linux_ucontext *);
 static void linux_save_sigcontext(struct lwp *, struct trapframe *,
@@ -761,6 +762,8 @@ fd2biosinfo(struct proc *p, struct file 
 	struct nativedisk_info *nip;
 	struct disklist *dl = x86_alldisks;
 
+	if (dl == NULL)
+		return NULL;
 	if (fp->f_type != DTYPE_VNODE)
 		return NULL;
 	vp = (struct vnode *)fp->f_data;

Reply via email to