1501092bbSDag-Erling Smørgrav.\"- 2*e738085bSDag-Erling Smørgrav.\" Copyright (c) 2006 Dag-Erling Smørgrav 3501092bbSDag-Erling Smørgrav.\" All rights reserved. 4501092bbSDag-Erling Smørgrav.\" 5501092bbSDag-Erling Smørgrav.\" Redistribution and use in source and binary forms, with or without 6501092bbSDag-Erling Smørgrav.\" modification, are permitted provided that the following conditions 7501092bbSDag-Erling Smørgrav.\" are met: 8501092bbSDag-Erling Smørgrav.\" 1. Redistributions of source code must retain the above copyright 9501092bbSDag-Erling Smørgrav.\" notice, this list of conditions and the following disclaimer. 10501092bbSDag-Erling Smørgrav.\" 2. Redistributions in binary form must reproduce the above copyright 11501092bbSDag-Erling Smørgrav.\" notice, this list of conditions and the following disclaimer in the 12501092bbSDag-Erling Smørgrav.\" documentation and/or other materials provided with the distribution. 13501092bbSDag-Erling Smørgrav.\" 14501092bbSDag-Erling Smørgrav.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 15501092bbSDag-Erling Smørgrav.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 16501092bbSDag-Erling Smørgrav.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 17501092bbSDag-Erling Smørgrav.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 18501092bbSDag-Erling Smørgrav.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 19501092bbSDag-Erling Smørgrav.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 20501092bbSDag-Erling Smørgrav.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 21501092bbSDag-Erling Smørgrav.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 22501092bbSDag-Erling Smørgrav.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 23501092bbSDag-Erling Smørgrav.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 24501092bbSDag-Erling Smørgrav.\" SUCH DAMAGE. 25501092bbSDag-Erling Smørgrav.\" 26501092bbSDag-Erling Smørgrav.Dd February 18, 2006 27501092bbSDag-Erling Smørgrav.Dt KLD 3 28aa12cea2SUlrich Spörlein.Os 29501092bbSDag-Erling Smørgrav.Sh NAME 30501092bbSDag-Erling Smørgrav.Nm kld_isloaded , 31501092bbSDag-Erling Smørgrav.Nm kld_load 32501092bbSDag-Erling Smørgrav.Nd kld utility functions 33501092bbSDag-Erling Smørgrav.Sh LIBRARY 34501092bbSDag-Erling Smørgrav.Lb libutil 35501092bbSDag-Erling Smørgrav.Sh SYNOPSIS 36501092bbSDag-Erling Smørgrav.In libutil.h 37501092bbSDag-Erling Smørgrav.Ft int 38501092bbSDag-Erling Smørgrav.Fn kld_isloaded "const char *name" 39501092bbSDag-Erling Smørgrav.Ft int 40501092bbSDag-Erling Smørgrav.Fn kld_load "const char *name" 41501092bbSDag-Erling Smørgrav.Sh DESCRIPTION 42501092bbSDag-Erling SmørgravThese functions facilitate loading kernel modules from userland 43501092bbSDag-Erling Smørgravapplications. 44501092bbSDag-Erling Smørgrav.Pp 45501092bbSDag-Erling SmørgravThe 46501092bbSDag-Erling Smørgrav.Fn kld_isloaded 47501092bbSDag-Erling Smørgravfunction takes a name and returns a non-zero value if a module of that 48501092bbSDag-Erling Smørgravname is currently loaded. 49501092bbSDag-Erling SmørgravThe name can be either the name of a module file 50ad136d1eSRuslan Ermilov.Pq Pa cpufreq.ko , 51501092bbSDag-Erling Smørgravthe same name without the 52501092bbSDag-Erling Smørgrav.Pa .ko 53501092bbSDag-Erling Smørgravextension 54ad136d1eSRuslan Ermilov.Pq Pa cpufreq , 55501092bbSDag-Erling Smørgravor the name of a module contained within that file 56ad136d1eSRuslan Ermilov.Pq Pa cpu/ichss . 57501092bbSDag-Erling SmørgravOnly the latter will return correct results if the module is compiled 58501092bbSDag-Erling Smørgravinto the kernel. 59501092bbSDag-Erling Smørgrav.Pp 60501092bbSDag-Erling SmørgravThe 61501092bbSDag-Erling Smørgrav.Fn kld_load 62501092bbSDag-Erling Smørgravfunction is a simple wrapper around the 63ad136d1eSRuslan Ermilov.Xr kldload 2 64501092bbSDag-Erling Smørgravfunction. 65501092bbSDag-Erling SmørgravIt returns zero if and only if the corresponding 66501092bbSDag-Erling Smørgrav.Fn kldload 67501092bbSDag-Erling Smørgravcall succeeded or returned 68501092bbSDag-Erling Smørgrav.Er EEXIST 69501092bbSDag-Erling Smørgrav(signifying that the requested module was already loaded). 70501092bbSDag-Erling Smørgrav.Sh SEE ALSO 71a07b02efSMaxim Konovalov.Xr kldfirstmod 2 , 72501092bbSDag-Erling Smørgrav.Xr kldload 2 , 73501092bbSDag-Erling Smørgrav.Xr kldnext 2 , 74501092bbSDag-Erling Smørgrav.Xr kldstat 2 , 75501092bbSDag-Erling Smørgrav.Xr modfnext 2 , 76a07b02efSMaxim Konovalov.Xr modstat 2 , 77a07b02efSMaxim Konovalov.Xr kld 4 78501092bbSDag-Erling Smørgrav.Sh HISTORY 79501092bbSDag-Erling SmørgravThe 80501092bbSDag-Erling Smørgrav.Fn kld_isloaded 81501092bbSDag-Erling Smørgravand 82501092bbSDag-Erling Smørgrav.Fn kld_load 83501092bbSDag-Erling Smørgravfunctions first appeared in 8461881b52SDavid E. O'Brien.Fx 6.3 . 85501092bbSDag-Erling Smørgrav.Sh AUTHORS 86501092bbSDag-Erling SmørgravThe 87501092bbSDag-Erling Smørgrav.Fn kld_isloaded 88501092bbSDag-Erling Smørgravand 89501092bbSDag-Erling Smørgrav.Fn kld_load 90501092bbSDag-Erling Smørgravfunctions and this manual page were written by 912b7af31cSBaptiste Daroussin.An Dag-Erling Sm\(/orgrav Aq Mt des@FreeBSD.org . 92