summaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
authorogasawara@osdl.org <ogasawara@osdl.org>2004-06-26 01:18:31 -0700
committerGreg KH <gregkh@suse.de>2005-04-26 21:36:21 -0700
commit9a52390cfe0882df3a24b75cc9d8b36878a3982d (patch)
treeee1825030f2813c00c82e856eb7486a3b7b605b7 /Makefile
parentb99f344fde90ddc131ea6e2ec8520e018e1274e2 (diff)
[PATCH] udevstart performance increase
I noticed a comment in namedev.c which stated "Figure out where the device symlink is at. For char devices this will always be in the class_dev->path. But for block devices, it's different. The main block device will have the device symlink in it's path, but all partitions have the symlink in its parent directory. But we need to watch out for block devices that do not have parents, yet look like a partition (fd0, loop0, etc.). They all do not have a device symlink yet. We do a sit and spin on waiting for them right now, we should possibly have a whitelist for these devices here..." I went ahead and created a whitelist for the block devices that look like partitions (mainly by using devices.txt) and tested for any performance increase that we would see. The whitelist only impacts udevstart time depending on the state of UDEV_NO_SLEEP. Since the list was short, I just did a sequential search and ordered the list in such a way that those block devices which have more /dev entires (ex. loop0, loop1, loop2, etc) appear sooner in the list and will thus be found quicker. I've enclosed the patch and some of the performance results I saw below. Basically, as the number of block devices without device symlinks increased, the use of the whitelist improved udevstart performance compared to just sitting and spinning. I just thought it was interesting and thought I'd share. If you feel the patch is beneficial please consider for merging. Also, if you'd be interested in expanding the whitelist for other devices which are missing device symlinks and seeing if there are added performance increases let me know and I'll do what I can. Thanks, Leann Note: ex. loop represents all the loop devices (i.e. loop0, loop1, loop2, etc) block devices present with whitelist time
Diffstat (limited to 'Makefile')
0 files changed, 0 insertions, 0 deletions