X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=NEWS;h=daefed8812b31efcd1acb63ffa76a464f7db2307;hp=90a68d36525152f171c582f70268b7b245c74076;hb=71b4b701b1c5261de0dba5b071ec10089361de0e;hpb=8553cf06b93739c859534a85cc7ef1bdd8e33a5c diff --git a/NEWS b/NEWS index 90a68d365..daefed881 100644 --- a/NEWS +++ b/NEWS @@ -1,30 +1,208 @@ -udev 136 +udev 147 +======== +Bugfixes. + +To support DEVPATH strings larger than the maximum file name length, the +private udev database format has changed. If some software still reads the +private files in /dev/.udev/, which it shouldn't, now it's time to fix it. +Please do not port anything to the new format again, everything in /dev/.udev +is and always was private to udev, and may and will change any time without +prior notice. + +NAME="%k" causes a warning now. It's is and always was completely superfluous. +It will break kernel supplied DEVNAMEs and therefore it needs to be removed +from all rules. + +udev 146 +======== +Bugfixes. + +The udevadm trigger "--retry-failed" option, which is replaced since quite +a while by "--type=failed" is removed. + +The failed tracking was not working at all for a few releases. The RUN +option "ignore_error" is replaced by a "fail_event_on_error" option, and the +default is not to track any failing RUN executions. + +New keymaps, new modem, hid2hci updated. + +udev 145 +======== +Fix possible crash in udevd when worker processes are busy, rules are +changed at the same time, and workers get killed to reload the rules. + +udev 144 +======== +Bugfixes. + +Properties set with ENV{.FOO}="bar" are marked private by starting the +name with a '.'. They will not be stored in the database, and not be +exported with the event. + +Firmware files are looked up in: + /lib/firmware/updates/$(uname -r) + /lib/firmware/updates + /lib/firmware/$(uname -r) + /lib/firmware" +now. + +ATA devices switched the property from ID_BUS=scsi to ID_BUS=ata. +ata_id, instead of scsi_id, is the default tool now for ATA devices. + +udev 143 +======== +Bugfixes. + +The configure options have changed because another library needs to be +installed in a different location. Instead of exec_prefix and udev_prefix, +libdir, rootlibdir and libexecdir are used. The Details are explained in +the README file. + +Event processes now get re-used after they handled an event. This reduces +the number of forks and the pressure on the CPU significantly, because +cloned event processes no longer cause page faults in the main daemon. +After the events have settled, a few worker processes stay around for +future events, all others get cleaned up. + +To be able to use signalfd(), udev depends on kernel version 2.6.25 now. +Also inotify support is mandatory now to run udev. + +The format of the queue exported by the udev damon has changed. There is +no longer a /dev/.udev/queue/ directory. The current event queue can be +accessed with udevadm settle and libudedv. + +Libudev does not have the unstable API header anymore. From now on, +incompatible changes will be handled by bumping the library major version. + +To build udev from the git tree gtk-doc is needed now. The tarballs will +build without it and contain the pre-built documentation. An online copy +is available here: + http://www.kernel.org/pub/linux/utils/kernel/hotplug/libudev/ + +The tools from the udev-extras repository have been merged into the main +udev repository. Some of the extras have larger external dependencies, and +they can be disabled with the configure switch --disable-extras. + +udev 142 +======== +Bugfixes. + +The program vol_id and the library libvolume_id are removed from the +repository. Libvolume_id is merged with libblkid from the util-linux-ng +package. Persistent disk links for label and uuid depend on the +util-linux-ng version (2.15) of blkid now. Older versions of blkid +can not be used with udev. + +Libudev allows to subscribe to udev events. To prevent unwanted messages +to be delivered, and waking up the subscribing process, a filter can be +installed, to drop messages inside a kernel socket filter. The filters +match on the : properties of the device. + This is part of the ongoing effort to replace HAL, and switch current +users over to directly use libudev. + Libudev is still marked as experimental, and its interface might +eventually change if needed, but no major changes of the currently exported +interface are expected anymore, and a first stable release should happen +soon. + +A too old kernel (2.6.21) or a kernel with CONFIG_SYSFS_DEPRECATED +is not supported since while and udevd will log an error message at +startup. It should still be able to boot-up, but advanced rules and system +services which depend on the information not available in the old sysfs +format will fail to work correctly. + +DVB device naming is supplied by the kernel now. In case older kernels +need to be supported, the old shell script should be added to a compat +rules file. + +udev 141 +======== +Bugfixes. + +The processed udev events get send back to the netlink socket. Libudev +provides access to these events. This is work-in-progress, to replace +the DeviceKit daemon functionality directly with libudev. There are +upcoming kernel changes to allow non-root users to subcribe to these +events. + +udev 140 +======== +Bugfixes. + +"udevadm settle" now optionally accepts a range of events to wait for, +instead of waiting for "all" events. + +udev 139 ======== Bugfixes. -For some more advanced features Linux 2.6.22 is the oldest supported -version now. The kernel config with enabled SYSFS_DEPRECATED -is no longer supported. Older kernels should still work, and devices -nodes should be reliably created, but some rules and libudev will -not work correctly because the old kernels do not provide the expected -information or interfaces. +The installed watch for block device metadata changes is now removed +during event hadling, because some (broken) tools may be called from udev +rules and (wrongly) open the device with write access. After the finished +event handling the watch is restored. -We are currently merging the Ubuntu rules in the udev default rules, and -get one step closer to provide a common Linux /dev setup regarding device -names, symlinks, and default device permissions. On udev startup, we now -expect the following groups to be resolvable to their ids by glibc's -getgrnam(): "disk cdrom floppy tape audio video lp tty kmem". +udev 138 +======== +Bugfixes. + +Device nodes can be watched for changes with inotify with OPTIONS="watch". +If closed after being opened for writing, a "change" uevent will occur. +/dev/disk/by-{label,uuid}/* symlinks will be automatically updated. + +udev 137 +======== +Bugfixes. + +The udevadm test command has no longer a --force option, nodes and symlinks +are always updated with a test run now. + +The udevd daemon can be started with --resolve-names=never to avoid all user +and group lookups (e.g. in cut-down systems) or --resolve-names=late to +lookup user and groups every time events are handled. + +udev 136 +======== +Bugfixes. + +We are currently merging the Ubuntu rules in the udev default rules, +and get one step closer to provide a common Linux /dev setup, regarding +device names, symlinks, and default device permissions. On udev startup, +we now expect the following groups to be resolvable to their ids with +glibc's getgrnam(): + disk, cdrom, floppy, tape, audio, video, lp, tty, dialout, kmem. +LDAP setups need to make sure, that these groups are always resolvable at +bootup, with only the rootfs mounted, and without network access available. + +Some systems may need to add some new, currently not used groups, or need +to add some users to new groups, but the cost of this change is minimal, +compared to the pain the current, rather random, differences between the +various distributions cause for upstream projects and third-party vendors. + +In general, "normal" users who log into a machine should never be a member +of any such group, but the device-access should be managed by dynamic ACLs, +which get added and removed for the specific users on login/logout and +session activity/inactivity. These groups are only provided for custom setups, +and mainly system services, to allow proper privilege separation. +A video-streaming daemon uid would be a member of "audio" and "video", to get +access to the sound and video devices, but no "normal" user should ever belong +to the "audio" group, because he could listen to the built-in microphone with +any ssh-session established from the other side of the world. /dev/serial/by-{id,path}/ now contains links for ttyUSB devices, which do not depend on the kernel device name. As usual, unique devices - only a single one per product connected, or a real USB serial number in the device - are always found with the same name in the by-id/ directory. -Completely Identical devices may overwrite their names in by-id/ +Completely identical devices may overwrite their names in by-id/ and can only be found reliably in the by-path/ directory. Devices specified by by-path/ must not change their connection, like the USB port number they are plugged in, to keep their name. +To support some advanced features, Linux 2.6.22 is the oldest supported +version now. The kernel config with enabled SYSFS_DEPRECATED is no longer +supported. Older kernels should still work, and devices nodes should be +reliably created, but some rules and libudev will not work correctly because +the old kernels do not provide the expected information or interfaces. + udev 135 ======== Bugfixes.