xref: /dflybsd-src/sys/kern/kern_dsched.c (revision 5f0fe703ba9b92b80474ba29ad14f8e1fb1d97e9)
10160356dSAlex Hornung /*
2*3573cf7bSMatthew Dillon  * Copyright (c) 2009, 2010, 2015 The DragonFly Project.  All rights reserved.
30160356dSAlex Hornung  *
40160356dSAlex Hornung  * This code is derived from software contributed to The DragonFly Project
50160356dSAlex Hornung  * by Alex Hornung <ahornung@gmail.com>
60160356dSAlex Hornung  *
70160356dSAlex Hornung  * Redistribution and use in source and binary forms, with or without
80160356dSAlex Hornung  * modification, are permitted provided that the following conditions
90160356dSAlex Hornung  * are met:
100160356dSAlex Hornung  *
110160356dSAlex Hornung  * 1. Redistributions of source code must retain the above copyright
120160356dSAlex Hornung  *    notice, this list of conditions and the following disclaimer.
130160356dSAlex Hornung  * 2. Redistributions in binary form must reproduce the above copyright
140160356dSAlex Hornung  *    notice, this list of conditions and the following disclaimer in
150160356dSAlex Hornung  *    the documentation and/or other materials provided with the
160160356dSAlex Hornung  *    distribution.
170160356dSAlex Hornung  * 3. Neither the name of The DragonFly Project nor the names of its
180160356dSAlex Hornung  *    contributors may be used to endorse or promote products derived
190160356dSAlex Hornung  *    from this software without specific, prior written permission.
200160356dSAlex Hornung  *
210160356dSAlex Hornung  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
220160356dSAlex Hornung  * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
230160356dSAlex Hornung  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
240160356dSAlex Hornung  * FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE
250160356dSAlex Hornung  * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
260160356dSAlex Hornung  * INCIDENTAL, SPECIAL, EXEMPLARY OR CONSEQUENTIAL DAMAGES (INCLUDING,
270160356dSAlex Hornung  * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
280160356dSAlex Hornung  * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
290160356dSAlex Hornung  * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
300160356dSAlex Hornung  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
310160356dSAlex Hornung  * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
320160356dSAlex Hornung  * SUCH DAMAGE.
330160356dSAlex Hornung  */
340160356dSAlex Hornung #include <sys/param.h>
350160356dSAlex Hornung #include <sys/systm.h>
360160356dSAlex Hornung #include <sys/kernel.h>
370160356dSAlex Hornung #include <sys/proc.h>
380160356dSAlex Hornung #include <sys/sysctl.h>
390160356dSAlex Hornung #include <sys/buf.h>
400160356dSAlex Hornung #include <sys/conf.h>
410160356dSAlex Hornung #include <sys/diskslice.h>
420160356dSAlex Hornung #include <sys/disk.h>
430160356dSAlex Hornung #include <sys/malloc.h>
440160356dSAlex Hornung #include <machine/md_var.h>
450160356dSAlex Hornung #include <sys/ctype.h>
460160356dSAlex Hornung #include <sys/syslog.h>
470160356dSAlex Hornung #include <sys/device.h>
480160356dSAlex Hornung #include <sys/msgport.h>
490160356dSAlex Hornung #include <sys/msgport2.h>
500160356dSAlex Hornung #include <sys/buf2.h>
510160356dSAlex Hornung #include <sys/dsched.h>
520160356dSAlex Hornung #include <sys/fcntl.h>
530160356dSAlex Hornung 
540160356dSAlex Hornung /*
550160356dSAlex Hornung  * Called on disk_create()
560160356dSAlex Hornung  * tries to read which policy to use from loader.conf, if there's
570160356dSAlex Hornung  * none specified, the default policy is used.
580160356dSAlex Hornung  */
590160356dSAlex Hornung void
dsched_disk_create(struct disk * dp,const char * head_name,int unit)60*3573cf7bSMatthew Dillon dsched_disk_create(struct disk *dp, const char *head_name, int unit)
610160356dSAlex Hornung {
620160356dSAlex Hornung }
630160356dSAlex Hornung 
640160356dSAlex Hornung /*
65279e9fd5SAlex Hornung  * Called from disk_setdiskinfo (or rather _setdiskinfo). This will check if
66279e9fd5SAlex Hornung  * there's any policy associated with the serial number of the device.
67279e9fd5SAlex Hornung  */
68279e9fd5SAlex Hornung void
dsched_disk_update(struct disk * dp,struct disk_info * info)69*3573cf7bSMatthew Dillon dsched_disk_update(struct disk *dp, struct disk_info *info)
70279e9fd5SAlex Hornung {
71279e9fd5SAlex Hornung }
72279e9fd5SAlex Hornung 
73279e9fd5SAlex Hornung /*
740160356dSAlex Hornung  * Called on disk_destroy()
750160356dSAlex Hornung  * shuts down the scheduler core and cancels all remaining bios
760160356dSAlex Hornung  */
770160356dSAlex Hornung void
dsched_disk_destroy(struct disk * dp)78*3573cf7bSMatthew Dillon dsched_disk_destroy(struct disk *dp)
790160356dSAlex Hornung {
80bc3c9325SAlex Hornung }
81