+Summary of changes from v150 to v151
+============================================
+
+Amit Shah (1):
+ rules: Add symlink rule for virtio ports
+
+Bryan Kadzban (1):
+ Fix reverted floppy-device permissions
+
+Egbert Eich (1):
+ rulews: suse - add do-not-load-KMS-modules rules
+
+Frederic Crozat (1):
+ rules: acl - add COLOR_MEASUREMENT_DEVICE match
+
+Kay Sievers (11):
+ configure.ac: version bump
+ udevd: inotify - do not parse rules at create but at close
+ do not remove device nodes of active kernel devices
+ libudev: device - create db file atomically
+ clarify message about not removed device node
+ input_id: include limits.h
+ keymap: include linux/limits.h
+ keymap: linux/input.h - get absolute include path from gcc
+ delete outdated and unmaintained writing_udev_rules
+ update README and NEWS
+ update tests
+
+Marco d'Itri (2):
+ writing_udev_rules: update rules files names
+ keymap: support for the Samsung N140 keyboard
+
+Martin Pitt (4):
+ add ACL rule for Garmin GPSMap 60
+ keymap: move force-release directory
+ extras/keymap/check-keymaps.sh: Ignore comment-only lines
+ keymap: Fix invalid map line
+
+
+Summary of changes from v149 to v150
+============================================
+
+Clemens Buchacher (2):
+ add Samsung R70/R71 keymap
+ keymap: Samsung R70/R71 force-release quirk
+
+Daniel Drake (2):
+ keymap: Add OLPC XO key mappings
+ keymap: Fix typo in compal rules
+
+Daniel Elstner (1):
+ libudev: wrap in extern "C" block for C++
+
+David Zeuthen (1):
+ Export ID_WWN_VENDOR_EXTENSION and ID_WWN_WITH_EXTENSION
+
+Jerone Young (1):
+ keymap: Lenovo Thinkpad USB Keyboard with Tracepoint
+
+Johannes Stezenbach (2):
+ keymap: add Samsung N130
+ keymap: handle atkbd force_release quirk
+
+Kay Sievers (15):
+ util_unlink_secure(): chmod() before chown()
+ floppy: fix rule to create additional floppy device nodes
+ configure.ac: version bump
+ remove remaining support for CONFIG_SYSFS_DEPRECATED
+ cdrom_id: remove deprecated device matches
+ rules: add "block" match to floppy rule
+ update mtime of nodes and links when we re-use them
+ udevadm: info - fix info --root --query=name --path= for device without a device node
+ remove remaining support for CONFIG_SYSFS_DEPRECATED
+ fix typo in log message priority handling
+ remove UDEV_RUN environment variable
+ udevadm: logging - copy va_list and do not use it twice
+ libudev: doc - add symbols to sections.txt
+ work around gtk-doc which breaks distcheck
+ gobject-introspection: use $datadir instead of $prefix
+
+Marco d'Itri (2):
+ build: keymap - create subdir
+ rules: udev-acl - add firewire video devices
+
+Martin Pitt (12):
+ keymap: Add Acer Aspire 1810T
+ 95-keymap.rules: Run on change events, too
+ keymap: fix findkeyboards
+ Speed up udev_enumerate_scan_*
+ keymap: Add hotkey quirk for Acer Aspire One (AO531h/AO751h)
+ Clarify RUN/IMPORT documentation
+ keymap: Add Logitech S510 USB keyboard
+ keymap: add Acer TravelMate 8471
+ keymap: Add Acer Aspire 1810TZ
+ keymap: Add LG X110
+ keymap: Add Fujitsu Amilo Li 1718
+ keymap: Document force-release
+
+Piter PUNK (1):
+ firmware: convert shell script to C
+
+Scott James Remnant (1):
+ 70-acl.rules: ACL manage Android G1 dev phones
+
+Thomas de Grenier de Latour (1):
+ libudev: enumerate - fix move_later logic
+
+
+Summary of changes from v148 to v149
+============================================
+
+Daniel Elstner (1):
+ really fix both in-tree and out-of-tree builds
+
+Dmitry Torokhov (1):
+ input-id: identify touchscreens
+
+Kay Sievers (4):
+ libudev: doc - use #NULL
+ configure.ac: version bump
+ really really fix both in-tree and out-of-tree builds
+ fix both in-tree and out-of-tree builds
+
+Martin Pitt (6):
+ input_id: Fix endless loop for non-input devices
+ input_id: Do not tag non-input devices with ID_INPUT
+ input_id: small optimization
+ input_id: check event mask
+ input_id: Check mouse button for ID_INPUT_MOUSE
+ udev_device_get_parent_with_subsystem_devtype(): Clarify documentation
+
+
+Summary of changes from v147 to v148
+============================================
+
+Dan Williams (3):
+ Revert "modem-modeswitch: add a device"
+ Revert "extras/modem-modeswitch: Add Huawei E1550 GSM modem"
+ modem-modeswitch: 61-option-modem-modeswitch.rules is only for Option NV devices
+
+Daniel Mierswa (1):
+ Fix typo in NEWS, ConsoleKit-0.4.11 -> 0.4.1
+
+David Zeuthen (4):
+ cdrom_id: Still check profiles even if there is no media
+ scsi_id: Export WWN and Unit Serial Number
+ Create /dev/disk/by-id/wwn-0x... symlinks
+ Also create /dev/disk/by-id/wwn-0x..-part%n symlinks for partitions
+
+Dmitry Torokhov (1):
+ extras/input_id: Correctly identify touchpads
+
+Harald Hoyer (1):
+ modem-modeswitch: add a device
+
+Kay Sievers (8):
+ rules: set mode of floppy device nodes to 0660
+ remove "ignore_device"
+ print warning for BUS=, SYSFS{}=, ID=
+ test-udev: remove "ignore_device" code
+ udev-test.pl: catch-up with recent changes
+ rules: remove support for IDE (hd*) devices
+ ata_id: skip ATA commands if we find an optical drive
+ Revert "Fix out-of-tree builds"
+
+Martin Pitt (5):
+ README.keymap.txt: small clarification
+ extras: Add input_id
+ 70-acl.rules: Use new-style input properties
+ input: Deprecate ENV{ID_CLASS}
+ input_id: code cleanup
+
+Scott James Remnant (1):
+ Fix out-of-tree builds
+
+
+Summary of changes from v146 to v147
+============================================
+
+Alan Jenkins (1):
+ udevd: queue-export - remove retry loop
+
+Andrew Church (1):
+ fix wrong parameter size on ioctl FIONREAD
+
+Daniel Mierswa (2):
+ don't compare a non-existing function with NULL
+ use nanosleep() instead of usleep()
+
+David Zeuthen (4):
+ gudev: remove G_UDEV_API_IS_SUBJECT_TO_CHANGE since API is now stable
+ ata_id: export more advanced ATA features
+ gudev: Fix up GUdevDeviceNumber
+ gudev: Remove LIBUDEV_I_KNOW_THE_API_IS_SUBJECT_TO_CHANGE from priv header
+
+Florian Zumbiehl (10):
+ util_delete_path(): use util_strscpy()
+ util_lookup_group(): fix memory leak if realloc() fails
+ util_delete_path(): handle multiple leading slashes
+ util_create_path(): fix possible out of bounds array access
+ ude_rules.c: fix possible NULL pointer dereference in get_key()
+ util_resolve_sys_link(): fix possible buffer overflow
+ udev_util_encode_string(): fix possible buffer overflow
+ udev-rules.c: parse_file() - fix possible buffer overflow
+ udev_queue_get_seqnum_sequence_is_finished(): fix possible file handle leak
+ util_run_program(): fix possible buffer overflow #2
+
+Harald Hoyer (2):
+ scsi_id: prevent buffer overflow in check_fill_0x83_prespc3()
+ rename interfaces to <iface>_rename if rename fails
+
+Jeremy Kerr (1):
+ util_run_program: restore signal mask before executing event RUN commands
+
+Kay Sievers (45):
+ make: sort Makefile.am per target/extra
+ configure.ac: version bump
+ udev-acl: allow to skip ACL handling
+ rules: rfkill has no group, so use 0644
+ rule_generator: net - fix MATCHDEVID
+ make: add comment
+ update NEWS
+ print warning for NAME="%k" - it breaks the kernel supplied DEVNAME
+ warn about non-readable or empty rules file
+ change database file names
+ assign errno for getgrnam_r()/getpwnam_r()
+ doc: udevadm test *does* create nodes and links these days
+ util_unlink_secure(): chmod() before chown()
+ util_create_path(): fix errno usage
+ inotify_add_watch(): do not store watch, if it failed
+ update TODO
+ update README
+ rules: suse - use NAME for mapper/control
+ libudev-util.c: get_sys_link() - return error for empty link target
+ udev-rules.c: remove 'first_token' variable
+ Revert "udev-rules.c: remove 'first_token' variable"
+ test: catch possible bug in GOTO resolving
+ udevadm: remove symlink support for old commands
+ util_run_program(): skip multiple spaces in argv creation
+ fix whitespace
+ require 2.6.27 for proper signalfd handling
+ fix randonm findings from llvm-clang-analyzer
+ simplify "symlink name stack"
+ reorder create_path() and node/link creation to be called in a direct sequence
+ put util_create_path() and file creastion in a retry loop
+ udevadm: control - remove compat code
+ scsi_id: delete copy of bsg.h
+ fix SYMLINK{} option parsing
+ rules: remove remaining NAME="%k"
+ rules: drop almost all NAME= keys
+ update TODO, NEWS
+ udevd: serialize events for with the same major/minor
+ break loops if util_create_path() returns error
+ remove "last_rule" option
+ use CLOEXEC flags instead of fcntl()
+ unblock signals we might want to handle
+ udevd: create /dev/.udev/rules.d/ before watching it wit inotify
+ gudev: fix pkg-config call to work with "make distcheck"
+ update NEWS
+ Revert "gudev: fix out-of-tree build"
+
+Lennart Poettering (5):
+ pci-db: make sure we actually read the pci.ids file instead of usb.ids
+ sound: recognize saa7134 TV card sound devices as TV cards
+ sound: include ALSA sound card id in ID_ID property
+ sound: include ALSA sound card id in /dev/snd/by-id/ links
+ Revert "sound: include ALSA sound card id in /dev/snd/by-id/ links"
+
+Marco d'Itri (6):
+ doc: writing_udev_rules updated for the new command names
+ rules: sound - do not use /usr/bin/env
+ udevadm: print all messages to stderr with priority higher or equal than LOG_ERR
+ udevadmi: control = exit with rc=2 if there is some system error
+ gudev: gir-scanner workaround for out of tree builds
+ gudev: fix out-of-tree build
+
+Mario Limonciello (1):
+ hid2hci: remove superfluous bmAttributes match
+
+Martin Pitt (24):
+ extras/keymap: Add Acer Aspire 6920
+ extras/modem-modeswitch: eject ZTE MF6xx fake CD-ROMs
+ extras/keymap: Fix hold key on Acer Aspire 6920
+ extras/keymap: Fix case matching for Micro-Star
+ Revert "extras/keymap: Fix case matching for Micro-Star"
+ make raw USB printer devices accessible for lp
+ modem-modeswitch rules: Match more devices
+ extras/keymap: fix hash table collisions
+ extras/keymap: Rename KEY_COFFEE to KEY_SCREENLOCK
+ fix single-session CD detection
+ fix previous commit for CD detection
+ make raw USB printer devices world-readable again
+ 50-udev-default.rules: fix printer MODE
+ keymap: Add Logitech Wave USB
+ keymap: add missing map file
+ keymap: fix usb_id invocation
+ keymap: make USB keyboards really work
+ keymap: Add Logitech Wave cordless
+ keymap: add HP Pavillion dv6315ea
+ keymap: add HP 2230s
+ Makefile.am: fix build with mawk
+ extras/keymap/README.keymap.txt: Fix bug report link
+ fix major fd leak in link handling
+ modem-modeswitch: fix ZTE MF6xx rule
+
+Matthias Schwarzott (2):
+ rules: Gentoo update
+ rules: Gentoo update
+
+Maxim Levitsky (1):
+ keymap for Acer Aspire 5720
+
+Peter Rajnoha (1):
+ libudev: allow to store negative values in the udev database
+
+Scott James Remnant (1):
+ util_run_program: *really* restore signal mask before executing event RUN commands
+
+William Jon McCann (1):
+ udev-acl: catch up with ConsoleKit 0.4.1
+
+
+Summary of changes from v145 to v146
+============================================
+
+Alan Jenkins (3):
+ man: fix unused, inaccurate metadata
+ man: SYMLINK can be matched as well as assigned
+ fix spelling
+
+Anssi Hannula (2):
+ rules: exclude digitizers from joystick class
+ udev-acl: add joystick devices
+
+Diego Elio 'Flameeyes' Pettenò (21):
+ Merge libudev, udev, and the unconditional extras in a single Makefile.am.
+ Replace the custom test-run target with the standard make check.
+ Also merge into the top-level Makefile.am the simpler extras.
+ Change hook handling to be more portable.
+ Merge keymap building in the top-level Makefile.am.
+ Make keymap generation rules be silent (backward-compatible).
+ Move pkg-config docs and man pages before conditionals.
+ Finally, also merge gudev into the top-level Makefile.am.
+ Make sure to clean up all the built sources.
+ Make sure to use dependency/target variables.
+ Add silent-rule support for the gudev rules.
+ Fix building of introspection library on top-level Makefile.am.
+ Fix another relative path for the new working directory.
+ Include the correct directory for out-of-source builds.
+ Add tests to the distribution; this fixes "make distcheck".
+ Ask gperf to use ANSI-C for generation.
+ Merge in Makefile.am.inc into Makefile.am
+ Use the keymap check during “make distcheck” rather than “check”.
+ Fix building of documentation when doing out-of-source builds.
+ Fix “make distcheck” run outside of the source directory.
+ Use LT_INIT to explicit that udev needs libtool series 2.
+
+Eric W. Biederman (1):
+ fix util_lookup_group to handle large groups
+
+Erik Forsberg (1):
+ extras/modem-modeswitch: Add Huawei E1550 GSM modem
+
+Kay Sievers (18):
+ udevd: add timestamp to --debug output
+ v4l_id: exit with 0 when --help is given
+ configure.ac: version bump
+ hid2hci: remove hid structures and include kernel header
+ path_id: make global variable static
+ udevadm: trigger - add --sysname-match=
+ rules: serial - fix path_id call
+ path_id: fix typo in comment
+ format names are not case insensitive
+ hid2hci: rewrite (and break) rules and device handling
+ make: build internal tools against libudev-private.la
+ update a few years of copyright
+ libudev: silent gcc warning: may be used uninitialized in this function
+ make: suppress enter/leaving directory messages
+ re-enable failed event tracking
+ "record_failed" -> "fail_event_on_error"
+ udevd: block for 15 seconds after error when too old kernel is detected
+ make: fix issues from non-recursive conversion
+
+Lennart Poettering (1):
+ enumeration: move ALSA control devices to the end of the enumerated devices of each card
+
+Mario Limonciello (2):
+ hid2hci: support to hid2hci for recovering Dell BT devices after S3
+ hid2hci: install re-trigger for hid device when recovering from S3
+
+Martin Pitt (17):
+ add keymap for Clevo D410J laptop
+ extras/keymap: add Zepto ZNote
+ extras/keymap: add Everex Stepnote XT5000T
+ extras/keymap: add Compal Hel80i
+ keymap tool: improve help
+ keymap tool: support scancode/keycode pair arguments
+ keymap: inline one-line key maps
+ extras/keymap: fix check-keymaps.sh for inline mappings
+ extras/keymap: add recently added keymap files to Makefile.am
+ extras/keymap: Add HP Presario 2100
+ extras/keymap: cover more Compaq Evo models
+ extras/keymap: Add Fujitsu Amilo M
+ extras/keymap: teach findkeyboards about USB keyboards
+ extras/keymap: Add Samsung SX22S
+ extras/keymap: Fix crash for unknown keys
+ extras/keymap: Add Samsung NC20
+ extras/keymap: Fix Bluetooth key on Acer Aspire 6920
+
+
+Summary of changes from v144 to v145
+============================================
+
+Ian Campbell (1):
+ scsi_id: correct error handling in prepend_vendor_model
+
+Kay Sievers (10):
+ README: add CONFIG_BLK_DEV_BSG
+ use MIN() MAX() from param.h
+ configure.ac: version bump
+ libudev: device - free values before updating them
+ libudev: enumerate - sort with qsort()
+ udevd: detach event from worker if we kill a worker
+ udevadm: info - add space after R:, A:, W: on database export
+ udevd: make sure a worker finishes event handling before exiting
+ udevd: handle SIGCHLD before the worker event message
+ udevd: use bool
+
+
+Summary of changes from v143 to v144
+============================================
+
+Jon Masters (1):
+ firmware: search for third party or sysadmin supplied firmware updates
+
+Kay Sievers (19):
+ configure.ac: add AM_SILENT_RULES
+ configure.ac: version bump
+ TODO: add cleanup of ATA_COMPAT
+ libudev: queue - add comments for queue format
+ udev/.gitignore: add udev.pc
+ configure.ac: version bump
+ do not exports properties starting with a '.'
+ scsi_id: --reformat_serial - use udev_util_replace_whitespace()
+ ata_id: sync ID_SERIAL(_SHORT) with other *_id tools
+ rules: make ata_id properties the default for all ATA block devices
+ scsi_id: delete no longer needed config file
+ update NEWS
+ man: udev - add private properties like ENV{.FOO}="bar"
+ Merge branch 'firmware' of git://git.kernel.org/pub/scm/linux/kernel/git/jcm/udev-jcm
+ udevadm: test - print list of properties
+ build: do not delete .la files
+ libudev: monitor - handle kernel supplied DEVNAME properly
+ update NEWS
+ build: add *exec* to the internal rootlibdir name
+
+Martin Pitt (2):
+ hid2hci: narrow matches to real HCI devices
+ extras/udev-acl: add smartcard readers
+
+Stefan Richter (1):
+ rules: set group ownership of new firewire driver device files
+
+
+Summary of changes from v142 to v143
+============================================
+
+Alan Jenkins (5):
+ udevadm: settle - fix timeout
+ udevd: remove tiny bit of dead code
+ udevd: implement a more efficient queue file format
+ udev-selinux.c: remove libudev header
+ udevd: queue-export - fix crash
+
+Benjamin Gilbert (1):
+ test: check string substitutions in OWNER and GROUP
+
+Dan Williams (2):
+ rules: tty/net - move from udev-extras
+ extras/modem-modeswitch: move from udev-extras
+
+David Zeuthen (1):
+ gudev: move from udev-extras
+
+Kay Sievers (95):
+ version bump
+ rules: v4l do not mix vbi and video nodes
+ fix possible endless loop for GOTO to non-existent LABEL
+ Revert "rules: v4l do not mix vbi and video nodes"
+ rule-generator: cd - skip by-path links if we create by-id links
+ remove format char string truncation syntax
+ use more efficient string copying
+ edd_id: use openat()
+ use openat(), unlinkat(), fstatat()
+ update TODO
+ remove unused GL_FORMAT from rules parser
+ require key names in uppercase
+ keep the ifdef'd udevd testing/profiling hack
+ fix location of database files
+ udevadm: settle - make --timeout=0 working
+ update NEWS
+ rules: add SUBSYSTEM match to scsi rules
+ cdrom_id: suppress ID_CDROM_MEDIA_STATE=blank for plain non-writable CDROM media
+ udevadm: control - add comment to man page about --reload-rules
+ cdrom_id: add error message if open() fails
+ udevadm: settle - add --exit-if-exists=<file>
+ udevd: remove check for dev_t, DEVPATH_OLD takes care of that
+ str[sp]cpyl: add __attribute__ ((sentinel))
+ udevd: convert to event worker processes
+ udevd: close netlink socket in worker and set cloexec
+ rules: do not call path_id for virtual devices
+ udevd: use enum instead of char in struct declaration
+ allow format substitution in path of ATTR{<path>}=="<value>"
+ cleanup $attr{} substitution
+ path_id: implement in C using libudev
+ path_id: update SCSI handling
+ path_id: add comments
+ fix signed/unsigned warning
+ libudev: enumerate - allow multiple keys with the same name
+ udevadm: trigger - add --property-match=<key>:<value>
+ udevadm: info - accept --query without a value and print properties
+ udevadm: control - --env -> --property
+ udevadm: monitor --environment -> --property
+ path_id: handle fibre channel
+ path_id: add iscsi support
+ path_id: delete old shell script
+ udevd: print error if worker dies unexpectedly
+ path_id: rename scsi sub-fuctions
+ libudev: add comments to libudev.h
+ libudev: move to top-level directory
+ fix libudev include in Makefile.am.in
+ libudev: device_new() -> udev_device_new()
+ udevd: log info for created/killed workers
+ libudev: call log functions conditionally
+ move syslog wrapper to libudev
+ move common stuff from udev/ to private parts of libudev/
+ libudev: rename private files to *-private.c
+ rules: remove scsi ch module loading rule
+ update NEWS
+ udevadm: info -revert "accept --query without argument"
+ README: add kernel options
+ README: add INOTIFY and SIGNALFD
+ USE_LOG -> ENABLE_LOGGING, DEBUG -> ENABLE_DEBUG, USE_SELINUX -> WITH_SELINUX
+ libudev: add gtk-doc
+ libudev: update documentation
+ libudev: doc - add section headers
+ libudev: doc - add enumerate
+ libudev: doc - add queue
+ update TODO
+ libudev: doc - add namespace for index
+ libudev: move .so version to libudev Makefile
+ autogen.sh: simplify
+ TODO: update
+ libudev: remove prefix from .so version variables
+ libudev: doc - add empty libudev.types
+ udev-acl: move from udev-extras
+ INSTALL: add --enable-extras
+ udev-acl: handle missing action when called in CK mode
+ v4l_id: move from udev-extras
+ libudev: doc - libudev-docs.sgml -> libudev-doc.xml
+ gudev: fix typo in configure option
+ v4l_id: 70-v4l.rules -> 60-persistent-v4l.rules
+ configure: enable all extras by default, provide --disable-extras
+ autogen.sh: make "CFLAGS=-O0 ./autogen.sh" working
+ NEWS: add --disable-extras
+ cleanup ./configure installation directory options
+ rules: remove MMC rule, 2.6.30 has the modalias
+ configure.ac: print error if gperf is missing
+ libudev: install in $libdir and move later to $rootlibdir
+ extras/keymap: use LIBEXECDIR instead /lib/udev
+ README: add /lib/udev/ is private
+ rules: do not install usb-id/pci-id rules when --disable-extras is used
+ extras: delete man pages for private udev tools
+ README: update
+ extras/keymap: install findkeyboards in /lib/udev
+ INSTALL: use /sbin instead of %{sbindir}
+ NEWS: update
+ udev.pc: add
+ Merge branch 'master' of git+ssh://master.kernel.org/pub/scm/linux/hotplug/udev
+ docs: install writing_udev_rules
+
+Lennart Poettering (2):
+ rules: sound - move from udev-extra
+ usb-db: move from udev-extras
+
+Marcel Holtmann (1):
+ rules: make RFKILL control device world readable
+
+Mario Limonciello (1):
+ hid2hci: move from udev-extras
+
+Martin Pitt (5):
+ keymap: move from udev-extras
+ extras/keymap: Fix WLAN button on ThinkPads
+ keymap: Update findkeyboard path in docs
+ udev-acl: Manage hplip device permissions
+ extras/keymap: Update findkeyboards location
+
+Matthias Schwarzott (3):
+ rules: Gentoo update
+ rules: Gentoo update
+ rules: Gentoo update
+
+Scott James Remnant (1):
+ OWNER/GROUP: fix if logic
+
+
+Summary of changes from v141 to v142
+============================================
+
+Andre Przywara (1):
+ rules: create /dev/cpu/<n>/cpuid world readable
+
+Ian Campbell (1):
+ path_id: support identification of Xen virtual block devices
+
+John Wright (1):
+ edd_id: add cciss devices
+
+Kay Sievers (46):
+ version bump
+ libudev: path_encode - always return 0 if encoded string does not fit into size
+ libudev: monitor - clarify socket handling documentation
+ udevd: log error for too old kernels or CONFIG_SYSFS_DEPRECATED
+ rules: remove DVB shell script
+ update NEWS
+ cdrom_id: add Xen cdrom support
+ test-libudev: update monitor source
+ TODO: add packet filter
+ update NEWS
+ udevd: at startup create /dev/null, /dev/console, /dev/kmsg
+ cdrom_id: add and use ID_CDROM_MEDIA to decide if we run vol_id
+ libudev: monitor - add client socket filter for subsystem value
+ udevadm: monitor - print error if we can not bind to socket
+ update TODO
+ udevadm monitor - add --subsystem-match=
+ libudev: monitor - use simpler hash
+ libudev: monitor - switch to filter_add_match_subsystem_devtype()
+ libudev: monitor - do not filter messages with wrong magic
+ udevadm: monitor - add <subsytem>:<devtype> support
+ libudev: monitor - add udev_monitor_filter_remove
+ libudev: queue - fix get_seqnum_is_finished()
+ cdrom_id: skip media tests if CDROM_DRIVE_STATUS != CDS_DISC_OK
+ libudev: queue - clarify comments
+ libudev: monitor - export filter_update()
+ update NEWS
+ drop "extern" keyword from non-static function
+ rule_generator: net - fix usb comment generation
+ rules: input - add links for USB/platform non-kbd/mouse devices
+ rules: input - fix comments
+ rules: add rfcomm* to group dialout
+ accept DEVNAME from the kernel as a hint for the node name
+ update TODO
+ build: use AC_MSG_RESULT
+ rules: add "event*" match
+ udevd: revert initial device node creation
+ rules: remove initramfs comment
+ handle devtmpfs nodes
+ oops, removed ppp entry from rules got committed
+ remove all PHYSDEVPATH handling and warning about
+ remove asmlinkage
+ rules: fix ieee1394 rules
+ add "static" back to the inline functions
+ update TODO
+ delete vol_id and require util-linux-ng's blkid
+ delete libvolume_id
+
+Lubomir Rintel (1):
+ rule-generator: net - whitelist NICs that violate MAC local scheme
+
+
+Summary of changes from v140 to v141
+============================================
+
+Adam Buchbinder (4):
+ usb_id: add manpage
+ cdrom_id: update manpage
+ create_floppy_devices: expand manpage
+ vol_id: fix language in manpage
+
+Alan Jenkins (1):
+ avoid leaking netlink socket fd to external programs
+
+Borislav Petkov (1):
+ rules: rename ide-floppy to ide-gd
+
+David Brownell (1):
+ rules: exclude mtd* from persistent disk links
+
+Kay Sievers (15):
+ rules: fix extra quote in 50-udev-default.rules
+ version bump
+ udevadm: test - handling trailing '/' in devpath
+ udevadm: monitor - clarify printed header
+ rules: remove ram* from persisten disk links blacklist
+ rules: serial - support ttyACM devices
+ rules: replace IDE driver with media match
+ usb_id: add ID_VENDOR_ID, ID_MODEL_ID, ID_USB_INTERFACE_NUM, ID_USB_DRIVER
+ libudev: GPL -> LGPL
+ usb_id: remove unused variable
+ send monitor events back to netlink socket
+ "UDEV_MONITOR_KERNEL/UDEV" -> "kernel/udev"
+ IMPORT: 2048 -> 4096 bytes buffer
+ path_encode: fix max length calculation
+ libudev: monitor - unify socket message handling
+
+Michal Soltys (1):
+ rules: md-raid.rules fix
+
+Robby Workman (1):
+ udevadm: trigger - add "--action" to --help
+
+Scott James Remnant (1):
+ libudev: monitor - ignore messages from unusual sources
+
+
+Summary of changes from v139 to v140
+============================================
+
+Harald Hoyer (1):
+ libvolume_id: bump age
+
+Kay Sievers (12):
+ version bump
+ update TODO
+ volume_id: ntfs - fix uuid setting
+ update TODO
+ rules: Fedora update
+ libudev: queue - use lstat() to check existence of symlink
+ udevadm: settle - add --seq-start= --seq-end=
+ udevd: switch watch symlinks to devpath
+ udevadm: add text for new options to command and man page
+ update TODO
+ libudev: ctrl - return error after sending ctrl message
+ udevadm: settle - use timeout signal, instead of loop counter
+
+Michael Prokop (1):
+ fix compile error in debug mode
+
+Scott James Remnant (1):
+ udevadm: settle - synchronise with the udev daemon
+
+
+Summary of changes from v138 to v139
+============================================
+
+Kay Sievers (11):
+ version bump
+ remove static local variable
+ use the event udev_device to disable the watch on "remove"
+ add "nowatch" to disable a default installed watch with a later rule
+ add m4/ subdir
+ use AC_USE_SYSTEM_EXTENSIONS instead of AC_GNU_SOURCE
+ usb_id: add ID_USB_INTERFACES=:0e0100:0e0200:010100:010200:
+ usb_id: return values if called directly for an usb_device
+ usb_id: fix NULL string usage
+ usb_id: fix comment
+ udevadm: info - export all devices with --export-db
+
+Scott James Remnant (10):
+ Don't add inotify watch until RUN rules processed.
+ Clear existing inotify watch before processing.
+ Cleanup a little.
+ Allow watch handle to be stored in the udevdb.
+ Store watch handle in db.
+ Use the udevdb to speed up watch clearing.
+ Put a log message in a more sensible place.
+ Output watch handle in udevadm info.
+ lookup the old watch handle; reload only if has a path
+ Look at more inotify events in the buffer than just the first.
+
+
+Summary of changes from v137 to v138
+============================================
+
+David Zeuthen (1):
+ *_id: add model/vendor enc strings
+
+Karel Zak (2):
+ vol_id: fix ddf version string
+ vol_id: add missing id->type to swap0
+
+Kay Sievers (13):
+ man: fix grammar
+ version bump
+ fix NAME="" logic
+ rules: dm - add escape for uuid links with whitespace
+ test: add test for empty and non-existent ATTR
+ rules: fix md "change"/"remove" handling
+ autogen.sh: add more warnings
+ fix NAME= and OPTION+="string_escape=..." logic
+ rules: move OPTIONS to separate rule
+ use global "reload_config" flag
+ rules: add "watch" option to dm and md rules
+ rules: include loop block devices in persistent links
+ release 138
+
+Matthias Schwarzott (1):
+ rules: Gentoo update
+
+Miklos Vajna (1):
+ doc: writing udev rules - refer to 'udevadm info' instead of 'udevinfo'
+
+Scott James Remnant (2):
+ udevd: optionally watch device nodes with inotify
+ rules: update persistent storage rules to use inotify watches
+
+
+Summary of changes from v136 to v137
+============================================
+
+Alan Jenkins (2):
+ man: typo fixes
+ remove stray initializer
+
+Kay Sievers (17):
+ version bump
+ rules: fix typo in ide cd rule
+ libudev: use 4096 bytes buffer for attribute reading
+ rules: add drm devices to group "video"
+ do not complain about a missing /etc/udev/rules.d/
+ udevadm: test - remove --force option
+ update NEWS
+ remove name from index if the node name has changed
+ cleanup old names before creating the new names
+ open-code pollfd setup
+ increase netif renaming timeout from 30 to 90 seconds
+ Merge commit '5f03ed8a56d308af72db8a48ab66ed68667af2c6'
+ Merge commit '9032f119f07ad3b5116b3d4858816d851d4127de'
+ split up long line
+ udevd: add back SA_RESTART
+ usb_id: handle ATAPI devices like SCSI devices
+ udevadm: settle - fix typo
+
+Lennart Poettering (1):
+ fix naming for tape nst devices in /dev/tape/by-path/
+
+Olaf Kirch (2):
+ udevd: use ppoll instead of signal pipes
+ reap children faster
+
+Scott James Remnant (2):
+ Allow user and group lookup to be disabled.
+ Expose delayed name resolution
+
+Sven Jost (1):
+ volume_id: support via raid version 2
+
+
+Summary of changes from v135 to v136
+============================================
+
+Adam Buchbinder (1):
+ extras: fix mis-spelling of "environment"
+
+Harald Hoyer (1):
+ rule_generator: fix enumeration for write_cd_rules
+
+Jeremy Higdon (1):
+ path_id: rework SAS persistent names
+
+Karel Zak (1):
+ volume_id: HPFS code clean up
+
+Kay Sievers (54):
+ rules: ATA_COMPAT do not try to match on sr*, it will never have vendor ATA
+ scsi_id: do not fail if no serial is found like for optical drives
+ update configure and NEWS
+ rules: fix isdn rules
+ rules: add persistent /dev/serial/{by-id,by-path} rules
+ make: install serial rules file
+ make: do not delete autotools generated file with distclean
+ udevadm: settle - allow --timeout=0 and --quiet
+ rules: move aoe rules to default rules file
+ volume_id: btrfs - update format
+ rules: add "do not edit header"
+ volume_id: support sub-uuid's and plug in btrfs device uuid
+ libudev: include <sys/types.h>
+ build: add -lsepol
+ build: just use autoreconf -i
+ rules: remove ide-scsi
+ rules: first simple step merging with Ubuntu rules
+ "'/sbin/modprobe abnormal' exit" - also print program options
+ rules: more changes toward Ubuntu rules merge
+ rules: more changes toward Ubuntu rules merge
+ rules: remove /dev/raw/raxctl symlink, it's a devfs leftover
+ rules: rtc - create rtc compat link only for cmos type rtc
+ rules: remove legacy symlinks
+ rules: do not put raw1394 in "video" group
+ rules: second round merging with Ubuntu rules
+ rules: remove /dev/dsp /dev/audio
+ rules: put alsa in group "audio"
+ rules: isdn - remove /dev/isdn/capi20 symlink
+ rules: provide /dev/raw/rawctl
+ if needed, store database entries also for devices which do not have a device node
+ build: use autoreconf --symlink
+ usb_id: add "image" class
+ require non-SYSFS_DEPRECATED 2.6.20+ kernel
+ build: default to --prefix=/usr --exec-prefix=""
+ libudev: enumerate - add lookup by property
+ rules: input - make sure needed variables are set
+ libudev: device - read "uevent" only if info is not already loaded
+ libudev: subsytem -> subsystem
+ libudev: bump revision
+ usb_id: use devtype lookup
+ require 2.6.22+ kernel
+ rules: Ubuntu merge - use group "cdrom"
+ rules: Ubuntu merge - use group "tape"
+ rules: replace DVB shell script rule
+ rules: Ubuntu merge - s/uucp/dialout/
+ update NEWS
+ update NEWS
+ enable skipping of "naming-only" rules
+ usb_id: s/image/media/
+ udevadm: s/udevinfo/udevadm info/
+ rules: reorder block rules
+ rules: zaptel - add "dialout" group
+ libudev: device - add udev_device_get_property_value()
+ libudev: test - add udev_device_get_property_value()
+
+Marcel Holtmann (3):
+ libudev: device - add devtype support
+ libudev: device - lookup subsystem and devtype together
+ libudev: device - remove udev_device_get_parent_with_subsystem
+
+Michal Soltys (1):
+ man: udev - update NAME assignment
+
+Ryan Thomas (1):
+ rules: add rules for AoE devices
+
+
+Summary of changes from v134 to v135
+============================================
+
+Kay Sievers (6):
+ usb_id: add "break" to currently unused case labels
+ rules: fix cciss disk/by-id/ links
+ rules: add infiniband rules
+ rules: infiniband.rules -> 40-infiniband.rules
+ fix network interface name swapping
+ update configure and NEWS
+
+Marcel Holtmann (1):
+ usb_id: fix switch statement for video type
+
+Piter PUNK (2):
+ rules: /dev/null -> X0R
+ rules: add usb device nodes
+
+
+Summary of changes from v133 to v134
+============================================
+
+Gabor Z. Papp (1):
+ include errno.h in sysdeps.h
+
+Harald Hoyer (1):
+ rules: add persistent rules for memory stick block devices
+
+Kay Sievers (19):
+ autogen.sh: fix -print-multi-os-directory usage
+ volume_id: update btrfs magic
+ bump version
+ rules: merge group "video" into default rules
+ rules: v4l - add by-id/ links for USB devices
+ libudev: accept NULL whitelist in util_replace_chars()
+ usb_id: replace chars in returned strings
+ ata_id: make sure, we do not have slashes in values
+ scsi_id: make sure, we do not have slashes in values
+ volume_id: remove unused usage types
+ vol_id: if regular files are probed, use stat() for the size value
+ volume_id: update btrfs
+ volume_id: clear probing result before probing and do not probe a second time, if not needed
+ path_id: fix fibre channel handling
+ update NEWS TODO
+ floppy: use ARRAY_SIZE()
+ fix handling of swapping node name with symlink name
+ silence PHYSDEV* warning for WAIT_FOR* rules
+ rules: exclude "btibm" devices from vol_id calls
+
+Matthias Schwarzott (1):
+ rules: Gentoo update
+
+Peter Breitenlohner (2):
+ man: fix typos
+ floppy: fix array bounds check and minor calculation
+
+
+Summary of changes from v132 to v133
+============================================
+
+Alan Jenkins (2):
+ udevd: de-duplicate strings in rules
+ scsi_id: we don't use DEVPATH env var anymore, update man page
+
+Karel Zak (1):
+ volume_id: fat - move check for msdos signature (0x55 0xaa)
+
+Kay Sievers (22):
+ silence "comparison between signed and unsigned"
+ string index - split nodes and childs to allow and unlimited number of childs
+ reserve child slot 0
+ merge trie nodes, childs and root into a single array
+ set errno = ENOSYS in inotify stub
+ udevadm: info - unify -V and --version
+ rules: remove DEVTYPE disk/partition
+ rules: remove pnp shell script, acpi loads these modules properly
+ update NEWS
+ configure: add linux-hotplug mail address
+ remove len == 0 check, the index root is always '\0'
+ volume_id: bump revision
+ volume_id: always check for all filesystem types and skip conflicting results
+ volume_id: fat - accept empty FAT32 fsinfo signature
+ fix spelling in comment
+ volume_id: ntfs - mark as no other fs must match
+ vol_id: clarify error message
+ libudev: device - handle disk "device" link for partitions in deprecated sysfs layout
+ limit $attr(<symlink>) magic to well-known links only
+ udevd: fix cleanup of /dev/.udev/uevent_seqnum
+ fix $links substitution for devices without any link
+ update NEWS
+
+Sergey Vlasov (1):
+ udevadm: fix option parsing breakage with klibc
+
+
+Summary of changes from v131 to v132
+============================================
+
+Kay Sievers (2):
+ fix size_t compiler warning on 32 bit platforms
+ convert debug string arrays to functions
+
+
+Summary of changes from v130 to v131
+============================================
+
+Alan Jenkins (17):
+ libudev: fix sysnum logic for digit-only device names
+ udevd: avoid overhead of calling rmdir on non-empty directories
+ use more appropriate alternatives to malloc()
+ libudev: util - optimize path_encode()
+ libudev: allocate udev_device->envp[] dynamically
+ replace strncpy() with strlcpy()
+ use re-entrant variants of getpwnam and getgrnam
+ udevd: fix memory leak
+ udevd: fix WAIT_FOR_SYSFS execution order
+ fix handling of string_escape option
+ udevd: use a tighter loop for compare_devpath()
+ udevd: avoid implicit memset in match_attr()
+ kerneldoc comment fixes
+ udevd: simplify rules execution loop
+ udevd: fix termination of rule execution
+ udevd: be more careful when matching against parents
+ udevd: shrink struct token to 12 bytes
+
+Kay Sievers (113):
+ remove outdated docs/README-gcov_for_udev
+ libudev: device - add device lookup by subsystem:sysname
+ libudev: also prefix non-exported functions with udev_*
+ libudev: add udev_monitor_send_device()
+ libudev: list - add flag
+ libudev: device - generate DEVNAME and DEVLINKS properties
+ vol_id: update README
+ libudev: handle ! in sysname, add sysnum, return allocated list_entry on add
+ delete simple-build-check.sh
+ test: move global ENV{ENV_KEY_TEST}="test" to local rule
+ libudev: monitor - fix send_device() property copying
+ libudev: device - add get_envp() to construct envp from property list
+ libudev: do not include ctrl in libudev.so
+ libudev: monitor - do not mangle DEVLINKS property
+ libudev: update DEVLINKS property when properties are read
+ libudev: device - lookup "subsystem" and "driver" only once
+ libudev: device - export properties when values are set
+ libudev: list - handle update of key with NULL value
+ libudev: ctrl - fix typo in set_env()
+ libudev: add global property list
+ libudev: device - copy global properties, unset empty properties
+ volume_id: btrfs - update magic to latest disk format
+ udevd: use libudev
+ move udev_device_db to libudev
+ rename udev source files
+ libudev: always add UDEV_LOG
+ libudev: monitor - export MAJOR/MINOR only if available
+ udev-node: name_list -> udev_list
+ udev-rules-parse: name_list -> udev_list
+ delete name_list, move common file functions
+ fix sorting of rules files
+ run_program: prevent empty last argv entry
+ update IMPORT= file/stdout property parsing
+ update rules file parsing
+ delete udev-util-file.c
+ libudev: list - prepend udev_* to all functions
+ libudev: add sysnum to test program
+ test: fix a few unintentially wrongly written rules which cause parse errors
+ libudev: monitor - add set_receive_buffer_size()
+ libudev: ctrl - change magic to integer
+ libudev: make list_node functions available
+ udevd: use udev_list_node
+ collect: use udev_list
+ delete list.h
+ merge udev-rules.c and udev-rules-parse.c
+ make struct udev_rules opaque
+ move run_program to util
+ udev_event_run() -> udev_event_execute_rules()
+ udev_rules_run() -> udev_event_execute_run();
+ move udev_rules_apply_format() to udev-event.c
+ udev_list_cleanup() -> udev_list_cleanup_entries()
+ selinux_init(udev) -> udev_selinux_init(udev)
+ prefix udev-util.c functions with util_*
+ pass make distcheck
+ libudev: device - get_attr_value() -> get_sysattr_value()
+ cdrom_id: remove ARRAY_SIZE() declaration
+ replace missing get_attr_value() -> get_sysattr_value()
+ add "root" == 0 shortcuts to lookup_user/group()
+ do not use the new work-in-progress parser rule matcher
+ libudev: device - 128 -> ENVP_SIZE
+ add util_resolve_subsys_kernel()
+ handle numerical owner/group string in lookup_user/group()
+ replace in-memory rules array with match/action token list
+ do not create temporary node ($tempnode) if node already exists
+ shrink struct udev_event
+ shrink struct udev_event
+ rule_generator: fix netif NAME= value extraction regex
+ skip SYMLINK rules for devices without a device node
+ rules: let empty strings added to buffer always return offset 0
+ fix uninitialized variable warnings
+ cache uid/gid during rule parsing
+ distinguish "match" from "assign" by (op < OP_MATCH_MAX)
+ determine at rule parse time if we need to call fnmatch()
+ special-case "?*" match to skip fnmatch()
+ libudev: monitor - replace far too expensive snprintf() with strlcpy()
+ libudev: monitor - cache result of monitor send buffer
+ fix "unused" warnings
+ remove debug printf
+ match KEY="A|B" without temporary string copy
+ match_attr() - copy attr value only when needed
+ do not init string arrays, just clear first byte
+ fix $attr{[<subsystem>/<sysname>]<attribute>} substitution
+ libudev: device - fill envp array while composing monitor buffer
+ test: add RUN+="socket: ..." to a test to run monitor code
+ libudev: device - allocate envp array only once
+ update NEWS
+ udevd: merge exec and run queue to minimize devpath string compares
+ ATTR{}== always fails if the attribute does not exist
+ rules: remove SCSI timeouts
+ rules: remove "add" match from usb device node rule
+ edd_id: add "change" event match
+ fstab_import: add "change" event match
+ write trace log to stderr
+ log rules file and line number when NAME, SYMLINK, OWNER, GROUP, MODE, RUN is applied
+ skip entire rule containing device naming keys, if no device can be named
+ fix udev_node_update_old_links() logic
+ move some info() to dbg()
+ add "devel" and "install" switches to autogen.sh
+ move debugging strings inside #ifdef DEBUG
+ firmware.sh: record missing files in /dev/.udev/firmware-missing/
+ fix list handling in enumerate and rules file sorting
+ volume_id: btrfs update
+ info() PROGRAM and IMPORT execution
+ fix $links substitution
+ fix cleanup of possible left-over symlinks
+ do not import the "uevent" file when we only read the db to get old symlinks
+ usb_id: MassStorage SubClass 6 is "scsi" not "disk"
+ unify string replacement
+ $links should be relative
+ fix indentation
+ rules: md - add mdadm 3 device naming
+ cleanup /dev/.udev/queue on startup and exit
+ udevadm: settle - exit if udevd exits
+
+Matthias Koenig (1):
+ volume_id: swap - larger PAGE_SIZE support
+
+Steven Whitehouse (1):
+ volume_id: support for GFS2 UUIDs
+
+
Summary of changes from v129 to v130
============================================