:: Re: [DNG] vdev status update: perfo…
Top Page
Delete this message
Reply to this message
Author: shraptor
Date:  
To: dng
Subject: Re: [DNG] vdev status update: performance, bugfixes, and udev events
On 2015-07-07 17:45, Jude Nelson wrote:
> Hey everyone,
>
> I have the latest news for vdev:
>
> * [EXPERIMENTAL] Vdevd now has actions and helpers that will cause it
> to generate and propagate device events to libudev-compat clients. 
> Libudev-compat clients should receive hotplug events as they would
> have with libudev, and they should be able to enumerate devices. 
> This means that it should be possible now to run X11 with vdevd and
> libudev-compat, without needing an xorg.conf.  To do so, you'll need
> to symlink vdev's /dev/metadata/udev to /run/udev.


CONFIRMED WORKING - a great milestone Jude, F***ing good work!

Both keyboard and mouse working without Xorg.conf :-)

When inserting flash memory sticks they get autodetected and device
nodes created :-)

Question This is working without a value for
/proc/sys/kernel/hotplug so it is not used and
only for udev???


>
> * Hardware database access performance has been significantly
> improved, and made more accurate (i.e. it should now match all
> prefixes against the device modalias, not just the longest one).  By
> "significant", I mean by an order of magnitude.
>
> * As an optimization, vdevd can now run specially-crafted helper
> scripts as "daemonlets."  Instead of fork()/exec()'ing a shell for
> each action, vdevd will instead fork() an action's command once and
> feed it a sequence of device requests, encoded as a list of
> environment variables.  When running as a daemonlet, the command will
> be expected to run a loop that will parse the request from vdevd, call
> the command's main body of code, and report back the "exit" status. 
> The heavyweight scripts (i.e. the ones that benefit from this) have
> all been turned into daemonlets in this round of commits.  This leads
> to around 25% performance improvement (on average) for each command.
>
> * vdevd now benchmarks its actions, and writes performance information
> to its logfile at the end of coldplug processing.  Just to give a
> reference frame:  vdevd currently takes about 9 seconds to
> cold-process all of my laptop's hardware (i.e. it's slower than udev,
> but not that much slower).
>
> * libvdev is no longer a build target.  Its code will instead be
> statically linked to vdevd and vdevfs. This is to make installation
> and deployment easier.  There's no real loss to doing so--the library
> isn't that big in the first place, and the only programs that will
> ever use it are vdevd and vdevfs (note that libvdev is not at all
> related to libudev).
>
> * Bugfixes:
> -- the pre-seed script that runs before coldplug device processing can
> now create device nodes, and signal to vdevd to run the associated
> helper scripts anyway.
> -- the pre-seed script will select the first free loop device (with
> losetup -f) for the hardware database.
> -- [NEEDS CONFIRMATION] the ifname.sh script should select the correct
> config file now.  I'm still chasing down a "Device or resource busy"
> bug in renaming interface names, so please keep your eye out for it.
> -- [NEEDS CONFIRMATION] the disk.sh helper should now generate
> /dev/disk for USB disks.
>
> Thanks to everyone who helped me test vdevd so far!
> -Jude
> _______________________________________________
> Dng mailing list
> Dng@???
> https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng