summaryrefslogtreecommitdiff
path: root/udev
AgeCommit message (Collapse)Author
2009-10-28remove "last_rule" optionKay Sievers
Its use breaks too many things which expect to be run from independent later rules, and is an idication that something needs to be fixed properly instead.
2009-10-28break loops if util_create_path() returns errorKay Sievers
Dangling symlinks in path components return -ENOENT. Do not retry to create the file in a loop in such case.
2009-10-08udevd: serialize events for with the same major/minorKay Sievers
On Wed, Oct 7, 2009 at 21:46, Alan Jenkins <sourcejedi.lkml@googlemail.com> wrote: > Udev would have avoided the race prior to > > 82c785e "udevd: remove check for dev_t, DEVPATH_OLD takes care of that" > > (the "check" removed here used to serialize events based on the device > major:minor number). On Wed, Oct 7, 2009 at 22:31, Michael Guntsche <mike@it-loops.com> wrote: > add /module/8250_pnp (module) > remove /devices/platform/serial8250/tty/ttyS0 (tty) > add /devices/pnp0/00:05/tty/ttyS0 (tty)
2009-09-24fix wrong parameter size on ioctl FIONREADAndrew Church
On Wed, Sep 23, 2009 at 23:11, Matthias Schwarzott <zzam@gentoo.org> wrote: > It is about ioctl failures on amd64: > http://bugs.gentoo.org/show_bug.cgi?id=286041 > > A bad parameter type to an ioctl() call causes udev-146 to generate "error > getting buffer for inotify" messages in syslog. The offending code is > roughly: > > ssize_t nbytes, pos; > // ... > ioctl(fd, FIONREAD, &nbytes); > > where ssize_t is 64 bits on amd64, but the kernel code for FIONREAD (at least > through gentoo-sources-2.6.31) uses type int: > > p = (void __user *) arg; > switch (cmd) { > case FIONREAD: > // ... > ret = put_user(send_len, (int __user *) p); > > so the upper 32 bits of "nbytes" are left uninitialized, and the subsequent > malloc(nbytes) fails unless those 32 bits happen to be zero (or the system has > a LOT of memory).
2009-09-18rename interfaces to <iface>_rename if rename failsHarald Hoyer
2009-09-16fix SYMLINK{} option parsingKay Sievers
2009-09-14udevadm: control - remove compat codeKay Sievers
2009-09-14udevadmi: control = exit with rc=2 if there is some system errorMarco d'Itri
2009-09-14udevadm: print all messages to stderr with priority higher or equal than LOG_ERRMarco d'Itri
It is needed to prevent errors in udev from going unnoticed (e.g. when udevd is not running).
2009-09-10put util_create_path() and file creastion in a retry loopKay Sievers
On 8/29/09, Florian Zumbiehl <florz@florz.de> wrote: > Could it happen that > util_create_path() and util_delete_path() > do run in parallel for > the same directory? After all, util_create_path() > does handle > the case where creation of the directory happens in parallel > to it running, so it doesn't seem all that unlikely to me ...
2009-09-10reorder create_path() and node/link creation to be called in a direct sequenceKay Sievers
2009-09-09simplify "symlink name stack"Kay Sievers
With well defined and kernel-supplied node names, we no longer need to support a possible stack of conflicting symlinks and node names. Only symlinks with identical names can be claimed by multiple devices. This shrinks the former /dev/.udev/names/ significantly. Also the /dev/{block,char}/MAJ:MIN" links are excluded from the name stack - they are unique and can not conflict.
2009-09-08fix randonm findings from llvm-clang-analyzerKay Sievers
Thanks to Lennart for the log file!
2009-09-07fix whitespaceKay Sievers
2009-09-07util_run_program: restore signal mask before executing event RUN commandsJeremy Kerr
External programs triggered by events (via RUN=) will inherit udev's signal mask, which is set to block all but SIGALRM. For most utilities, this is OK, but if we start daemons from RUN=, we run into trouble (especially as SIGCHLD is blocked). This change saves the original sigmask when udev starts, and restores it just before we exec() the external command. Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
2009-09-07udevadm: remove symlink support for old commandsKay Sievers
2009-09-07Revert "udev-rules.c: remove 'first_token' variable"Kay Sievers
That was a mistake. The variable is needed to be set before we parse the file. Thanks a lot to Alan Jenkins for spotting this. This reverts commit 710fdac1e49276683abe927472fe1b336960edd8.
2009-09-01udev-rules.c: parse_file() - fix possible buffer overflowFlorian Zumbiehl
2009-09-01udev-rules.c: remove 'first_token' variableKay Sievers
2009-09-01ude_rules.c: fix possible NULL pointer dereference in get_key()Florian Zumbiehl
2009-08-30use nanosleep() instead of usleep()Daniel Mierswa
POSIX.1-2001 declares usleep() function obsolete and POSIX.1-2008 removes it. [Kay Sievers] - include time.h - use const for timespec - scsi_id: drop rand() in retry loop - modem-probe: rename msuspend() to msleep()
2009-08-30inotify_add_watch(): do not store watch, if it failedKay Sievers
On Sun, Aug 30, 2009 at 04:36, Marco d'Itri<md@linux.it> wrote: > inotify_add_watch may fail in udev_watch_begin, and then a link with > name -1 is created. > I do not know why, but it happened once on my system: > > lrwxrwxrwx 1 root root 27 Aug 4 11:27 -1 -> /devices/virtual/block/ram8
2009-08-19change database file namesKay Sievers
With very deeply nested devices, We can not use a single file name to carry an entire DEVPATH. Use <subsystem>:<sysname> as the database filename, which should also simplify the handling of devices moving around, as these values will not change but still be unique. For the name stack we use the <maj>:<min> now as the filename. > On Tue, Aug 18, 2009 at 09:59:56AM -0400, Ric Wheeler wrote: > The first is that udev grumbles during boot about "file name too long" > like the following: > > Aug 17 06:49:58 megadeth udevd-event[20447]: unable to create db file > '/dev/.udev/db/\x2fdevices\x2fpci0000:00\x2f0000:00:04.0\x2f0000:17:00.0\x2f0000:18:0a.0\x2f0000:1f:00.0\x2fhost11\x2fport-11:0\x2fexpander-11:0\x2fport-11:0:0\x2fexpander-11:1\x2fport-11:1:0\x2fexpander-11:2\x2fport-11:2:17\x2fexpander-11:3\x2fport-11:3:1\x2fend_device-11:3:1\x2fbsg\x2fend_device-11:3:1': > File name too long
2009-08-19warn about non-readable or empty rules fileKay Sievers
2009-08-19print warning for NAME="%k" - it breaks the kernel supplied DEVNAMEKay Sievers
2009-08-08udevd: block for 15 seconds after error when too old kernel is detectedKay Sievers
The compat code will go away some day and CONFIG_SYSFS_DEPRECATED kernels fail in too many setups now to be worth to support them.
2009-08-08fix spellingAlan Jenkins
Fix spelling in docbook comments, code comments, and a local variable name. Thanks to "ispell -h" for docbook HTML and "scspell" for source code. Signed-off-by: Alan Jenkins <alan-jenkins@tuffmail.co.uk>
2009-08-07Merge libudev, udev, and the unconditional extras in a single Makefile.am.Diego Elio 'Flameeyes' Pettenò
Instead of using multiple recursive Makefile.am files, use a single Makefile.am that sets and builds all the basic suite of libraries and binaries for udev. This reduces the number of files in the source tree, and also reduces drastically the build time when using parallel-make. With this setup, all the compile steps will be executed in parallel, and just the linking stage will be (partially) serialised on the libraries creation.
2009-08-07man: SYMLINK can be matched as well as assignedAlan Jenkins
If by-path / by-id links don't quite do what you want, this is a nice clean way to extend the behaviour. Real example: SYMLINK=="serial/by-id/usb-Novatel_Wireless_Inc*CDMA*-if00-port0", \\ SYMLINK+="cellcard" Some users ask how to do things like this. - create an additional link with a shorter name - create a link which matches more loosely (omit certain path segments e.g. serial numbers) - change permissions on certain USB device nodes Allow them to realize this without reading the friendly *.c files. Signed-off-by: Alan Jenkins <alan-jenkins@tuffmail.co.uk>
2009-08-07man: fix unused, inaccurate metadataAlan Jenkins
Dates aren't shown in the manpages. So they are not really useful, and no-one is going to remember to update them. "<refmiscinfo class="version"></refmiscinfo>" sounds even less useful. I leave the unused "title" and "productname" tags. They could theoretically be useful, and aren't hard to maintain. We just need to fix the "title" for udevadm. Signed-off-by: Alan Jenkins <alan-jenkins@tuffmail.co.uk>
2009-08-06"record_failed" -> "fail_event_on_error"Kay Sievers
2009-08-06re-enable failed event trackingKay Sievers
It did not work for the last couple of releases. If RUN{record_failed}+="..." is given, a non-zero execution will mark the event as failed. Recorded failed events can be re-triggered with: udevadm trigger --type=failed The failed tracking _might_ be useful for things which might not be ready to be executed at early bootup, but a bit later when the needed dependencies are available. In many cases though, it indicates that something is used in a way it should not.
2009-08-01update a few years of copyrightKay Sievers
2009-07-25make: build internal tools against libudev-private.laKay Sievers
2009-07-23format names are not case insensitiveKay Sievers
2009-07-23udevadm: trigger - add --sysname-match=Kay Sievers
$ udevadm trigger -n -v --subsystem-match=usb --sysname-match=2-1.1* /sys/devices/pci0000:00/0000:00:1d.7/usb2/2-1/2-1.1 /sys/devices/pci0000:00/0000:00:1d.7/usb2/2-1/2-1.1/2-1.1.1 /sys/devices/pci0000:00/0000:00:1d.7/usb2/2-1/2-1.1/2-1.1.1/2-1.1.1:1.0 /sys/devices/pci0000:00/0000:00:1d.7/usb2/2-1/2-1.1/2-1.1.2 /sys/devices/pci0000:00/0000:00:1d.7/usb2/2-1/2-1.1/2-1.1.2/2-1.1.2:1.0 /sys/devices/pci0000:00/0000:00:1d.7/usb2/2-1/2-1.1/2-1.1.2/2-1.1.2:1.1 /sys/devices/pci0000:00/0000:00:1d.7/usb2/2-1/2-1.1/2-1.1:1.0
2009-07-17udevd: add timestamp to --debug outputKay Sievers
2009-07-13udevd: use boolKay Sievers
2009-07-13udevd: handle SIGCHLD before the worker event messageKay Sievers
We may need to handle SIGCHLD before the queued worker message. The last reference, from the SIGCHLD or the worker message will clean up the worker context. In case we receive an unexpected SIGCHLD with an error, we let the event fail and clean up the worker context.
2009-07-11udevd: make sure a worker finishes event handling before exitingKay Sievers
Persistent network rules write out new rules files. When rules change, we need to kill all workers to update the in-memory copy of the rules. We need to make sure, that a worker finshes its work for all device messages it has accepted, before it exits after a SIGTERM from the main process.
2009-07-08udevadm: info - add space after R:, A:, W: on database exportKay Sievers
<zzam> kay: udevadmin info -e prints all lines with a space after the :, but the W: line <kay> zzam: yeah, seems so, and the R: and the A: <zzam> yeah
2009-07-08udevd: detach event from worker if we kill a workerKay Sievers
Jul 8 09:36:41 udevd[663]: worker [5491] did not accept message, kill it Jul 8 09:36:41 udevd[663]: worker [5491] unexpectedly returned with 0 Jul 8 09:36:41 udevd[663]: worker [5551] unexpectedly returned with 0 Jul 8 09:36:41 kernel: [ 156.832086] <6>udevd[663]: segfault at 4 ip 00959fbc sp bfbe7b78 error 6 in udevd[94f000+1c000] https://bugs.launchpad.net/ubuntu/+source/udev/+bug/396957
2009-07-07use MIN() MAX() from param.hKay Sievers
2009-07-02udevadm: test - print list of propertiesKay Sievers
2009-06-28man: udev - add private properties like ENV{.FOO}="bar"Kay Sievers
2009-06-28do not exports properties starting with a '.'Kay Sievers
Private variables can be marked like: ENV{.FOO}="bar"
2009-06-22udev/.gitignore: add udev.pcKay Sievers
2009-06-19udev.pc: addKay Sievers
2009-06-17cleanup ./configure installation directory optionsKay Sievers
2009-06-14USE_LOG -> ENABLE_LOGGING, DEBUG -> ENABLE_DEBUG, USE_SELINUX -> WITH_SELINUXKay Sievers