hal ChangeLog,1.276,1.277
David Zeuthen
david at freedesktop.org
Tue Aug 31 15:55:46 PDT 2004
Update of /cvs/hal/hal
In directory gabe:/tmp/cvs-serv5912
Modified Files:
ChangeLog
Log Message:
2004-09-01 David Zeuthen <david at fubar.dk>
This was a fun debugging session that led to this fix :-)
Basically when building optimized binaries (like for the Fedora
RPMS) an interesting sideeffect showed up: gobject signal handlers
are run in arbritrary order. This means that we were processing
hotplug events for sda%d before sda was added; which resulted in
the unavailability of the kids because they couldn't find their
parent. Now we look at the device store to infer when to process
the next event. Which is more correct and actually makes hal
work. This *never* once showed up when not building without
--build=i686-redhat-linux-gnu --host=i686-redhat-linux-gnu
--target=i386-redhat-linux-gnu. Oh well.
* hald/linux/osspec.c (process_coldplug_list_on_gdl_store_add):
Renamed from _callouts_done_for_device
(process_coldplug_list): Wait for device to be added to GDL instead
of relying on callouts to complete (device obj may not have been added
to GDL just because the callouts complete)
(reenable_hotplug_on_gdl_store_add): Renamed from reeanble_hotplug_proc
(reenable_hotplug_on_gdl_store_remove): New function
(hald_helper_hotplug): Rather look at the GDL for additions and
removals than looking at whether callouts complete
Index: ChangeLog
===================================================================
RCS file: /cvs/hal/hal/ChangeLog,v
retrieving revision 1.276
retrieving revision 1.277
diff -u -d -r1.276 -r1.277
--- ChangeLog 31 Aug 2004 16:53:33 -0000 1.276
+++ ChangeLog 31 Aug 2004 22:55:44 -0000 1.277
@@ -1,3 +1,32 @@
+2004-09-01 David Zeuthen <david at fubar.dk>
+
+ This was a fun debugging session that led to this fix :-)
+ Basically when building optimized binaries (like for the Fedora
+ RPMS) an interesting sideeffect showed up: gobject signal handlers
+ are run in arbritrary order. This means that we were processing
+ hotplug events for sda%d before sda was added; which resulted in
+ the unavailability of the kids because they couldn't find their
+ parent. Now we look at the device store to infer when to process
+ the next event. Which is more correct and actually makes hal
+ work. This *never* once showed up when not building without
+ --build=i686-redhat-linux-gnu --host=i686-redhat-linux-gnu
+ --target=i386-redhat-linux-gnu. Oh well.
+
+ * hald/linux/osspec.c (process_coldplug_list_on_gdl_store_add):
+ Renamed from _callouts_done_for_device
+ (process_coldplug_list): Wait for device to be added to GDL instead
+ of relying on callouts to complete (device obj may not have been added
+ to GDL just because the callouts complete)
+ (reenable_hotplug_on_gdl_store_add): Renamed from reeanble_hotplug_proc
+ (reenable_hotplug_on_gdl_store_remove): New function
+ (hald_helper_hotplug): Rather look at the GDL for additions and
+ removals than looking at whether callouts complete
+
+2004-08-31 David Zeuthen <david at fubar.dk>
+
+ * tools/linux/hal_hotplug.c: Don't wait for 'removable' file - it just
+ isn't available for non-top-level block devices (duh)
+
2004-08-31 David Zeuthen <david at fubar.dk>
* hald/linux/block_class_device.c:
More information about the hal-commit
mailing list