hal: Branch 'master'

David Zeuthen david at kemper.freedesktop.org
Sun Oct 8 11:32:31 PDT 2006


 doc/TODO |   35 ++++++++++++++++++++++++++++++-----
 1 files changed, 30 insertions(+), 5 deletions(-)

New commits:
diff-tree 0fe19dec4668a0d8288941d56a351d7dc1c895b7 (from 51b841cd59a73fc093535ddd9e512d3036ebbbc4)
Author: David Zeuthen <davidz at redhat.com>
Date:   Sun Oct 8 14:32:27 2006 -0400

    add some thoughts about optimization work needed

diff --git a/doc/TODO b/doc/TODO
index 94be6c4..921afab 100644
--- a/doc/TODO
+++ b/doc/TODO
@@ -99,12 +99,37 @@ Other items
    require reworking the 'fakevolume' code as we'd be adding more
    than one fakevolume
 
-Items that might be interesting or maybe not:
----------------------------------------------
+Optimization
+------------
 
- - Port hal daemon core to use dbus-glib bindings? I'm not convinced this
-   will buy us much, the core code is already done, debugged and working
-   plus dbus-glib bindings only support one interface per proxy...
+ - Don't load, parse all fdi files 4 times for every device object
+   added. It's wasteful to parse the same file over and over agin
+   - load, parse fdi file into "rule object", see
+     http://lists.freedesktop.org/archives/hal/2006-July/005672.html
+   - load all rule objects at startup into cache
+   - evict all cache items after startup
+   - expire cache items after timeout / LRU scheme
+
+ - Don't load pci.ids, usb.ids into memory (pci.ids 426333 bytes, usb.ids
+   is 153540 bytes) at startup (even without parsing it); it costs
+   580K right now. It's wasteful to parse the same file over and over again.
+   - load, parse file into efficient lookup tree
+   - free tree when no longer used?
+
+ - Device Store lookup cleanups
+
+ - Device Object property cleanups
+
+ - Port hal daemon core to use dbus glib bindings
+   - One proxy per hal device object
+   - hal device object is an GObject
+   - wants to export multiple D-Bus interfaces for a single GObject
+   - for some interfaces... need/want to handle all messages on myself
+     (for forwarding to addons)
+   - ie. need to partipate in Introspection() on "DBusGProxy" stuff
+
+ - Linux: Optionally drop sysfs coldplug code
+   - for starting up before udev and piggy tailing on udev's coldplug code
 
 External projects:
 ------------------


More information about the hal-commit mailing list