On Tue, 2006-05-16 at 08:52 +0600, Alexander E. Patrakov wrote: > Matt Zimmerman wrote: > > You don't need to wait for a particular event to be finished processing; > > instead you should wait for the resource you actually need to become > > available, e.g. a device node. > > > > It would be useful to add a simple utility for this to debianutils or > > similar so that it doesn't need to be reimplemented in so many places. > > Why not use "udevsettle" that comes with new udev just for this purpose?
Probably because: * you'd have to depend on udev (>= 0.090-1), which: - is not Essential: yes, unlike debianutils - means your code will no longer work on 2.4 kernels, or non-Linux ports - means that if udev ever goes away (we hope) your package will FTBFS - means your code will no longer be backportable - means that your package will have a dependency on a package that breaks frequently[0] - means that if any version of udev stops working with your package, you will have to conflict with it * "man 8 udevsettle" doesn't tell you: - that the default timeout is *three minutes*, which is a totally unreasonable default for obvious reasons - what the return codes are in case of success, failure, or timeout * whether the event queue has settled tells you nothing about whether a resource is available Need I say more? [0] No other package, to my knowledge, has the same combination of being essential for booting the system, huge numbers of high severity bugs, gratuitous incompatibility with older kernels, and frequent bugs on non-i386 architectures.
signature.asc
Description: This is a digitally signed message part