summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
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>
2014-06-06udevd: inotify - modernizationsKay Sievers
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-06-06udev: exclude device-mapper from block device ownership event lockingKay Sievers
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-06-06udev: always close lock file descriptorKay Sievers
https://bugs.freedesktop.org/show_bug.cgi?id=79576 Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-06-01udev-builtin-keyboard: do tell on which device EVIOCSKEYCODE failed.Cristian Rodríguez
I am getting "Error calling EVIOCSKEYCODE (scan code 0xc022d, key code 418): Invalid argument", the error message does not tell on which specific device the problem is, add that info. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-05-23gudev: add missing (nullable) annotations on return valuesEvan Nemerson
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-05-23udevadm-settle: fixed return code for empty queueHarald Hoyer
If the udev queue is empty and "/run/udev/queue" does not exist, "udevadm settle" would return with EXIT_FAILURE, because the inotify on "/run/udev/queue" would fail with ENOENT. This patch lets "udevadm settle" exit with EXIT_SUCCESS in this case. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-05-17udev: avoid use of uninitialized errThomas Hindoe Paaboel Andersen
After 1ea972174baba40dbc80c51cbfc4edc49764b59b err is no longer set unless we hit a special case. Initialize it to 0 and remove a check that will never fail. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-05-15src/scsi_id/scsi_id.c: remove redeclaration of VERSIONAnthony G. Basile
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-05-15Remove unnecessary casts in printfsZbigniew Jedrzejewski-Szmek
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-05-15udev: do not skip the execution of RUN when renaming a network device failsKay Sievers
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-05-13src/libudev/missing.h: clean up and fix build on uclibc and muslAnthony G. Basile
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-05-01src/scsi_id/scsi_id.c: Add _GNU_SOURCE for struct file_handleAnthony G. Basile
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-05-01src/libudev/path-util.c: don't use IN_SET() macroAnthony G. Basile
We do not import this macro which is unnecessarily complex for this one case. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-04-26udev: warn when name_to_handle_at is not implementedZbigniew Jędrzejewski-Szmek
We have a bunch of reports from people who have a custom kernel and are confused why udev is not running. Issue a warning on error. Barring an error in the code, the only error that is possible is ENOSYS. https://bugzilla.redhat.com/show_bug.cgi?id=1072966
2014-04-26util: make sure all our name_to_handle_at() code makes use of file_handle_unionLennart Poettering
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-04-26implement a union to pad out file_handleDave Reisner
Cases where name_to_handle_at is used allocated the full struct to be MAX_HANDLE_SZ, and assigned this size to handle_bytes. This is wrong since handle_bytes should describe the length of the flexible array member and not the whole struct. Define a union type which includes sufficient padding to allow assignment of MAX_HANDLE_SZ to be correct. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-04-24udev: increase the size of RESULT bufferRobert Milasan
Under some conditions, in udev_rules_apply_to_event the fact that result is 1024 bytes, creates problems if the output of the running command/app is bigger then 1024 bytes. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-04-24udev: serialize/synchronize block device event handling with file locksKay Sievers
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-04-24src/libudev: whitespace cleanupAnthony G. Basile
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-04-24src/udev: code cleanupAnthony G. Basile
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-04-24udev: remove seqnum API and all assumptions about seqnumsKay Sievers
The way the kernel namespaces have been implemented breaks assumptions udev made regarding uevent sequence numbers. Creating devices in a namespace "steals" uevents and its sequence numbers from the host. It confuses the "udevadmin settle" logic, which might block until util a timeout is reached, even when no uevent is pending. Remove any assumptions about sequence numbers and deprecate libudev's API exposing these numbers; none of that can reliably be used anymore when namespaces are involved. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-04-07udev: net_id - use constants rather than magic numbersTom Gundersen
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-04-05Revisit issue #87: fails to build on linux headers 3.13Anthony G. Basile
We switch to defining _GNU_SOURCE as we do for cdrom_id.c for a more consistant approach to this issue. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-04-04libudev: Fix redefinition of usec_t and nsec_t.Eric Le Bihan
The type definitions usec_t and nsec_t where defined twice: in path-util.h and util.h. time-util.h and time-util.c now gather the time-related functions and definitions (as in upstream systemd). Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr> Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-04-03configure.ac: bring version numbers in line with upstreamAnthony G. Basile
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-04-03udev: do not export "static node" tags for non-existing devicesKay Sievers
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-03-28udev: persistent naming - we cannot use virtio numbers as they are not stableTom Gundersen
This reverts commit 8741f2defaf26aafe5ee0fd29954cfdf84ee519c: 'Add virtio-blk support to path_id' and commit e3d563346c4237af23335cc6904e0662efdf62ad: 'udev: net_id - handle virtio buses'. Distros may want to take note of this, as it changes behavior. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-03-28udev: update net_id commentsKay Sievers
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-03-22Revisit issue #87: fails to build on linux headers 3.13Anthony G. Basile
Dropping <fcntl.h> in favor of <linux/fcntl.h> is incorrect. Yet uClibc needs O_CLOEXEC from <linux/fcntl.h>. So we re-introduce <fcntl.h> and include <linux/fcntl.h> only on uClibc systems to avoid redefinitions. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-03-22Merge pull request #91 from lhb-jr/fix_discardconst_warnblueness
src/udev/udev-builtin-kmod.c: fix discardconst warn Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-03-21completed fix to 'discard const' warninglhb-jr
modified: src/udev/udev-builtin-kmod.c
2014-03-21workaround 'discards const' warning during compilelhb-jr
modified: src/udev/udev-builtin-kmod.c Temporary copies of the arguments to the 'execv' call are made so that gcc doesn't give, possibly confusing warning about 'discarding const' during compilation.
2014-03-21fixed gcc warnings that call returns not checkedlhb-jr
modified: src/collect/collect.c modified: src/udev/udev-node.c modified: src/udev/udevadm-settle.c modified: src/udev/udevd.c
2014-03-17input_id: Recognize buttonless joystick typesMartin Pitt
Input devices like rudders or pedals are joystick-like; they don't have buttons, but axes like RX, THROTTLE, or RUDDER. These don't interfere with other device types with absolute axes (touch screens, touchpads, and accelerometers), so it's fairly safe to mark them as ID_INPUT_JOYSTICK and thus hand out dynamic ACLs to the user. https://bugs.freedesktop.org/show_bug.cgi?id=70734
2014-03-17udev: properly detect reference to unexisting part of PROGRAM's resultLukas Nykryn
2014-03-17Use strlen even for constant stringsJosh Triplett
GCC optimizes strlen("string constant") to a constant, even with -O0. Thus, replace patterns like sizeof("string constant")-1 with strlen("string constant") where possible, for clarity. In particular, for expressions intended to add up the lengths of components going into a string, this often makes it clearer that the expression counts the trailing '\0' exactly once, by putting the +1 for the '\0' at the end of the expression, rather than hidden in a sizeof in the middle of the expression.
2014-03-17udev: spelling fixesMiklos Vajna
2014-03-15Fix issue #87: fails to build on linux headers 3.13Anthony G. Basile
Commit 80b10107cb added #include <linux/fcntl.h> in src/accelerometer and friends for builds on uclibc. This only works with glibc and musl systems with linux headers 3.9 but fails with linux headers 3.13. We keep <linux/fcntl.h> but drop <fcntl.h>. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-03-09udev-builtin-blkid: modernizations and minor fixesLennart Poettering
2014-03-09builtins: add <linux/fcntl.h> for uclibcAnthony G. Basile
2014-02-28cdrom_id: use the old MMC fallbackLukas Nykryn
https://bugzilla.redhat.com/show_bug.cgi?id=1038015 The problem seems to be that the your virtual DVD is emulating a really old DVD device, and doing it kind of strangely. > dracut:# /lib/udev/cdrom_id --debug /dev/sr0 > probing: '/dev/sr0' > INQUIRY: [IMM ][Virtual CD/DVD ][0316] > GET CONFIGURATION failed with SK=5h/ASC=24h/ACQ=00h So your virtual drive rejects the GET CONFIGURATION command as illegal. Other pre-MMC2 drives that don't accept this command usually return the error SK=5h,ASC=20h (invalid/unsupported command code), in which case cdrom_id tries an older method, and then ID_CDROM_MEDIA_TRACK_COUNT_DATA gets set and all the /dev/disk/by-label (etc) links get set up. The virtual drive returns the error SK=5h,ASC=24h (invalid field in Command Descriptor Block), which cdrom_id doesn't handle, so it gives up and the links never get made. The ideal solution would be to make the IMM to emulate a device that's less than 15 years old, but I'm not going to hold my breath waiting for that. So probably cdrom_id should also use the old MMC fallback when the error is SK=5h,ASC=24h, and then all of this would work as expected. Suggested-by:Luca Miccini <lmiccini@redhat.com> Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-02-28Remove dead lines in various placesZbigniew Jędrzejewski-Szmek
As pointed-out by clang -Wunreachable-code. No behaviour changes. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-02-22gudev: add device::get_sysfs_attr_keys and device::has_sysfs_attrAndreas Fuchs
For gudev -> gudevdevice: - Add support for get_sysfs_attr_keys() - Add support for has_sysfs_attr() Signed-off-by: Anthony G. Basile <blueness@gentoo.org>