Module Name: src Committed By: pgoyette Date: Wed Nov 16 10:42:14 UTC 2016
Modified Files: src/sys/kern: bufq_disksort.c bufq_fcfs.c bufq_priocscan.c bufq_readprio.c init_main.c subr_bufq.c src/sys/sys: module.h Log Message: Define a new module class for the bufq_strategy modules. These need to be loaded and intialized before autoconfigure runs, since some devices (like disks and floppy drives) want to call bufq_alloc(). To generate a diff of this commit: cvs rdiff -u -r1.12 -r1.13 src/sys/kern/bufq_disksort.c cvs rdiff -u -r1.11 -r1.12 src/sys/kern/bufq_fcfs.c cvs rdiff -u -r1.19 -r1.20 src/sys/kern/bufq_priocscan.c cvs rdiff -u -r1.14 -r1.15 src/sys/kern/bufq_readprio.c cvs rdiff -u -r1.485 -r1.486 src/sys/kern/init_main.c cvs rdiff -u -r1.22 -r1.23 src/sys/kern/subr_bufq.c cvs rdiff -u -r1.40 -r1.41 src/sys/sys/module.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/kern/bufq_disksort.c diff -u src/sys/kern/bufq_disksort.c:1.12 src/sys/kern/bufq_disksort.c:1.13 --- src/sys/kern/bufq_disksort.c:1.12 Wed Nov 16 00:46:46 2016 +++ src/sys/kern/bufq_disksort.c Wed Nov 16 10:42:14 2016 @@ -1,4 +1,4 @@ -/* $NetBSD: bufq_disksort.c,v 1.12 2016/11/16 00:46:46 pgoyette Exp $ */ +/* $NetBSD: bufq_disksort.c,v 1.13 2016/11/16 10:42:14 pgoyette Exp $ */ /* NetBSD: subr_disk.c,v 1.61 2004/09/25 03:30:44 thorpej Exp */ /*- @@ -68,7 +68,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: bufq_disksort.c,v 1.12 2016/11/16 00:46:46 pgoyette Exp $"); +__KERNEL_RCSID(0, "$NetBSD: bufq_disksort.c,v 1.13 2016/11/16 10:42:14 pgoyette Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -229,7 +229,7 @@ bufq_disksort_init(struct bufq_state *bu TAILQ_INIT(&disksort->bq_head); } -MODULE(MODULE_CLASS_MISC, bufq_disksort, NULL); +MODULE(MODULE_CLASS_BUFQ, bufq_disksort, NULL); static int bufq_disksort_modcmd(modcmd_t cmd, void *opaque) Index: src/sys/kern/bufq_fcfs.c diff -u src/sys/kern/bufq_fcfs.c:1.11 src/sys/kern/bufq_fcfs.c:1.12 --- src/sys/kern/bufq_fcfs.c:1.11 Wed Nov 16 00:46:46 2016 +++ src/sys/kern/bufq_fcfs.c Wed Nov 16 10:42:14 2016 @@ -1,4 +1,4 @@ -/* $NetBSD: bufq_fcfs.c,v 1.11 2016/11/16 00:46:46 pgoyette Exp $ */ +/* $NetBSD: bufq_fcfs.c,v 1.12 2016/11/16 10:42:14 pgoyette Exp $ */ /* NetBSD: subr_disk.c,v 1.61 2004/09/25 03:30:44 thorpej Exp */ /*- @@ -68,7 +68,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: bufq_fcfs.c,v 1.11 2016/11/16 00:46:46 pgoyette Exp $"); +__KERNEL_RCSID(0, "$NetBSD: bufq_fcfs.c,v 1.12 2016/11/16 10:42:14 pgoyette Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -153,7 +153,7 @@ bufq_fcfs_init(struct bufq_state *bufq) TAILQ_INIT(&fcfs->bq_head); } -MODULE(MODULE_CLASS_MISC, bufq_fcfs, NULL); +MODULE(MODULE_CLASS_BUFQ, bufq_fcfs, NULL); static int bufq_fcfs_modcmd(modcmd_t cmd, void *opaque) Index: src/sys/kern/bufq_priocscan.c diff -u src/sys/kern/bufq_priocscan.c:1.19 src/sys/kern/bufq_priocscan.c:1.20 --- src/sys/kern/bufq_priocscan.c:1.19 Wed Nov 16 00:46:46 2016 +++ src/sys/kern/bufq_priocscan.c Wed Nov 16 10:42:14 2016 @@ -1,4 +1,4 @@ -/* $NetBSD: bufq_priocscan.c,v 1.19 2016/11/16 00:46:46 pgoyette Exp $ */ +/* $NetBSD: bufq_priocscan.c,v 1.20 2016/11/16 10:42:14 pgoyette Exp $ */ /*- * Copyright (c)2004,2005,2006,2008,2009,2011,2012 YAMAMOTO Takashi, @@ -27,7 +27,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: bufq_priocscan.c,v 1.19 2016/11/16 00:46:46 pgoyette Exp $"); +__KERNEL_RCSID(0, "$NetBSD: bufq_priocscan.c,v 1.20 2016/11/16 10:42:14 pgoyette Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -444,7 +444,7 @@ bufq_priocscan_init(struct bufq_state *b } } -MODULE(MODULE_CLASS_MISC, bufq_priocscan, NULL); +MODULE(MODULE_CLASS_BUFQ, bufq_priocscan, NULL); static int bufq_priocscan_modcmd(modcmd_t cmd, void *opaque) Index: src/sys/kern/bufq_readprio.c diff -u src/sys/kern/bufq_readprio.c:1.14 src/sys/kern/bufq_readprio.c:1.15 --- src/sys/kern/bufq_readprio.c:1.14 Wed Nov 16 00:46:46 2016 +++ src/sys/kern/bufq_readprio.c Wed Nov 16 10:42:14 2016 @@ -1,4 +1,4 @@ -/* $NetBSD: bufq_readprio.c,v 1.14 2016/11/16 00:46:46 pgoyette Exp $ */ +/* $NetBSD: bufq_readprio.c,v 1.15 2016/11/16 10:42:14 pgoyette Exp $ */ /* NetBSD: subr_disk.c,v 1.61 2004/09/25 03:30:44 thorpej Exp */ /*- @@ -68,7 +68,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: bufq_readprio.c,v 1.14 2016/11/16 00:46:46 pgoyette Exp $"); +__KERNEL_RCSID(0, "$NetBSD: bufq_readprio.c,v 1.15 2016/11/16 10:42:14 pgoyette Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -281,7 +281,7 @@ bufq_readprio_init(struct bufq_state *bu TAILQ_INIT(&prio->bq_write); } -MODULE(MODULE_CLASS_MISC, bufq_readprio, NULL); +MODULE(MODULE_CLASS_BUFQ, bufq_readprio, NULL); static int bufq_readprio_modcmd(modcmd_t cmd, void *opaque) Index: src/sys/kern/init_main.c diff -u src/sys/kern/init_main.c:1.485 src/sys/kern/init_main.c:1.486 --- src/sys/kern/init_main.c:1.485 Wed Nov 16 00:46:46 2016 +++ src/sys/kern/init_main.c Wed Nov 16 10:42:14 2016 @@ -1,4 +1,4 @@ -/* $NetBSD: init_main.c,v 1.485 2016/11/16 00:46:46 pgoyette Exp $ */ +/* $NetBSD: init_main.c,v 1.486 2016/11/16 10:42:14 pgoyette Exp $ */ /*- * Copyright (c) 2008, 2009 The NetBSD Foundation, Inc. @@ -97,7 +97,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: init_main.c,v 1.485 2016/11/16 00:46:46 pgoyette Exp $"); +__KERNEL_RCSID(0, "$NetBSD: init_main.c,v 1.486 2016/11/16 10:42:14 pgoyette Exp $"); #include "opt_ddb.h" #include "opt_inet.h" @@ -484,6 +484,12 @@ main(void) /* Initialize sockets thread(s) */ soinit1(); + /* + * Initialize the bufq strategy modules - they may be needed + * by some devices during configuration + */ + module_init_class(MODULE_CLASS_BUFQ); + /* Configure the system hardware. This will enable interrupts. */ configure(); Index: src/sys/kern/subr_bufq.c diff -u src/sys/kern/subr_bufq.c:1.22 src/sys/kern/subr_bufq.c:1.23 --- src/sys/kern/subr_bufq.c:1.22 Wed Nov 16 00:46:46 2016 +++ src/sys/kern/subr_bufq.c Wed Nov 16 10:42:14 2016 @@ -1,4 +1,4 @@ -/* $NetBSD: subr_bufq.c,v 1.22 2016/11/16 00:46:46 pgoyette Exp $ */ +/* $NetBSD: subr_bufq.c,v 1.23 2016/11/16 10:42:14 pgoyette Exp $ */ /* NetBSD: subr_disk.c,v 1.70 2005/08/20 12:00:01 yamt Exp $ */ /*- @@ -68,7 +68,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: subr_bufq.c,v 1.22 2016/11/16 00:46:46 pgoyette Exp $"); +__KERNEL_RCSID(0, "$NetBSD: subr_bufq.c,v 1.23 2016/11/16 10:42:14 pgoyette Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -182,7 +182,7 @@ bufq_alloc(struct bufq_state **bufqp, co strlcpy(module_name, "bufq_", sizeof(module_name)); strlcat(module_name, strategy, sizeof(module_name)); mutex_exit(&bufq_mutex); - (void) module_autoload(module_name, MODULE_CLASS_MISC); + (void) module_autoload(module_name, MODULE_CLASS_BUFQ); mutex_enter(&bufq_mutex); } while (gen != module_gen); Index: src/sys/sys/module.h diff -u src/sys/sys/module.h:1.40 src/sys/sys/module.h:1.41 --- src/sys/sys/module.h:1.40 Mon Jan 18 16:46:08 2016 +++ src/sys/sys/module.h Wed Nov 16 10:42:14 2016 @@ -1,4 +1,4 @@ -/* $NetBSD: module.h,v 1.40 2016/01/18 16:46:08 pooka Exp $ */ +/* $NetBSD: module.h,v 1.41 2016/11/16 10:42:14 pgoyette Exp $ */ /*- * Copyright (c) 2008 The NetBSD Foundation, Inc. @@ -45,7 +45,8 @@ typedef enum modclass { MODULE_CLASS_VFS, MODULE_CLASS_DRIVER, MODULE_CLASS_EXEC, - MODULE_CLASS_SECMODEL + MODULE_CLASS_SECMODEL, + MODULE_CLASS_BUFQ } modclass_t; /* Module sources: where did it come from? */