diff options
Diffstat (limited to 'doc')
-rw-r--r-- | doc/index.html | 5 | ||||
-rw-r--r-- | doc/s6-devd.html | 80 | ||||
-rw-r--r-- | doc/s6-uevent-listener.html | 117 | ||||
-rw-r--r-- | doc/s6-uevent-spawner.html | 87 | ||||
-rw-r--r-- | doc/upgrade.html | 5 |
5 files changed, 5 insertions, 289 deletions
diff --git a/doc/index.html b/doc/index.html index 638b55e..98e43a5 100644 --- a/doc/index.html +++ b/doc/index.html @@ -50,7 +50,7 @@ library. </li> <ul> <li> The current released version of s6-linux-utils is -<a href="s6-linux-utils-2.4.0.3.tar.gz">2.4.0.3</a>. </li> +<a href="s6-linux-utils-2.5.0.0.tar.gz">2.5.0.0</a>. </li> <li> Alternatively, you can checkout a copy of the <a href="//git.skarnet.org/cgi-bin/cgit.cgi/s6-linux-utils/">s6-linux-utils git repository</a>: @@ -88,9 +88,6 @@ the previous versions of s6-linux-utils and the current one. </li> <ul> <li><a href="s6-chroot.html">The <tt>s6-chroot</tt> program</a></li> -<li><a href="s6-devd.html">The <tt>s6-devd</tt> program</a></li> -<li><a href="s6-uevent-listener.html">The <tt>s6-uevent-listener</tt> program</a> <strong>(deprecated)</strong></li> -<li><a href="s6-uevent-spawner.html">The <tt>s6-uevent-spawner</tt> program</a> <strong>(deprecated)</strong></li> <li><a href="s6-fillurandompool.html">The <tt>s6-fillurandompool</tt> program</a></li> <li><a href="s6-freeramdisk.html">The <tt>s6-freeramdisk</tt> program</a></li> <li><a href="s6-hostname.html">The <tt>s6-hostname</tt> program</a></li> diff --git a/doc/s6-devd.html b/doc/s6-devd.html deleted file mode 100644 index 1d7ae06..0000000 --- a/doc/s6-devd.html +++ /dev/null @@ -1,80 +0,0 @@ -<html> - <head> - <meta name="viewport" content="width=device-width, initial-scale=1.0" /> - <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> - <meta http-equiv="Content-Language" content="en" /> - <title>s6-linux-utils: the s6-devd program</title> - <meta name="Description" content="s6-linux-utils: the s6-devd program" /> - <meta name="Keywords" content="s6 linux administration root utilities devd mdev udev s6-uevent-listener s6-uevent-spawner" /> - <!-- <link rel="stylesheet" type="text/css" href="//skarnet.org/default.css" /> --> - </head> -<body> - -<p> -<a href="index.html">s6-linux-utils</a><br /> -<a href="//skarnet.org/software/">Software</a><br /> -<a href="//skarnet.org/">skarnet.org</a> -</p> - -<h1> The <tt>s6-devd</tt> program </h1> - -<p> -<tt>s6-devd</tt> listens to the netlink interface for udev events, and -launches a helper program for every event, similarly to what the hotplug -interface does. -</p> - -<h2> Interface </h2> - -<pre> - s6-devd [ -q | -v ] [ -b <em>kbufsz</em> ] [ -l <em>linevar</em> ] [ -t l:t:k ] <em>prog...</em> -</pre> - -<ul> - <li> s6-devd rewrites its command line into -<tt><a href="s6-uevent-listener.html">s6-uevent-listener</a> <tt>|</tt> -<a href="s6-uevent-spawner.html">s6-uevent-spawner</a> <em>prog...</em></tt>, -dispatching its options to the appropriate programs; then it execs into -this new command line. It does nothing else: it's just a wrapper. </li> - <li> The first executed program, -<a href="s6-uevent-listener.html">s6-uevent-listener</a>, -will listen to the netlink and pass the events sequentially to -<a href="s6-uevent-spawner.html">s6-uevent-spawner</a>, which will -spawn a <em>prog...</em> helper for every event. </li> -</ul> - -<h2> Options </h2> - -<ul> - <li> <tt>-q</tt> : be more quiet. </li> - <li> <tt>-v</tt> : be more verbose. </li> - <li> <tt>-b</tt> <em>kbufsz</em> : try and reserve a kernel buffer of -<em>kbufsz</em> bytes for the netlink queue. Too large a buffer wastes kernel memory; -too small a buffer risks losing events. The default is 65536. </li> - <li> <tt>-l</tt> <em>linevar</em> : the short description of the -event, given by the kernel as the first string in the netlink message, -will be made available to <em>prog</em> under the environment variable -named <em>linevar</em>. </li> - <li> <tt>-t</tt> <em>l:t:k</em> : If <em>l</em>, <em>t</em> or <em>k</em> is -specified, they specify timeouts; by default, they are infinite. -If <em>prog...</em> is still alive after <em>l</em> milliseconds, s6-devd sends -it a SIGTERM. Then, if <em>prog...</em> is still alive after <em>t</em> more -milliseconds, s6-devd sends it a SIGKILL. Then, if <em>prog...</em> is still -alive after <em>k</em> more milliseconds, s6-devd yells and exits 99. </li> -</ul> - -<h2> Notes </h2> - -<ul> - <li> s6-devd is a daemon; it should be run under a proper supervision system such -as <a href="//skarnet.org/software/s6/">s6</a>. The real long-lived -process is named <a href="s6-uevent-listener.html">s6-uevent-listener</a>; -ir runs with the same pid as s6-devd. </li> - <li> The <em>prog...</em> helper, on the other hand, should be very short-lived, -even if you are not using the <tt>-t</tt> option to s6-devd. Since helpers are -spawned sequentially, slow helpers can make events queue up and fill buffers -along the way. </li> -</ul> - -</body> -</html> diff --git a/doc/s6-uevent-listener.html b/doc/s6-uevent-listener.html deleted file mode 100644 index cd60639..0000000 --- a/doc/s6-uevent-listener.html +++ /dev/null @@ -1,117 +0,0 @@ -<html> - <head> - <meta name="viewport" content="width=device-width, initial-scale=1.0" /> - <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> - <meta http-equiv="Content-Language" content="en" /> - <title>s6-linux-utils: the s6-uevent-listener program</title> - <meta name="Description" content="s6-linux-utils: the s6-uevent-listener program" /> - <meta name="Keywords" content="s6 linux administration root utilities devd mdev mdevd udev s6-uevent-listener uevent" /> - <!-- <link rel="stylesheet" type="text/css" href="//skarnet.org/default.css" /> --> - </head> -<body> - -<p> -<a href="index.html">s6-linux-utils</a><br /> -<a href="//skarnet.org/software/">Software</a><br /> -<a href="//skarnet.org/">skarnet.org</a> -</p> - -<h1> The <tt>s6-uevent-listener</tt> program </h1> - -<p> -<tt>s6-uevent-listener</tt> listens to the netlink interface for uevents -(also called "hotplug" or "udev" events), and writes those uevents to -its standard output, using a simple format. -</p> - -<p> -<strong>This program is deprecated</strong>, and will disappear in a -near future version of s6-linux-utils. It has been replaced with the -<a href="//skarnet.org/software/mdevd/mdevd-netlink.html">mdevd-netlink</a> -program, from the <a href="//skarnet.org/software/mdevd/">mdevd</a> -package. -</p> - -<h2> Interface </h2> - -<pre> - s6-uevent-listener [ -v <em>verbosity</em> ] [ -b kbufsz ] -</pre> - -<ul> - <li> s6-uevent-listener binds to the netlink interface and listens for -hotplug events, as the <em>udev</em> program does. </li> - <li> It writes event information to its stdout. The output contains -null characters, so a terminal will not display them correctly. To -properly use s6-uevent-listener, it should be piped into a handler -program such as -<a href="s6-uevent-spawner.html">s6-uevent-spawner</a>. -or <a href="//skarnet.org/software/mdevd/mdevd.html">mdevd</a>. </li> - <li> s6-uevent-listener is a long-lived program. -When it receives a SIGTERM, it stops listening; it will -exit as soon as it has flushed its event queue to stdout. </li> -</ul> - -<h2> Options </h2> - -<ul> - <li> <tt>-v</tt> <em>verbosity</em> : be more or less verbose. -Default verbosity is 1. 0 will only print fatal error messages, 3 will -print warnings every time the netlink interface sends something -unexpected. </li> - <li> <tt>-b</tt> <em>kbufsz</em> : try and reserve a kernel buffer of -<em>kbufsz</em> bytes for the netlink queue. Too large a buffer wastes kernel memory; -too small a buffer risks losing events. The default is 65536 (which is on -the large side). </li> -</ul> - -<h2> Protocol </h2> - -<ul> - <li> An event is a series of null-terminated strings as they are sent by -the kernel to the netlink; s6-uevent-listener adds a final empty string -(i.e. an additional null character) to mark the end of the series. </li> - <li> The first string is a short description of the event; it normally -contains the string "@/". Other strings after the first are of the form -"VARIABLE=value", and describe the environment which a hotplug helper -for the event (registered in <tt>/proc/sys/kernel/hotplug</tt>) would be -spawned with. </li> - <li> Example (newlines added for clarity): <pre> -add@/class/input/input9/mouse2\0 -ACTION=add\0 -DEVPATH=/class/input/input9/mouse2\0 -SUBSYSTEM=input\0 -SEQNUM=106\0 -PHYSDEVPATH=/devices/pci0000:00/0000:00:1d.1/usb2/22/22:1.0 -PHYSDEVBUS=usb\0 -PHYSDEVDRIVER=usbhid\0 -MAJOR=13\0 -MINOR=34\0 -\0 </pre> </li> -</ul> - -<h2> Notes </h2> - -<ul> - <li> s6-uevent-listener is a daemon; it should be run under a proper supervision system such -as <a href="//skarnet.org/software/s6/">s6</a>. </li> -<li> If you are running s6-uevent-listener, <em>prog...</em> should be the -only program handling uevents, which means that -<tt>/proc/sys/kernel/hotplug</tt> should be empty. </li> - <li> Examples of valid uses of s6-uevent-listener: - <ul> - <li> <tt>s6-uevent-listener | s6-uevent-spawner mdev</tt> </li> - <li> <tt>s6-uevent-listener | mdevd</tt> </li> - <li> Those examples can be made safer by using a supervision system: -under <a href="//skarnet.org/software/s6/">s6</a> or -<a href="//skarnet.org/software/s6-rc/">s6-rc</a>, write a service -pipeline where <tt>s6-uevent-listener</tt> is a producer and -<tt>s6-uevent-spawner mdev</tt> or <tt>mdevd</tt> is a consumer. This -setup has the advantage, among others, that you can restart the netlink -listener and the event handler separately. </li> - </ul> - </li> -</ul> - -</body> -</html> diff --git a/doc/s6-uevent-spawner.html b/doc/s6-uevent-spawner.html deleted file mode 100644 index 6f2ab87..0000000 --- a/doc/s6-uevent-spawner.html +++ /dev/null @@ -1,87 +0,0 @@ -<html> - <head> - <meta name="viewport" content="width=device-width, initial-scale=1.0" /> - <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> - <meta http-equiv="Content-Language" content="en" /> - <title>s6-linux-utils: the s6-uevent-spawner program</title> - <meta name="Description" content="s6-linux-utils: the s6-uevent-spawner program" /> - <meta name="Keywords" content="s6 linux administration root utilities devd mdev mdevd udev hotplug" /> - <!-- <link rel="stylesheet" type="text/css" href="//skarnet.org/default.css" /> --> - </head> -<body> - -<p> -<a href="index.html">s6-linux-utils</a><br /> -<a href="//skarnet.org/software/">Software</a><br /> -<a href="//skarnet.org/">skarnet.org</a> -</p> - -<h1> The <tt>s6-uevent-spawner</tt> program </h1> - -<p> -<tt>s6-uevent-spawner</tt> listens to its standard input for -netlink-style events, and launches a helper program for every event, -similarly to what the hotplug interface does. -</p> - -<p> - It is meant to be used together with -<a href="s6-uevent-listener.html">s6-uevent-listener</a>. -</p> - -<p> -<strong>This program is deprecated</strong>, and will disappear in a -future version of s6-linux-utils. The -<a href="//skarnet.org/software/mdevd/">mdevd</a> package makes it -obsolete. -</p> - -<h2> Interface </h2> - -<pre> - s6-uevent-spawner [ -v <em>verbosity</em> ] [ -l <em>linevar</em> ] [ -t <em>l</em>:<em>t</em>:<em>k</em> ] <em>prog...</em> -</pre> - -<ul> - <li> s6-uevent-spawner listens to its stdin for a series of strings -representing kernel uevents, as formatted by -<a href="s6-uevent-listener.html">s6-uevent-listener</a>. </li> - <li> For every event it reads, it spawns <em>prog...</em> with -the event variables added to the environment, just as if <em>prog...</em> -had been registered in <tt>/proc/sys/kernel/hotplug</tt>. However, -it reads the events sequentially, and waits for a <em>prog</em> instance -to finish before spawning another one. </li> - <li> When s6-uevent-spawner receives EOF: if an instance of -<em>prog</em> is alive, it first waits for it to die. Then it exits -0. </li> -</ul> - -<h2> Options </h2> - -<ul> - <li> <tt>-v</tt> <em>verbosity</em> : be more or less verbose. -Default verbosity is 1. 0 only prints fatal error messages. 3 is too much. </li> - <li> <tt>-l</tt> <em>linevar</em> : make the event description -(i.e. the first string in the netlink message announcing the event) -available in <em>prog</em> under the environment variable <em>linevar</em>. -By default, this first string is ignored - it is not needed, all the -event information is already in the other variables. </li> - <li> <tt>-t</tt> <em>l:t:k</em> : If <em>l</em>, <em>t</em> or <em>k</em> is -specified, they specify timeouts; by default, they are infinite. -If <em>prog...</em> is still alive after <em>l</em> milliseconds, s6-devd sends -it a SIGTERM. Then, if <em>prog...</em> is still alive after <em>t</em> more -milliseconds, s6-devd sends it a SIGKILL. Then, if <em>prog...</em> is still -alive after <em>k</em> more milliseconds, s6-uevent-spawner yells and exits 99. </li> -</ul> - -<h2> Notes </h2> - -<ul> - <li> The <em>prog...</em> helper should be very short-lived, -even if you are not using the <tt>-t</tt> option. Since helpers are -spawned sequentially, slow helpers can make events queue up and fill up -buffers. </li> -</ul> - -</body> -</html> diff --git a/doc/upgrade.html b/doc/upgrade.html index 76eac8e..426157c 100644 --- a/doc/upgrade.html +++ b/doc/upgrade.html @@ -18,11 +18,14 @@ <h1> What has changed in s6-linux-utils </h1> -<h2> in 2.4.0.3 </h2> +<h2> in 2.5.0.0 </h2> <ul> <li> skalibs dependency bumped to 2.7.0.0. </li> <li> Optional <a href="//skarnet.org/software/nsss/">nsss</a> support added. </li> + <li> <tt>s6-devd</tt>, <tt>s6-uevent-listener</tt> and <tt>s6-uevent-spawner</tt> +have been removed: <a href="//skarnet.org/software/mdevd/">mdevd</a> obsoletes +them. </li> </ul> <h2> in 2.4.0.2 </h2> |