INSMOD(1)              Linux Module Support             INSMOD(1)


NNAAMMEE
      insmod - install loadable kernel module

SSYYNNOOPPSSIISS
      iinnssmmoodd [ -fkmpsxXv ] [ -o module_name ] object_file [ sym-
      bol=value ... ]

DDEESSCCRRIIPPTTIIOONN
      IInnssmmoodd installs a loadable module in the running kernel.

      IInnssmmoodd tries to link a module into the running  kernel  by
      resolving  all  symbols  from the kernel's exported symbol
      table.

      If the object file name is given without extension, iinnssmmoodd
      will search for the module in some common default directo-
      ries.  The environment variable MODPATH  can  be  used  to
      override this default.

  OOPPTTIIOONNSS
      _-_f     Attempt  load the module even if the version of the
             running kernel and the version of  the  kernel  for
             which the module was compiled do not match.

      _-_k     Set  the  auto-clean flag on the module.  This flag
             will be used by kkeerrnneelldd(8) to remove  modules  that
             have  not  been used in some period of time -- usu-
             ally one minute.

      _-_m     Output a load map, making it easier  to  debug  the
             module in the event of a kernel panic.

      _-_o     Explicitly  name  the  module, rather than deriving
             the name from the base name of  the  source  object
             file.

      _-_p     Probe the module to see if it could be successfully
             loaded.  This includes locating the object file  in
             the  module  path,  checking  version  numbers, and
             resolving symbols.

      _-_s     Output everything to ssyysslloogg(3) instead of the  ter-
             minal.

      _-_v     Be verbose.

      _-_X_, _-_x Do  and  do not export all of the module's external
             symbols, respectively.  The default is for the sym-
             bols to be exported.  This option is only effective
             if the module does not explicitly  export  its  own
             controled symbol table, and thus is depreciated.

  MMOODDUULLEE PPAARRAAMMEETTEERRSS
      Some  modules  accept  load-time  parameters  to customize



Linux                      26 Dec 1996                          1





INSMOD(1)              Linux Module Support             INSMOD(1)


      their operation.  These parameters are often I/O port  and
      IRQ  numbers  that vary from machine to machine and cannot
      be determined from the hardware.

      In modules built for 2.0 series kernels,  any  integer  or
      character pointer symbol may be treated as a parameter and
      modified.  Beginning in the 2.1  series  kernels,  symbols
      are  explicitly marked as parameters so that only specific
      values may be chagned.  Furthermore  type  information  is
      provied for checking the values provided at load time.

      In  the  case  of  integers, all values may be in decimal,
      octal or hexadecimal a la C: 17, 021 or 0x11.  Array  ele-
      ments  are  specified  sequence separrated by commas; ele-
      ments can be skipped by omitting the value.

      In 2.0 series modules, values that do  not  begin  with  a
      number  are  considered  strings.   Beginning  in 2.1, the
      parameter's type information indicates whether  to  inter-
      pret the value as a string.  If the value begins with dou-
      ble-quotes (_"), the string is interpreted as in C,  escape
      sequences  and  all.   Do note that from the shell prompt,
      the quotes themselves may need to be protected from  shell
      interpretation.

SSEEEE AALLSSOO
      rrmmmmoodd(1), mmooddpprroobbee(1), ddeeppmmoodd(1), llssmmoodd(1), kkssyymmss(1), mmoodd--
      uulleess(2), ggeennkkssyymmss(8), kkeerrnneelldd(8).

HHIISSTTOORRYY
      Module support was first concieved by Anonymous
      Initial Linux version by Bas Laarhoven <[email protected]>
      Version 0.99.14 by Jon Tombs <[email protected]>
      Extended by Bjorn Ekwall <[email protected]>
      Original ELF help from Eric Youngdale <[email protected]>
      Rewritten for 2.1.17 by Richard Henderson <[email protected]>





















Linux                      26 Dec 1996                          2