summaryrefslogtreecommitdiff
path: root/udev/udev-node.c
AgeCommit message (Collapse)Author
2010-12-12udevd: switch to common id_filename functionsKay Sievers
2010-12-11udevd: simplify udev database and fix DEVNAME handlingKay Sievers
2010-12-10udevd: always create /dev/{char,block}/$major:$minorKay Sievers
2010-12-10udevd: use dev_t or netif ifindex as database keyKay Sievers
We need to preserve the database of network interfaces while we rename them. Use the kernel's numbers wherever possible, instead of the device names. Fix wrong database filenames which contain a '/', translated from '!' in the kernel name. Fix segfault for kobject pathes where the subsystem can not be determined from sysfs.
2010-08-31set SELinux context on 'add' but not on 'change' eventsKay Sievers
2010-08-03call util_delete_path() only when we actually deleted stuffKay Sievers
2010-05-20create static nodes provided by kernel modules to allow module autoloadingKay Sievers
2010-05-03remove unused parameter from udev_node_mknod()Kay Sievers
2010-05-01fix device node deletionMichael Thayer
Signed-off-by: Michael Thayer <michael.thayer@sun.com>
2010-04-21more readlink buffer size handlingKay Sievers
2010-04-21remove buffer-overrun risk in readlink callMathias Nyman
readlink does not write a nul character to the end of the string it returns. Therefore ask for one fewer character than the buffer size so there's always room for an extra \0. Signed-off-by: Mathias Nyman <mathias.nyman@nokia.com> Signed-off-by: Phil Carmody <ext-phil.2.carmody@nokia.com> Signed-off-by: Martin Pitt <martin.pitt@ubuntu.com>
2010-04-19add O_NOFOLLOW when creating files in link stackKay Sievers
2010-04-13remove "ignore_remove" optionKay Sievers
2010-04-13remove "all_partitions" optionKay Sievers
We can not predict the major/minor of non-existing devices: $ grep . /sys/class/block/sd*/dev /sys/class/block/sda1/dev:259:524288 /sys/class/block/sda2/dev:259:262144 /sys/class/block/sda3/dev:259:786432 /sys/class/block/sda4/dev:259:131072 /sys/class/block/sda/dev:259:0 /sys/class/block/sdb/dev:259:655360 /sys/class/block/sdc/dev:259:393216 If this functionality is still needed for some broken hardware, it needs to be solved with a tool not part of the udev package. Because such option is unreliable and unsafe to use.
2010-04-12unify/cleanup event handlingKay Sievers
2010-03-17do not reset SELinux context when the node was not touchedKay Sievers
2010-03-10use major:minor as entries in symlink stack instead of devpathKay Sievers
2010-03-10libbudev-private: rename udev_list_entry_get_flag()Kay Sievers
2010-03-10replace utimes() with utimensat()Kay Sievers
2010-01-15clarify message about not removed device nodeKay Sievers
2010-01-13do not remove device nodes of active kernel devicesKay Sievers
We do no longer delete the primary device node while handling "remove" events if the same kernel device is already re-created in the meantime. This prevents the asynchronously running udev from removing and re-creating primary device nodes for active devices.
2009-12-18update mtime of nodes and links when we re-use themKay Sievers
2009-11-03fix major fd leak in link handlingMartin Pitt
link_find_prioritized(): Properly close directory handles to fix a major fd leak which caused hotplugging to fail entirely in many cases due to having too many open files. https://launchpad.net/bugs/463347
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-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-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-01update a few years of copyrightKay Sievers
2009-05-20use more efficient string copyingKay Sievers
2009-05-04handle devtmpfs nodesKay Sievers
UDev follows the kernel given name, and re-uses the kernel created device node. If the kernel and spcecified udev rules disagree, the udev specified node node is created and the kernel-created on is deleted.
2009-04-26drop "extern" keyword from non-static functionKay Sievers
2009-04-19udevd: at startup create /dev/null, /dev/console, /dev/kmsgKay Sievers
2009-01-16remove name from index if the node name has changedKay Sievers
Scott discovered that a changed rule, which renames a device node leaves the old node name around as a symlink. So drop the reference to the old name.
2009-01-15udevadm: test - remove --force optionKay Sievers
Since a while we change the database with a "test" run, but do not update the node and symlinks. We need to "force" all the time, to keep things in sync.
2008-11-24fix handling of swapping node name with symlink nameKay Sievers
2008-11-05fix cleanup of possible left-over symlinksKay Sievers
2008-11-01fix udev_node_update_old_links() logicKay Sievers
No need to check if links that still belong to us, need to be updated.
2008-10-26do not init string arrays, just clear first byteKay Sievers
2008-10-23replace in-memory rules array with match/action token listKay Sievers
The in-memory rule array of a common desktop distro install took: 1151088 bytes with the token list: 109232 bytes tokens (6827 * 16 bytes), 71302 bytes buffer
2008-10-18prefix udev-util.c functions with util_*Kay Sievers
2008-10-18udev_list_cleanup() -> udev_list_cleanup_entries()Kay Sievers
2008-10-18merge udev-rules.c and udev-rules-parse.cKay Sievers
2008-10-16udev-node: name_list -> udev_listKay Sievers
2008-10-16rename udev source filesKay Sievers