Module Name:    src
Committed By:   pgoyette
Date:           Mon May  4 23:50:36 UTC 2015

Modified Files:
        src/sys/dev/sysmon: sysmon.c

Log Message:
If autoload of the subcomponent module fails, don't try to call its
open routine.  Just return an error.

Hopefully this will fix the recently reported issues with atf tests
running on xen guest.


To generate a diff of this commit:
cvs rdiff -u -r1.25 -r1.26 src/sys/dev/sysmon/sysmon.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/dev/sysmon/sysmon.c
diff -u src/sys/dev/sysmon/sysmon.c:1.25 src/sys/dev/sysmon/sysmon.c:1.26
--- src/sys/dev/sysmon/sysmon.c:1.25	Wed Apr 29 03:27:27 2015
+++ src/sys/dev/sysmon/sysmon.c	Mon May  4 23:50:36 2015
@@ -1,4 +1,4 @@
-/*	$NetBSD: sysmon.c,v 1.25 2015/04/29 03:27:27 pgoyette Exp $	*/
+/*	$NetBSD: sysmon.c,v 1.26 2015/05/04 23:50:36 pgoyette Exp $	*/
 
 /*-
  * Copyright (c) 2000 Zembu Labs, Inc.
@@ -39,7 +39,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: sysmon.c,v 1.25 2015/04/29 03:27:27 pgoyette Exp $");
+__KERNEL_RCSID(0, "$NetBSD: sysmon.c,v 1.26 2015/05/04 23:50:36 pgoyette Exp $");
 
 #include <sys/param.h>
 #include <sys/conf.h>
@@ -153,8 +153,10 @@ sysmonopen(dev_t dev, int flag, int mode
 			error = module_autoload(sysmon_mod[minor(dev)],
 						MODULE_CLASS_MISC);
 			mutex_enter(&sysmon_minor_mtx);
-			if (sysmon_opvec_table[minor(dev)] == NULL)
+			if (sysmon_opvec_table[minor(dev)] == NULL) {
 				error = ENODEV;
+				break;
+			}
 		}
 		error = (sysmon_opvec_table[minor(dev)]->so_open)(dev, flag,
 		    mode, l);

Reply via email to