aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Solid state drives should use noop IO elevatornonrotRichard Yao2015-08-291-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It is often suggested that users set noop on SSDs and it turns out that udev can do this for users. Setting noop disables the IO priorization and IO reordering logic inside the kernel, but leaves front/back merging in place. This reduction in overhead should increase the number of requests sent to solid state media to the maximum possible,which is said to improve performance on SSDs. Unfortunately, few benchmarks try real world work loads with a clear cache to measure the actual difference. The benchmarks conducted by Daniel Nashed cleared the cache. They favor noop, although the workload seems somewhat unrealistic: http://blog.nashcom.de/nashcomblog.nsf/dx/linux-io-performance-tweek.htm The BFQ developers' benchmarks on SSDs appear to account for both. They show noop as being far better than CFQ and second only to BFQ, which is out of tree: https://lwn.net/Articles/600366/ In addition, I have experienced lockup-like effects on ext4 on an OCZ Vertex 2 SSD with the discard mount option enabled when recursively unlinking a subdirectory path that contains millions of files. The system was useless for hours. Setting noop allowed the unlink to finish in minutes. This is because the reordering from CFQ interleaved the TRIM command with write IOs, effectively putting barriers between them because because TRIM is a non-queued command prior to SATA 3.1. A good default should perform well in general and have the property that poor performance in the worst case scenarios is minimized. The previous examples contradict CFQ's ability to achieve that on solid state media. I believe that we should implement a udev rule to set noop on solid state media by default. It should be said that Milan Broz wrote it first, although there is only one way to write this rule in a manner consistent with the codebase: http://permalink.gmane.org/gmane.linux.kernel.device-mapper.dm-crypt/6045 It should be said that this will be a regression for those that rely on the "Block IO Controller" cgroup because it is only supported by CFQ when CONFIG_CFQ_GROUP_IOSCHED=y. My experience as a ZoL developer is that very few users rely on this behavior and consequently, I believe that the benefit from enabling this far outweighs the harm to the few that need it. Those that do need it should be able to disable this rule themselves. Container management software that expects the Block IO Controller to be supported should be modified to enable CFQ explicitly if it does not already do that. This has been tested against both a SATA mechanical drive and a SATA solid state drive. It changes the elevator to noop on the solid state drive, but does not touch it on the mechanical drive. Signed-off-by: Richard Yao <ryao@gentoo.org>
* udevd: don't unref worker objects on SIGSTOP/SIGCONTTom Gundersen2015-07-201-2/+2
| | | | | | We should not be receiving these anyway, but let's be correct. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* udevd: warn if we receive SIGCHLD from untracked workerTom Gundersen2015-07-201-0/+6
| | | | Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* libudev: fix commit 3df6350Anthony G. Basile2015-07-201-2/+1
| | | | Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* libudev: monitor - set nl_pid when reusing fd in ↵Tom Gundersen2015-07-201-14/+22
| | | | | | | | | udev_monitor_new_from_netlink_fd This allows a fd to be created and configured as part of one monitor, to be passed in to create a second monitor without having to redo any of the configuration. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* sd-device: get_subsystem - don't complain if a device does not have a subsystemTom Gundersen2015-07-201-1/+2
| | | | Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* skip: udevd: manager - move a few global variables into the Manager objectAnthony G. Basile2015-07-201-0/+6
| | | | Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* src/gudev: remove Gobject libudev support.Anthony G. Basile2015-07-2022-3015/+0
| | | | Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* docs: remove gtk-docs.Anthony G. Basile2015-07-2017-952/+3
| | | | Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* rules: import 20-net-ifname.hwdb from upstream.Anthony G. Basile2015-07-202-0/+6
| | | | Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* hwdb: Update database of Bluetooth company identifiersMarcel Holtmann2015-07-201-0/+66
| | | | Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* hwdb: updateKay Sievers2015-07-203-205/+613
| | | | Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* hwdb: move a couple of entries to expected sort orderPeter Hutterer2015-07-201-12/+12
| | | | Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* hwdb: add Logitech MX RevolutionPeter Hutterer2015-07-201-0/+4
| | | | Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* hwdb: update databases from upstreamLennart Poettering2015-07-203-382/+868
| | | | Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* hwdb: Update database of Bluetooth company identifiersMarcel Holtmann2015-07-201-0/+39
| | | | Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* hwdb: add support for Alienware graphics amplifierMario Limonciello2015-07-201-0/+6
| | | | | | | | | | | | Unplugging and plugging in the cable will create various scancodes on the keyboard controller. Userspace within X should be able to interact with these to show interesting messages. Assign them to generic prog1/prog2. (David: add comment to hwdb explaining that these keycodes are reserved) Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* keymap: Add Samsung NP350V and NP670Zdslul2015-07-201-0/+2
| | | | | | | | typo keymap: Add Samsung NP350V and NP670Z Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* hwdb: update Logitech's unifying receiver devicesPeter Hutterer2015-07-201-0/+7
| | | | | | | | Since 3.19, the devices have the proper vid/pid and the model number in the name. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* hwdb: add Logitech TrackMan Marble Wheel USBPeter Hutterer2015-07-201-0/+2
| | | | | | | DPI is guesswork, no specs found on the web and calculating DPIs on a trackball is tedious. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* hwdb: add Apple MagicMouse entryPeter Hutterer2015-07-201-0/+10
|
* hwdb: updateKay Sievers2015-07-202-84/+285
| | | | Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* hwdb: Update database of Bluetooth company identifiersMarcel Holtmann2015-07-201-1/+160
| | | | Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* rules: block - add dasd to whitelistKay Sievers2015-07-201-1/+1
| | | | Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* Process cciss devicesCédric Delmas2015-07-201-1/+1
| | | | | | Do not skip the persistent storage rules for cciss devices Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* It's moved to the iio-sensor-proxy D-Bus service.Bastien Nocera2015-07-207-335/+0
| | | | Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* Revert "hwdb: add a touchpad hwdb"Peter Hutterer2015-07-204-57/+1
| | | | | | | | | | | | | | The main purpose of this hwdb was to tag touchpads that have the physical trackstick buttons wired to the touchpad (Lenovo Carbon X1 3rd, Lenovo *50 series). This hwdb is not required on kernels 4.0 and above, the kernel now re-routes button presses through the trackstick's device node. Userspace does not need to do anything. See kernel commit cdd9dc195916ef5644cfac079094c3c1d1616e4c. This reverts commit 001a247324b44c0e0b8fdba41a6fc66e7465b8b6. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* rules: remove all power management from udevKay Sievers2015-07-202-37/+0
| | | | | | | | | | | | | | | | | | | It is not udev's task to apply any of these setting that way, or from udev rules files. Things need to be sortet out in the kernel, or explicit whitelist can possibly be added to the hardware database. Until that is sorted out, and general agreement, udev is not willing to maintain any such lists or power management settings in general. "Thanks for digging this out! I thought my Kinesis keyboard got broken and ordered a new one, only to find out that the new one doesn't work as well. I'm not sure whether we should start collecting a blacklist of keyboards which don't work with USB autosuspend, or rather a whitelist? Or revert this wholesale?" https://github.com/systemd/systemd/issues/340 Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* rules: re-add cciss rulesAlex Crawford2015-07-201-2/+3
| | | | | | | The original commit (1aff206) doesn't explain why these were removed. This adds them back since they are in fact needed. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* rules: whitelist xvd* devicesAlex Crawford2015-07-202-2/+2
| | | | | | Xen disks need to be whitelisted as well. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* Add /dev/xvd* to 60-persistent-storage whitelist Without this, systemd-udevd ↵Ed Swierk2015-07-201-1/+1
| | | | | | does not create persistent storage symlinks for xen block devices. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* udev: Bring back persistant storage symlinks for bcacheDavid Mohr2015-07-201-1/+1
| | | | | | https://bugs.debian.org/787367 Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* rules: restore block watch after CHANGE eventsTom Gundersen2015-07-201-1/+1
| | | | | | | When processing an event, the watch is disabled, make sure it is restorted after a CHANGE event has been processed. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* rules: fix typo in block watch ruleTom Gundersen2015-07-201-1/+1
| | | | | | | The intention was to turn this rule from using a blacklist to a whitelist, but there was a stray '!'. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* configure.ac: bump 3.1.2 = upstream 220v3.1.2Anthony G. Basile2015-06-191-1/+1
| | | | Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* Rename mkdir_p -> udev_mkdir_p to avoid symbol collisions.Anthony G. Basile2015-06-184-4/+4
| | | | | | | | | | While usptream doesn't support a static libudev.a, we will try to do so. However, mkdir_p() is used in lvm2 and util-linux, so to avoid the collision, we rename it to udev_mkdir_p(). See: https://bugs.gentoo.org/show_bug.cgi?id=520450 Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* udevd: fix REMOVE handlingChris Clayton2015-06-183-5/+6
| | | | | | | | | | The original upstream commit is at http://cgit.freedesktop.org/systemd/systemd/commit/?id=107f2e2526d476c6cc9b81a690391c111027d641 This was reworked by Chris Clayton for eudev. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* Revert "udev: don't close std{in,out,err}"Anthony G. Basile2015-06-181-0/+12
| | | | | | | | | | | | | | This reverts commit b2399d9b7222abe7db8ab4bc16e0efe3ccae4c42. This solves issue #108. While upstream also reverted this commit, they did so using functions in terminal-util.c. We could import that file and those functions but for such a small commit, its not worth it. We may do so at some future time if there are further gains. See: https://github.com/systemd/systemd/commit/40e749b59ba49fb97c1f45859debe2a82bc9c9ef Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* configure.ac: bump 3.1.1 = upstream 220v3.1.1Anthony G. Basile2015-06-051-1/+1
| | | | Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* 80-net-name-slot.rules: restored for issue #117.Anthony G. Basile2015-06-022-1/+16
| | | | Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* configure.ac: add --enable-hwdb option. Address issue #111.v3.1Anthony G. Basile2015-05-302-1/+11
| | | | Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* configure.ac: slightly better organize xsltproc stuffAnthony G. Basile2015-05-301-1/+1
| | | | Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* configure.ac: fix --enable-manpages. Fixes issue #109.Anthony G. Basile2015-05-301-38/+2
| | | | Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* Merge pull request #116 from ahills/masterblueness2015-05-301-1/+1
|\ | | | | Update project URL in README
| * Update project URL in READMEAndrew Hills2015-05-241-1/+1
| |
* | man: updateAnthony G. Basile2015-05-304-14/+68
| | | | | | | | Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* | configure.ac: bump udev to 220 and eudev to 3.1Anthony G. Basile2015-05-302-3/+3
| | | | | | | | Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* | random-util.c: remove <sys/auxv.h> missing in uClibcAnthony G. Basile2015-05-291-1/+0
| | | | | | | | Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* | src/shared/missing.h: O_PATH and AT_EMPTY_PATH missing in uClibc's <fcntl.h>Anthony G. Basile2015-05-291-0/+8
| | | | | | | | Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* | src/shared/util.h: update qsort_safe() for muslAnthony G. Basile2015-05-271-4/+5
| | | | | | | | Signed-off-by: Anthony G. Basile <blueness@gentoo.org>