Nikolaus Voss
c3cf1e30a3
mdev: use $DEVNAME in uevent sysfs file for device node name
...
516530c932
uses $DEVNAME variable
for device node name. This is fine, but only works for hotplugging,
"mdev -s" will behave differently when DEVNAME and basename(path)
differ.
This patch extracts the DEVNAME from the uevent sysfs file in
make_device(), thus works for hot- and coldplugging; so using
the environment DEVNAME on hotplug events is no longer necessary.
Signed-off-by: Nikolaus Voss <n.voss@weinmann.de>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2013-05-13 03:55:11 +02:00
Denys Vlasenko
d35cbad0ef
mdev: call index_in_strings on $ACTION only after we checked it for NULL
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2013-04-02 14:37:06 +02:00
Denys Vlasenko
4424dfd69b
mdev: fix build failure
...
The error was "error: 'struct globals' has no member named 'parser'"
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2013-03-17 23:01:17 +01:00
Denys Vlasenko
5bce135e36
mdev: improve $SEQ handling; improve debug logging
...
Sequential run of concurrent mdev's was too simplistic:
they waited for /dev/mdev.seq to match. This could sometimes
cause cumulative loss of time on the order of a second.
Added SIGCHLD signaling from exiting mdev to all other mdev's.
Added debugging required to see that code actually works as intended.
Example of /dev/mdev.log (with "woken up" elevated from dbg lvl 3 to 2):
mdev[1023]: first seq written
^^^^ seq, not pid
mdev[1023]: 35.022395 ACTION:add SUBSYSTEM:module DEVNAME:(null) DEVPATH:/module/lib80211
mdev[1023]: rule matched, line -1
^^^^^^^ means "default rule"
mdev[1023]: 35.022676 exiting
^^^^^^^^^ second,usec timestamp
mdev[1024]: 35.069691 ACTION:add SUBSYSTEM:vc DEVNAME:vcs9 DEVPATH:/devices/virtual/vc/vcs9
mdev[1024]: dev 7,9
mdev[1025]: 35.069889 waiting for '1024'
mdev[1026]: 35.069946 waiting for '1024'
mdev[1027]: 35.070151 waiting for '1024'
mdev[1024]: rule matched, line -1
mdev[1024]: mknod vcs9 (7,9) 20660 0:0
mdev[1024]: 35.070346 exiting
mdev[1025]: woken up
mdev[1026]: woken up
mdev[1025]: 35.071213 ACTION:add SUBSYSTEM:vc DEVNAME:vcsa9 DEVPATH:/devices/virtual/vc/vcsa9
^^^^^^^^^ took only a millisecond to start running after prev mdev exited
mdev[1025]: dev 7,137
mdev[1027]: woken up
mdev[1025]: rule matched, line -1
mdev[1025]: mknod vcsa9 (7,137) 20660 0:0
mdev[1025]: 35.072109 exiting
function old new delta
mdev_main 849 1372 +523
curtime - 59 +59
dirAction 87 134 +47
static.ts - 8 +8
keywords 19 12 -7
make_device 2189 2119 -70
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2013-02-27 10:51:41 +01:00
Denys Vlasenko
40b97fb31e
mdev: add environment variable match
...
function old new delta
make_device 1998 2189 +191
clean_up_cur_rule 61 96 +35
dirAction 75 87 +12
mdev_main 838 849 +11
packed_usage 29272 29273 +1
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 5/0 up/down: 250/0) Total: 250 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2013-02-26 00:40:46 +01:00
Denys Vlasenko
ba76b7a40b
mdev: chdir back to /dev after trying to read firmware
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2013-02-04 23:35:27 +01:00
Denys Vlasenko
6e29d07417
mdev: extend debug logging output
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2013-01-30 16:51:22 +01:00
Denys Vlasenko
4609f477c7
mdev: fix mode of dir1 in =dir1/dir2/file rule
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2013-01-21 01:22:12 +01:00
Christoph Lohmann
25cb5aae2b
mdev: tell kernel that we didn't find the firmware
...
function old new delta
mdev_main 797 801 +4
Signed-off-by: Christoph Lohmann <20h@r-36.net>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2012-05-19 23:39:45 +02:00
Denys Vlasenko
aaf827203d
Merge branch 'master' of git+ssh://vda@busybox.net/var/lib/git/busybox
2012-05-19 22:37:07 +02:00
Denys Vlasenko
b6beada5a1
mdev: remove undocumented subsystem/devname matching hack
...
It was colliding with matching of devnames with slashes.
We need a more generic way to examine env.vars in rules anyway.
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2012-05-18 15:11:16 +02:00
Denys Vlasenko
ea57f51819
mdev: when found, print major,minor into mdev.log
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2012-05-18 11:39:57 +02:00
Denys Vlasenko
8d11854678
tweak help text
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2012-05-18 04:47:18 +02:00
Denys Vlasenko
516530c932
mdev: add support for $DEVNAME and /dev/mdev.log debug aid
...
function old new delta
make_device 1843 2083 +240
mdev_main 712 804 +92
packed_usage 29236 29251 +15
keywords 288 19 -269
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 3/1 up/down: 347/-269) Total: 78 bytes
text data bss dec hex filename
887506 497 7584 895587 daa63 busybox_old
887982 497 7584 896063 dac3f busybox_unstripped
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2012-05-18 04:45:35 +02:00
Denys Vlasenko
c9665631d3
mdev: fix mode of creatred node if config file support is not configured
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2012-04-21 14:35:32 +02:00
Denys Vlasenko
638dbc34b3
mdev: add a comment. no code changes
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2012-02-06 01:00:00 +01:00
Javier Viguera
e8758eaf4f
mdev: fix wrong sizeof
...
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2012-01-30 02:15:13 +01:00
Denys Vlasenko
499597d6ef
mdev: do not treat non-leading '#' chars as start of comment. Closes 4676
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2012-01-11 00:37:17 +01:00
Denys Vlasenko
45f0a1156d
mdev: trim overlong comments. No code changes
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-09-22 04:55:47 +02:00
Denys Vlasenko
3eccd7ecbe
mdev: don't reparse rules on -s
...
function old new delta
make_device 1648 1843 +195
clean_up_cur_rule - 61 +61
make_default_cur_rule - 41 +41
mdev_main 690 712 +22
------------------------------------------------------------------------------
(add/remove: 2/0 grow/shrink: 2/0 up/down: 319/0) Total: 319 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-09-22 03:46:30 +02:00
Denys Vlasenko
16714245f9
add INIT_G()'s. No code changes.
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-09-21 01:59:15 +02:00
Denys Vlasenko
5c6ba6c56f
mdev: expand --help so that it's actually useful.
...
function old new delta
packed_usage 28634 28822 +188
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-09-19 12:18:11 +02:00
Denys Vlasenko
4566e172eb
simplify parsing of /etc/busybox.conf
...
function old new delta
parse_config_file 799 667 -132
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-05-16 00:01:08 +02:00
Pere Orga
5bc8c005a8
move remaining help text from include/usage.src.h
...
Signed-off-by: Pere Orga <gotrunks@gmail.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-04-11 03:29:49 +02:00
Denys Vlasenko
0ef64bdb40
*: make GNU licensing statement forms more regular
...
This change retains "or later" state! No licensing _changes_ here,
only form is adjusted (article, space between "GPL" and "v2" and so on).
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-08-16 20:14:46 +02:00
Denys Vlasenko
f2860bf6d3
mdev: fix non-working device deletion, add a test for that
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-08-16 14:26:15 +02:00
Denys Vlasenko
dd8adde386
*: introduce and use bb_unsetenv_and_free
...
function old new delta
bb_unsetenv_and_free - 17 +17
tcpudpsvd_main 1819 1810 -9
safe_setenv 58 47 -11
udhcp_run_script 630 616 -14
make_device 1683 1663 -20
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 0/4 up/down: 17/-54) Total: -37 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-06-24 05:00:50 +02:00
Denys Vlasenko
b38af7bd31
mdev: add "!" syntax support
...
Based on the patch by Steve Bennett <steveb@workware.net.au>
function old new delta
make_device 1640 1673 +33
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-04-02 06:47:14 +02:00
Denys Vlasenko
651a2697f7
*: merge some common strings
...
text data bss dec hexfilename
838650 8009 0 846659 ceb43busybox_old
838519 8009 0 846528 ceac0busybox_unstripped
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-03-23 16:25:17 +01:00
Denys Vlasenko
8d4a8d195d
mdev: fix a trivial SEGV
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-03-16 18:37:19 +01:00
Denys Vlasenko
64bb95a361
mdev: fix subsystem passing (new kernels broke it again) - bugs 639, 721.
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-02-24 10:39:47 +01:00
Denys Vlasenko
98a4c7cf3d
*: suppress ~60% of "aliased warnings" on gcc-4.4.1
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-02-04 15:00:15 +01:00
Denys Vlasenko
1612c757d0
mdev: print line# in error messages
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-11-07 03:33:05 +01:00
Denys Vlasenko
e62a2463ec
mdev: do not die on mknod errors
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-11-01 21:51:31 +01:00
Bernhard Reutner-Fischer
b04f058e76
mdev: adjust error message
...
function old new delta
.rodata 126715 126706 -9
(reusing common error string)
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-10-27 17:13:45 +01:00
Bernhard Reutner-Fischer
933993a461
mdev: handle string modes
...
parse ugoa=rwxXst via bb_parse_mode (+5b)
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-10-27 17:13:12 +01:00
Bernhard Reutner-Fischer
6531f0923b
mdev: tiny shrinkage by index_in_strings
...
text data bss dec hex filename
2633 0 0 2633 a49 util-linux/mdev.o.old
2624 0 0 2624 a40 util-linux/mdev.o
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-10-27 17:12:26 +01:00
Denys Vlasenko
5478aaf5b8
mdev: be more permissive on errors (dont die): mdev -s users want that
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-07-02 13:17:10 +02:00
Denys Vlasenko
90db359972
mdev: set $MDEV correctly for renamed nodes
...
function old new delta
make_device 1467 1502 +35
build_alias 78 - -78
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-07-02 13:07:11 +02:00
Denys Vlasenko
2f86ca1350
mdev: fix the case when move rule deletes node with name == device_name
...
Signed-off-by: Jean Wolter <jw5@os.inf.tu-dresden.de>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-06-22 01:31:12 +02:00
Denys Vlasenko
76f5e38c82
mdev: revert last wrong commit
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-05-04 21:59:05 +02:00
Denys Vlasenko
aa0a12d549
mdev: do not exit if user:group parse failed. closes bug 309.
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-05-02 16:33:10 +02:00
Denys Vlasenko
05ae400830
mdev: fix a case where we mangle device_path string and then use it.
2009-05-01 03:09:54 +02:00
Denis Vlasenko
11c17f75a7
mdev: enlarge inline documentation
2009-04-19 23:38:08 +00:00
Denis Vlasenko
3798db58cf
mdev: support $ENVVAR=regex
2009-04-19 21:37:07 +00:00
Denis Vlasenko
c7cc5a9432
mdev: Rob's #if forest removal
...
*: remove superfluous conts in "f(type *const param)"
2009-04-19 01:27:20 +00:00
Denis Vlasenko
5ff9629b8f
mdev: add large comment, fix a buglet with subsystem and /sys/block
2009-04-17 00:01:04 +00:00
Denis Vlasenko
3161b61199
mdev: set mode, needed when device node already exists.
2009-04-16 22:42:01 +00:00
Denis Vlasenko
6dda5dec23
mdev: change subsystem syntax from /subsystem to subsystem/devname
2009-04-16 21:42:12 +00:00
Denis Vlasenko
32a3d084d3
mdev: safer handling of $SUBSYSTEM in mdev -s
2009-04-14 21:23:33 +00:00