summaryrefslogtreecommitdiff
path: root/src/udev
AgeCommit message (Collapse)Author
2014-09-17udev: event - modernize spawn_read()Tom Gundersen
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-09-17udev: rules - close empty fileTom Gundersen
If the file is found to be empty, we exit early without closing the file first. Found by coverity. Fixes CID #1237759. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-09-17udev: rules - add missing whitespace to log messageTom Gundersen
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-09-17udevd: use safe_ato*() in place of strto*()Tom Gundersen
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-09-17libudev: util - drop util_delete_path()Tom Gundersen
Use rmdir_parents() from src/shared instead. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-09-17libudev: drop util_lookup_{user,group}Tom Gundersen
Use shared versions instead. Difference is with overwriting of repeated user/group name, and lack of logging. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-09-17udev: apply permissions to static nodes before signallying READYTom Gundersen
Processes expecting static nodes to have the right permissions may order themselves after systemd-udevd.service, make sure that actually guarantees what is expected. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-09-17udev: only print after final log level has been determinedTom Gundersen
This delays label_init(), and drops the (duplicate) printing of version information. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-09-17udevd: initialize epoll_event structs on allocationTom Gundersen
Also move the rest of event initialization next to the event loop (no functional change). Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-09-17udev: don't close std{in,out,err}Tom Gundersen
Rather than printing debug output to stderr and redirecting this to /dev/null when not wanted, use the correct log_*() function in the first place. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-09-17udev: drop duplicate loggingTom Gundersen
Once upon a time logging during early boot was unreliable, so extra logging messages were sent by udev to stderr. That is no longer a concern, so drop all fprintf() calls from udved. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-09-17udev: split out parse_argv()Tom Gundersen
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-09-17udev: split out help and modernise a bitTom Gundersen
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-09-13udev: timeout - warn after a third of the timeout before killingTom Gundersen
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-09-13udev: allow removing tags via TAG-="foobar"David Herrmann
This extends the udev parser to support OP_REMOVE (-=) and adds support for TAG-= to remove previously set tags. We don't fail if the tag didn't exist. This is pretty handy if we ship default rules for seat-assignments and users want to exclude specific devices from that. They can easily add rules that drop any automatically added "seat" tags again. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-09-13skip udev: event - keep one rtnl per worker, rather than per eventAnthony G. Basile
This commit follows upstream's 4c83d994566718043e61e568cc214bdc4587f869 We adopt their removal of excessive logging, but we do not switch to one rtnl per worker, rather than per event. This maintains code separation between libsystemd and udev code. The disadvantage is that we do not get the cost savings of having one rtnl per worker rather than per event. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-09-13udev: remove userspace firmware loading supportKay Sievers
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-09-10udev: timeout - increase timeoutTom Gundersen
Some kernel modules still take more than one minute to insmod, we no longer rely on the timeout killing insmod within a given period of time, so just bump this to a much higher value. Its only purpose is to make sure that nothing stays aronud forever. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-09-10udev: fix copy-paste error in log messageTom Gundersen
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-09-10udev: import the full db on MOVE events for devices without dev_tTom Gundersen
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-09-10udev - drop print_kmsgTom Gundersen
The only remaining user was 'starting version XXX', which is now logged using log_info(). Basile: There were also print_kmsg in udev-event.c which I switched to log_info(). Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-09-01udev: bump event timeout to 60 secondsKay Sievers
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-08-27udev: add missing new-line in udevadm errorDavid Herrmann
fprintf() does not add new-lines automatically like log_*() does. Add the missing \n specified so "udevadm" invoked without arguments adds a newline to: udevadm: missing or unknown command Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-08-27udev: hwdb - do not look at "usb_device" parentsKay Sievers
Based on a patch from Simon McVittie <simon.mcvittie@collabora.co.uk>. Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=758050 Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-08-12udev: modernize net_id builtin a bitLennart Poettering
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-08-12udev: never bypass our own logging framework and call vsyslog() directly ↵Lennart Poettering
from udev tools Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-08-05src/shared: refactor shared codeAnthony G. Basile
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-08-05src/{libudev,udev}: minor renamings from upstreamAnthony G. Basile
2014-08-05src/libudev/missing.h: clean up unused BTRFS_* declsAnthony G. Basile
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-08-05udev-builtin-keyboard: Allow numeric key codesMartin Pitt
Like with the old udev rules, allow hwdb entries to specify numeric key codes. Based on a patch from Mircea Miron. https://launchpad.net/bugs/1247584 Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-08-05udev: path_id - suppress ID_PATH for devices with an unknown parent device typeKay Sievers
https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1321816 Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-08-05Unify parse_argv styleZbigniew Jędrzejewski-Szmek
getopt is usually good at printing out a nice error message when commandline options are invalid. It distinguishes between an unknown option and a known option with a missing arg. It is better to let it do its job and not use opterr=0 unless we actually want to suppress messages. So remove opterr=0 in the few places where it wasn't really useful. When an error in options is encountered, we should not print a lengthy help() and overwhelm the user, when we know precisely what is wrong with the commandline. In addition, since help() prints to stdout, it should not be used except when requested with -h or --help. Also, simplify things here and there. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-08-05Include missing.h in udev-builtin-btrfs.c, and move BTRFS_IOC_DEVICES_READY ↵Anthony G. Basile
to missing.h This is a combination of upstream commits dced15575f7bf172e3c9d798c43477539525558c 7bed7f0e3b1f9596aedb64657e432e5b267adebb by Simon McVittie <simon.mcvittie@collabora.co.uk> 7bed7f0e3b1f9596aedb64657e432e5b267adebb Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-08-04man: add udev.conf(5)Zbigniew Jędrzejewski-Szmek
We generally have separate man pages for all configuration files. In this case udev.conf was already described in systemd-udevd.service(8), but it was hard to find. Docbook makes it hard to add a .so link from a different section, so describe udev.conf in its own page. Signedaoff-by: Anthony G. Basile <blueness@gentoo.org>
2014-08-04Reject invalid quoted stringsZbigniew Jędrzejewski-Szmek
String which ended in an unfinished quote were accepted, potentially with bad memory accesses. Reject anything which ends in a unfished quote, or contains non-whitespace characters right after the closing quote. _FOREACH_WORD now returns the invalid character in *state. But this return value is not checked anywhere yet. Also, make 'word' and 'state' variables const pointers, and rename 'w' to 'word' in various places. Things are easier to read if the same name is used consistently. mbiebl_> am I correct that something like this doesn't work mbiebl_> ExecStart=/usr/bin/encfs --extpass='/bin/systemd-ask-passwd "Unlock EncFS"' mbiebl_> systemd seems to strip of the quotes mbiebl_> systemctl status shows mbiebl_> ExecStart=/usr/bin/encfs --extpass='/bin/systemd-ask-password Unlock EncFS $RootDir $MountPoint mbiebl_> which is pretty weird Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-07-30udev: fixup commit dd5eddd28a74a49607a8fffcaf960040dba98479Hannes Reinecke
Commit dd5eddd28a74a49607a8fffcaf960040dba98479 accidentally removed one line too many. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-07-30udev: place opening { at the same line as the function declarationKay Sievers
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-07-30udev: unify event timeout handlingKay Sievers
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-07-30udevd: add --event-timeout commandline optionHannes Reinecke
Some events take longer than the default 30 seconds. Killing those events will leave the machine halfway configured. Add a commandline option '--event-timeout' to handle these cases. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-07-25udev: exclude MD from block device ownership event lockingKay Sievers
MD instantiates devices at open(). This is incomptible with the locking logic, as the "change" event emitted when stopping a device will bring it back. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-07-19Be more careful when checking for empty filesZbigniew Jędrzejewski-Szmek
If we want to avoid reading a totally empty file, it seems better to check after we have opened the file, not before. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-07-01libudev: queue - watch entire directory to allow the re-use of the watch ↵Kay Sievers
descriptor Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-07-01libudev: queue provide file descriptor to watch busy event queueKay Sievers
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-06-15udev: check the return value from udev_enumerate_scan_devicesThomas Hindoe Paaboel Andersen
The return value from udev_enumerate_scan_devices was stored but never used. I assume this was meant to be checked. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-06-15udev: really exclude device-mapper from block device ownership event lockingChristian Hesse
Arguments were wrong order, no? This fixes commits: e918a1b5a94f270186dca59156354acd2a596494 3d06f4183470d42361303086ed9dedd29c0ffc1b Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-06-07udev: guard REREADPT by exclusive lock instead of O_EXCLKay Sievers
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-06-07udev: make sure we always get "change" for the diskKay Sievers
The kernel will return 0 for REREADPT when no partition table is found, we have to send out "change" ourselves. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-06-07udev: guard REREADP logic with open(O_ECXL)Kay Sievers
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-06-07[PATCH] udev: try first re-reading the partition tableAnthony G. Basile
mounted partitions: # dd if=/dev/zero of=/dev/sda bs=1 count=1 UDEV [4157.369250] change .../0:0:0:0/block/sda (block) UDEV [4157.375059] change .../0:0:0:0/block/sda/sda1 (block) UDEV [4157.397088] change .../0:0:0:0/block/sda/sda2 (block) UDEV [4157.404842] change .../0:0:0:0/block/sda/sda4 (block) unmounted partitions: # dd if=/dev/zero of=/dev/sdb bs=1 count=1 UDEV [4163.450217] remove .../target6:0:0/6:0:0:0/block/sdb/sdb1 (block) UDEV [4163.593167] change .../target6:0:0/6:0:0:0/block/sdb (block) UDEV [4163.713982] add .../target6:0:0/6:0:0:0/block/sdb/sdb1 (block) Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-06-07udev: synthesize "change' events for partitions when tools change the diskKay Sievers
This should make sure that fdisk-like programs will automatically cause an update of all partitions, just like mkfs-like programs cause an update of the partition. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>