The
modstat ();
system call writes the info for the kernel module referred to by
Fa modid
into
Fa stat .
struct module_stat {
int version; /* set to sizeof(module_stat) */
char name[MAXMODNAME];
int refs;
int id;
modspecific_t data;
};
typedef union modspecific {
int intval;
u_int u_intval;
long longval;
u_long u_longval;
} modspecific_t;
version
This field is set to the size of the structure mentioned above by the code
calling
modstat (,);
and not
modstat ();
itself.
name
The name of the module referred to by
Fa modid .
refs
The number of modules referenced by
Fa modid .
id
The id of the module specified in
Fa modid .
data
Module specific data.
RETURN VALUES
Rv -std modstat
ERRORS
The information for the module referred to by
Fa modid
is filled into the structure pointed to by
Fa stat
unless:
Bq Er ENOENT
The module was not found (probably not loaded).
Bq Er EINVAL
The version specified in the
Fa version
field of stat is not the proper version.
You would need to rebuild world, the
kernel, or your application, if this error occurs, given that you did properly
fill in the
Fa version
field.
Bq Er EFAULT
There was a problem copying one, some, or all of the fields into
Fa stat
in the
copyout(9)
function.