CentOS 7.0 - man page for query_module (centos section 2)

Linux & Unix Commands - Search Man Pages

Man Page or Keyword Search:   man
Select Man Page Set:       apropos Keyword Search (sections above)


QUERY_MODULE(2) 		    Linux Programmer's Manual			  QUERY_MODULE(2)

NAME
       query_module - query the kernel for various bits pertaining to modules

SYNOPSIS
       #include <linux/module.h>

       int query_module(const char *name, int which, void *buf,
			size_t bufsize, size_t *ret);

       Note: There is no glibc wrapper for this system call; see NOTES.

DESCRIPTION
       Note: This system call is present only in kernels before Linux 2.6.

       query_module()  requests information from the kernel about loadable modules.  The returned
       information is placed in the buffer pointed to by buf.  The caller must specify	the  size
       of  buf	in  bufsize.  The precise nature and format of the returned information depend on
       the operation specified by which.  Some operations require name to  identify  a	currently
       loaded module, some allow name to be NULL, indicating the kernel proper.

       The following values can be specified for which:

       0      Returns  success,  if the kernel supports query_module().  Used to probe for avail-
	      ability of the system call.

       QM_MODULES
	      Returns the names of all	loaded	modules.   The	returned  buffer  consists  of	a
	      sequence of null-terminated strings; ret is set to the number of modules.

       QM_DEPS
	      Returns the names of all modules used by the indicated module.  The returned buffer
	      consists of a sequence of null-terminated strings; ret is set to the number of mod-
	      ules.

       QM_REFS
	      Returns  the  names of all modules using the indicated module.  This is the inverse
	      of QM_DEPS.  The returned buffer consists of a sequence of null-terminated strings;
	      ret is set to the number of modules.

       QM_SYMBOLS
	      Returns the symbols and values exported by the kernel or the indicated module.  The
	      returned buffer is an array of structures of the following form

		  struct module_symbol {
		      unsigned long value;
		      unsigned long name;
		  };

	      followed by null-terminated strings.  The value of name is the character offset  of
	      the string relative to the start of buf; ret is set to the number of symbols.

       QM_INFO
	      Returns  miscellaneous  information  about the indicated module.	The output buffer
	      format is:

		  struct module_info {
		      unsigned long address;
		      unsigned long size;
		      unsigned long flags;
		  };

	      where address is the kernel address at which the module resides, size is	the  size
	      of  the  module  in bytes, and flags is a mask of MOD_RUNNING, MOD_AUTOCLEAN, etc.,
	      that indicates the current status of the module (see the Linux kernel  source  file
	      include/linux/module.h).	ret is set to the size of the module_info structure.

RETURN VALUE
       On success, zero is returned.  On error, -1 is returned and errno is set appropriately.

ERRORS
       EFAULT At  least  one  of  name,  buf, or ret was outside the program's accessible address
	      space.

       EINVAL Invalid which; or name is NULL (indicating "the kernel"), but this is not permitted
	      with the specified value of which.

       ENOENT No module by that name exists.

       ENOSPC The buffer size provided was too small.  ret is set to the minimum size needed.

       ENOSYS query_module()  is not supported in this version of the kernel (e.g., the kernel is
	      version 2.6 or later).

VERSIONS
       This system call is present on Linux only up until kernel 2.4; it  was  removed	in  Linux
       2.6.

CONFORMING TO
       query_module() is Linux-specific.

NOTES
       Some  of  the  information  that was formerly available via query_module() can be obtained
       from /proc/modules, /proc/kallsyms, and the files under the directory /sys/module.

       Glibc does not provide a wrapper for this system call; in the unlikely event that you need
       to use it on an old kernel, use syscall(2).

SEE ALSO
       create_module(2),  delete_module(2),  get_kernel_syms(2),  init_module(2),  lsmod(8), mod-
       info(8)

COLOPHON
       This page is part of release 3.53 of the Linux man-pages project.  A  description  of  the
       project,     and    information	  about    reporting	bugs,	 can	be    found    at
       http://www.kernel.org/doc/man-pages/.

Linux					    2013-01-27				  QUERY_MODULE(2)
Unix & Linux Commands & Man Pages : ©2000 - 2018 Unix and Linux Forums


All times are GMT -4. The time now is 10:59 PM.

Unix & Linux Forums Content Copyright©1993-2018. All Rights Reserved.
×
UNIX.COM Login
Username:
Password:  
Show Password





Not a Forum Member?
Forgot Password?