mirror of
https://github.com/sheumann/hush.git
synced 2024-12-21 23:29:34 +00:00
mdev: enlarge inline documentation
This commit is contained in:
parent
dcd78c4d0f
commit
11c17f75a7
@ -15,6 +15,8 @@
|
|||||||
* contains "4:0\n". Directory name is taken as device name, path component
|
* contains "4:0\n". Directory name is taken as device name, path component
|
||||||
* directly after /sys/class/ as subsystem. In this example, "tty0" and "tty".
|
* directly after /sys/class/ as subsystem. In this example, "tty0" and "tty".
|
||||||
* Then mdev creates the /dev/device_name node.
|
* Then mdev creates the /dev/device_name node.
|
||||||
|
* If /sys/class/.../dev file does not exist, mdev still may act
|
||||||
|
* on this device: see "@|$|*command args..." parameter in config file.
|
||||||
*
|
*
|
||||||
* mdev w/o parameters is called as hotplug helper. It takes device
|
* mdev w/o parameters is called as hotplug helper. It takes device
|
||||||
* and subsystem names from $DEVPATH and $SUBSYSTEM, extracts
|
* and subsystem names from $DEVPATH and $SUBSYSTEM, extracts
|
||||||
@ -29,20 +31,34 @@
|
|||||||
*
|
*
|
||||||
* [-][subsystem/]device user:grp mode [>|=path] [@|$|*command args...]
|
* [-][subsystem/]device user:grp mode [>|=path] [@|$|*command args...]
|
||||||
* [-]@maj,min[-min2] user:grp mode [>|=path] [@|$|*command args...]
|
* [-]@maj,min[-min2] user:grp mode [>|=path] [@|$|*command args...]
|
||||||
*
|
* [-]$envvar=val user:grp mode [>|=path] [@|$|*command args...]
|
||||||
* The device name or "subsystem/device" combo is matched against 1st field
|
|
||||||
* (which is a regex), or maj,min is matched against 1st field.
|
|
||||||
*
|
*
|
||||||
* Leading minus in 1st field means "don't stop on this line", otherwise
|
* Leading minus in 1st field means "don't stop on this line", otherwise
|
||||||
* search is stopped after the matching line is encountered.
|
* search is stopped after the matching line is encountered.
|
||||||
*
|
*
|
||||||
* When line matches, the device node is created, chmod'ed and chown'ed.
|
* The device name or "subsystem/device" combo is matched against 1st field
|
||||||
* Then it moved to path, and if >path, a symlink to moved node is created
|
* (which is a regex), or maj,min is matched against 1st field,
|
||||||
|
* or specified environment variable (as regex) is matched against 1st field.
|
||||||
|
*
|
||||||
|
* $envvar=val format is useful for loading modules for hot-plugged devices
|
||||||
|
* which do not have driver loaded yet. In this case /sys/class/.../dev
|
||||||
|
* does not exist, but $MODALIAS is set to needed module's name
|
||||||
|
* (actually, an alias to it) by kernel. This rule instructs mdev
|
||||||
|
* to load the module and exit:
|
||||||
|
* $MODALIAS=.* 0:0 660 @modprobe "$MODALIAS"
|
||||||
|
* The kernel will generate another hotplug event when /sys/class/.../dev
|
||||||
|
* file appears.
|
||||||
|
*
|
||||||
|
* When line matches, the device node is created, chmod'ed and chown'ed,
|
||||||
|
* moved to path, and if >path, a symlink to moved node is created,
|
||||||
|
* all this if /sys/class/.../dev exists.
|
||||||
* Examples:
|
* Examples:
|
||||||
* =loop/ - moves to /dev/loop
|
* =loop/ - moves to /dev/loop
|
||||||
* >disk/sda%1 - moves to /dev/disk/sdaN, makes /dev/sdaN a symlink
|
* >disk/sda%1 - moves to /dev/disk/sdaN, makes /dev/sdaN a symlink
|
||||||
* Then "command args" is executed (via sh -c 'command args').
|
*
|
||||||
|
* Then "command args..." is executed (via sh -c 'command args...').
|
||||||
* @:execute on creation, $:on deletion, *:on both.
|
* @:execute on creation, $:on deletion, *:on both.
|
||||||
|
* This happens regardless of /sys/class/.../dev existence.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
struct globals {
|
struct globals {
|
||||||
|
Loading…
Reference in New Issue
Block a user