storage addon re-probe fix for FreeBSD from Joe Marcus Clarke <marcus@freebsd.org>
authorDoug Goldstein <cardoe@gentoo.org>
Mon, 16 Apr 2007 15:36:36 +0000 (15:36 +0000)
committerDoug Goldstein <cardoe@gentoo.org>
Mon, 16 Apr 2007 15:36:36 +0000 (15:36 +0000)
Package-Manager: portage-2.1.2.3

sys-apps/hal/ChangeLog
sys-apps/hal/Manifest
sys-apps/hal/files/0.5.9/10_freebsd_storage_reprobe_fix.patch [new file with mode: 0644]
sys-apps/hal/files/0.5.9/series

index 1a578154539e48071fdde2d71f4ee45a541f2465..3bfd4c2a07dc1b8d5de38b1960eea764d093dabd 100644 (file)
@@ -1,6 +1,11 @@
 # ChangeLog for sys-apps/hal
 # Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-apps/hal/ChangeLog,v 1.165 2007/04/13 14:12:09 cardoe Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-apps/hal/ChangeLog,v 1.166 2007/04/16 15:36:36 cardoe Exp $
+
+  16 Apr 2007; Doug Goldstein <cardoe@gentoo.org>
+  +files/0.5.9/10_freebsd_storage_reprobe_fix.patch, files/0.5.9/series:
+  storage addon re-probe fix for FreeBSD from Joe Marcus Clarke
+  <marcus@freebsd.org>
 
   13 Apr 2007; Doug Goldstein <cardoe@gentoo.org> hal-0.5.9.ebuild:
   We don't support pciutils pci.ids files gzipped
index 1c66bb124427abeb16fc8b1b293787a68f71d6d5..47bb65c81f4269d2f16ae90c139baf53b441b1e1 100644 (file)
@@ -49,6 +49,10 @@ AUX 0.5.9/09_hald_addon_keyboard_start_one.patch 1519 RMD160 161baddfab13ee32930
 MD5 a736ab94241050088914f7b0a19fde70 files/0.5.9/09_hald_addon_keyboard_start_one.patch 1519
 RMD160 161baddfab13ee3293092444fbb7315bafe395b8 files/0.5.9/09_hald_addon_keyboard_start_one.patch 1519
 SHA256 697fbf2f234bb0d8f47b4086c0636e20674e00eb38181c303c02ecad3ee9bdb8 files/0.5.9/09_hald_addon_keyboard_start_one.patch 1519
+AUX 0.5.9/10_freebsd_storage_reprobe_fix.patch 2007 RMD160 16237bf2b64ad8745304af231be93cfb21f77039 SHA1 2b04d74deff2696459cd362a09df806504892522 SHA256 a7b95e31d0a30664dd1cd4539df44fb5d00ef661d43e6035bbd7d25bf0b08af0
+MD5 df8303f32737e072d02757f79030645d files/0.5.9/10_freebsd_storage_reprobe_fix.patch 2007
+RMD160 16237bf2b64ad8745304af231be93cfb21f77039 files/0.5.9/10_freebsd_storage_reprobe_fix.patch 2007
+SHA256 a7b95e31d0a30664dd1cd4539df44fb5d00ef661d43e6035bbd7d25bf0b08af0 files/0.5.9/10_freebsd_storage_reprobe_fix.patch 2007
 AUX 0.5.9/95_gentoo_man_page.patch 18159 RMD160 cd4bf6c16e84464b11de755323ef2d0f5c1a54f9 SHA1 f9de30d705eada8e2f631e51b715b9923f732fb4 SHA256 59d81dcb273f3cdc9c7fc9f195331529642fef2c2150b3eeb3fd98ea555b1893
 MD5 f6d115e0eb501aba476f4df965bfeb6c files/0.5.9/95_gentoo_man_page.patch 18159
 RMD160 cd4bf6c16e84464b11de755323ef2d0f5c1a54f9 files/0.5.9/95_gentoo_man_page.patch 18159
@@ -57,10 +61,10 @@ AUX 0.5.9/96_plugdev_allow_send.patch 1781 RMD160 08f0cbb8960d4753d15d02c8694fae
 MD5 38976c1da85ba17ba6a46f56cd1de3bf files/0.5.9/96_plugdev_allow_send.patch 1781
 RMD160 08f0cbb8960d4753d15d02c8694fae09a6ef2a02 files/0.5.9/96_plugdev_allow_send.patch 1781
 SHA256 090d666c8df223fc0ea30f473fa3d52412ef22aff85c1eebf609a3f00dbd652a files/0.5.9/96_plugdev_allow_send.patch 1781
-AUX 0.5.9/series 360 RMD160 f7684975bbad57132ec7205875f15355dae95fc2 SHA1 b76a1299719517d5e67ed634d354b0174054d3ea SHA256 4616a47af97e26404ba1cff554dd3095450ea9e168fbdead906710b6087d71c0
-MD5 41a50a4d45d866220c9054bbbbc6d8c9 files/0.5.9/series 360
-RMD160 f7684975bbad57132ec7205875f15355dae95fc2 files/0.5.9/series 360
-SHA256 4616a47af97e26404ba1cff554dd3095450ea9e168fbdead906710b6087d71c0 files/0.5.9/series 360
+AUX 0.5.9/series 397 RMD160 87ae8b2a6bda0753e2540d9023fb7b8530bd1778 SHA1 a137d82ca164ff9c0ce2ce6819ee00bf38df0f23 SHA256 a170ed23a22f05b679f768624bda292eda4c2527c57ecae616b2959b2d2dc542
+MD5 cc273fec8ea1e803a05ce79bbf20228e files/0.5.9/series 397
+RMD160 87ae8b2a6bda0753e2540d9023fb7b8530bd1778 files/0.5.9/series 397
+SHA256 a170ed23a22f05b679f768624bda292eda4c2527c57ecae616b2959b2d2dc542 files/0.5.9/series 397
 AUX fix-scsi-fake-host-event.patch 3108 RMD160 2bda406fcb2dd92c348781a6c0958d40c79d78ea SHA1 af1d5c9a2cde091bd7abe04ed5e91a4bb815b675 SHA256 199749c188e5fb4858e4c1dac8800525377daf6a680dcd13e7096e71266ed05d
 MD5 3b6df9a24978d931781dc029c85288a9 files/fix-scsi-fake-host-event.patch 3108
 RMD160 2bda406fcb2dd92c348781a6c0958d40c79d78ea files/fix-scsi-fake-host-event.patch 3108
@@ -179,10 +183,10 @@ EBUILD hal-0.5.9.ebuild 6970 RMD160 52c551f195225a1ea999f29a7a66f7b0f8ad6386 SHA
 MD5 d6df657323c8459967b794f4909a4fb0 hal-0.5.9.ebuild 6970
 RMD160 52c551f195225a1ea999f29a7a66f7b0f8ad6386 hal-0.5.9.ebuild 6970
 SHA256 454865488e2259d0afcc4cca65418f98f307a72260acf753f3bb9c91903c1ac0 hal-0.5.9.ebuild 6970
-MISC ChangeLog 26456 RMD160 d2f8136540c81e6d26f930f5c10b2ff94b0739fb SHA1 e0385f0bc36cc2690cdbcdae7f9d27cc8a64f53a SHA256 721fce6b7c1e2cfc01a1fc41d7ee62c55ff5a0d1487bb01285871ee6d9931844
-MD5 c866ad5627bbaf85ab284f38634cd92b ChangeLog 26456
-RMD160 d2f8136540c81e6d26f930f5c10b2ff94b0739fb ChangeLog 26456
-SHA256 721fce6b7c1e2cfc01a1fc41d7ee62c55ff5a0d1487bb01285871ee6d9931844 ChangeLog 26456
+MISC ChangeLog 26667 RMD160 ee5e7a896ccc167a366ef54b8b0a1a7e0cbfd655 SHA1 119464e3c55a82a41ee0992be57dda7489084005 SHA256 253b6c5a08dc5e4fea8c39bc674d94edf2ddb3de36444bb755d6637e742b4ad0
+MD5 58035ef7df33ee50a82e378be57628d8 ChangeLog 26667
+RMD160 ee5e7a896ccc167a366ef54b8b0a1a7e0cbfd655 ChangeLog 26667
+SHA256 253b6c5a08dc5e4fea8c39bc674d94edf2ddb3de36444bb755d6637e742b4ad0 ChangeLog 26667
 MISC metadata.xml 345 RMD160 aa6e810e9546542453ebe5d6ca46804e99f447f2 SHA1 fef829210e8555807f9b69ba5afedffb8af8d02c SHA256 0c9aeabf473a6836c25a5db2ca86b880dec1efa9e52310725e08d1e0df93447d
 MD5 3317c4000387b670183d305ef9937b75 metadata.xml 345
 RMD160 aa6e810e9546542453ebe5d6ca46804e99f447f2 metadata.xml 345
@@ -199,7 +203,7 @@ SHA256 d862b002c9a5547954874b2a0cbadd614381d085e850539e6aef2dd9e9d52dfe files/di
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.3 (GNU/Linux)
 
-iD8DBQFGINugoeSe8B0zEfwRAin1AJ4iLqJZpEFGrpJ+13o1rKrZa4LsrQCfQomB
-EKTAPPM0dGwhwv5yKbvVEbo=
-=lvej
+iD8DBQFGI5fLoeSe8B0zEfwRAkrjAJ9Qgp17QGhoRDW7vANYRwpiSZDnZACdHJ7F
+fxzWUA5XgJvvCRZ/e4ma3dw=
+=IJnE
 -----END PGP SIGNATURE-----
diff --git a/sys-apps/hal/files/0.5.9/10_freebsd_storage_reprobe_fix.patch b/sys-apps/hal/files/0.5.9/10_freebsd_storage_reprobe_fix.patch
new file mode 100644 (file)
index 0000000..3199ed4
--- /dev/null
@@ -0,0 +1,61 @@
+From: Joe Marcus Clarke <marcus@FreeBSD.org>
+Date: Sat, 14 Apr 2007 21:14:15 +0000 (-0400)
+Subject: do not re-probe devices that are managed by hald-addon-storage
+X-Git-Url: http://gitweb.freedesktop.org/?p=hal.git;a=commitdiff;h=15272b99f8d373b9bcd239112231f5bef099d24f
+
+do not re-probe devices that are managed by hald-addon-storage
+
+Do not re-probe devices that are managed by hald-addon-storage since that
+will result in a double-probe and data corruption.  In particular, this
+fixes a problem with CD unmounting when ATAPICAM is enabled.
+---
+
+--- a/hald/freebsd/hf-storage.c
++++ b/hald/freebsd/hf-storage.c
+@@ -65,6 +65,7 @@ static GNode *hf_storage_geom_tree = NUL
+ static GHashTable *hf_storage_geom_hash = NULL;
+ static void hf_storage_init_geom (void);
++static gboolean hf_storage_device_has_addon (HalDevice *device);
+ static void
+ hf_storage_geom_free (gpointer data)
+@@ -587,7 +588,8 @@ hf_storage_conftxt_timeout_cb (gpointer 
+               {
+                 /* disk changed */
+                 device = hf_devtree_find_from_name(hald_get_gdl(), disk->name);
+-                if (device && hal_device_has_capability(device, "storage"))
++                if (device && hal_device_has_capability(device, "storage") &&
++                    ! hf_storage_device_has_addon(device))
+                   hf_storage_device_rescan_real(device);
+               }
+           }
+@@ -768,6 +770,28 @@ hf_storage_device_rescan (HalDevice *dev
+     return FALSE;
+ }
++static gboolean
++hf_storage_device_has_addon (HalDevice *device)
++{
++  HalDeviceStrListIter iter;
++
++  g_return_val_if_fail(device != NULL, FALSE);
++
++  for (hal_device_property_strlist_iter_init(device, "info.addons", &iter);
++       hal_device_property_strlist_iter_is_valid(&iter);
++       hal_device_property_strlist_iter_next(&iter))
++    {
++      const char *addon;
++
++      addon = hal_device_property_strlist_iter_get_value(&iter);
++
++      if (! strcmp(addon, "hald-addon-storage"))
++        return TRUE;
++    }
++
++  return FALSE;
++}
++
+ HFHandler hf_storage_handler = {
+   .init =             hf_storage_init,
+   .probe =            hf_storage_probe,
index 4193623fd732fce250a9a12f1de44a0c47e6495f..29ad87df2dd175a76ab29970f1c981f68b0f7f9b 100644 (file)
@@ -7,5 +7,6 @@
 07_malloc_h_for_stdlib_h.patch
 08_contains_not_fdi_directive.patch
 09_hald_addon_keyboard_start_one.patch
+10_freebsd_storage_reprobe_fix.patch
 95_gentoo_man_page.patch
 96_plugdev_allow_send.patch