[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Please unblock dmraid 1.0.0.rc14-7



Hi,

Please unblock dmraid 1.0.0.rc14-7, this upload fixes a grave bug #512771.

(Originally reported against dkms on ubuntu, LP #320200)
dmraid must not call udevadm trigger --action=add in postinst.
This will have utterly dire consequences for the installed machine.

Major bugs will be apparent corruption of mounted filesystems (e.g.
"/usr: data error") until a reboot.
And critical bugs include the entire /dev changing to root:root/660 on
upgrade.


Changes:
 dmraid (1.0.0.rc14-7) unstable; urgency=medium
 .
   * [506dd59] Fixed command-with-path-in-maintainer-script lintian
     warning (update-initramfs in postinst/postrm)
   * [9762976] debian/control: Made the long description for the udeb
     shorter
   * [cbde138] debian/control: Added DM-Upload-Allowed and VCS control
     fields
   * [543a90a] debian/dmraid.postinst: call udevadm trigger with --action=change
     (Closes: #512771), (LP: #320482)
   * [fcc082d] debian/patches/04_generate-uuids.dpatch: Do not call
     dm_task_run() only for DM_DEVICE_CREATE, but also for
     DM_DEVICE_REMOVE. (LP: #306275)
   * [7f379ae] debian/control: Remove priority and section fields in the
     binary package


Cheers,
Giuseppe.
diff -u dmraid-1.0.0.rc14/debian/dmraid.postrm dmraid-1.0.0.rc14/debian/dmraid.postrm
--- dmraid-1.0.0.rc14/debian/dmraid.postrm
+++ dmraid-1.0.0.rc14/debian/dmraid.postrm
@@ -4,8 +4,8 @@
 
 case "$1" in
     remove|purge)
-	if [ -x /usr/sbin/update-initramfs ]; then
-      		/usr/sbin/update-initramfs -u
+	if command -v update-initramfs >/dev/null 2>&1; then
+		update-initramfs -u
     	fi
 
      ;;
diff -u dmraid-1.0.0.rc14/debian/dmraid.postinst dmraid-1.0.0.rc14/debian/dmraid.postinst
--- dmraid-1.0.0.rc14/debian/dmraid.postinst
+++ dmraid-1.0.0.rc14/debian/dmraid.postinst
@@ -5,12 +5,12 @@
 
 case "$1" in
   configure)
-    if [ -x /usr/sbin/update-initramfs ]; then
-      /usr/sbin/update-initramfs -u
+    if command -v update-initramfs >/dev/null 2>&1; then
+      update-initramfs -u
     fi
 
     # Activate existing arrays now.
-    udevadm trigger --subsystem-match=block --action=add
+    udevadm trigger --subsystem-match=block --action=change
 
     if [ -f /etc/init.d/dmraid ]; then
   	update-rc.d -f dmraid remove
diff -u dmraid-1.0.0.rc14/debian/changelog dmraid-1.0.0.rc14/debian/changelog
--- dmraid-1.0.0.rc14/debian/changelog
+++ dmraid-1.0.0.rc14/debian/changelog
@@ -1,3 +1,21 @@
+dmraid (1.0.0.rc14-7) unstable; urgency=medium
+
+  * [506dd59] Fixed command-with-path-in-maintainer-script lintian
+    warning (update-initramfs in postinst/postrm)
+  * [9762976] debian/control: Made the long description for the udeb
+    shorter
+  * [cbde138] debian/control: Added DM-Upload-Allowed and VCS control
+    fields
+  * [543a90a] debian/dmraid.postinst: call udevadm trigger with --action=change
+    (Closes: #512771), (LP: #320482)
+  * [fcc082d] debian/patches/04_generate-uuids.dpatch: Do not call
+    dm_task_run() only for DM_DEVICE_CREATE, but also for
+    DM_DEVICE_REMOVE. (LP: #306275)
+  * [7f379ae] debian/control: Remove priority and section fields in the
+    binary package
+
+ -- Giuseppe Iuculano <giuseppe@iuculano.it>  Fri, 23 Jan 2009 21:15:53 +0100
+
 dmraid (1.0.0.rc14-6) unstable; urgency=low
 
   * debian/rules: Added execution rights to
diff -u dmraid-1.0.0.rc14/debian/control dmraid-1.0.0.rc14/debian/control
--- dmraid-1.0.0.rc14/debian/control
+++ dmraid-1.0.0.rc14/debian/control
@@ -4,11 +4,12 @@
 Maintainer: Giuseppe Iuculano <giuseppe@iuculano.it>
 Standards-Version: 3.8.0
 Build-Depends: debhelper (>= 5), libdevmapper-dev, libklibc-dev, libselinux1-dev, dpatch, autotools-dev
+Vcs-git: git://git.debian.org/git/users/derevko-guest/dmraid.git
+Vcs-Browser: http://git.debian.org/?p=users/derevko-guest/dmraid.git;a=summary
 Homepage: http://people.redhat.com/~heinzm/sw/dmraid/
+DM-Upload-Allowed: yes
 
 Package: dmraid
-Section: admin
-Priority: optional
 Architecture: any
 Depends: ${shlibs:Depends}, udev, dmsetup
 Description: Device-Mapper Software RAID support tool
@@ -37,21 +38,6 @@
 Depends: ${shlibs:Depends}, dmsetup-udeb
-Description: Device-Mapper Software RAID support tool
+Description: Device-Mapper Software RAID support tool (udeb)
  dmraid discovers, activates, deactivates and displays properties
  of software RAID sets (eg, ATARAID) and contained DOS partitions.
  .
- dmraid uses the Linux device-mapper to create devices with respective
- mappings for the ATARAID sets discovered.
- .
- The following formats are supported: 
-  Highpoint HPT37X/HPT45X
-  Intel Software RAID
-  LSI Logic MegaRAID 
-  NVidia NForce RAID (nvraid)
-  Promise FastTrack 
-  Silicon Image(tm) Medley(tm)
-  VIA Software RAID 
- .
- Please read the documentation in /usr/share/doc/dmraid BEFORE attempting
- any use of this software. Improper use can cause data loss!
- .
  This is the minimal package (udeb) used by debian-installer
diff -u dmraid-1.0.0.rc14/debian/patches/04_generate-uuids.dpatch dmraid-1.0.0.rc14/debian/patches/04_generate-uuids.dpatch
--- dmraid-1.0.0.rc14/debian/patches/04_generate-uuids.dpatch
+++ dmraid-1.0.0.rc14/debian/patches/04_generate-uuids.dpatch
@@ -5,9 +5,9 @@
 ## DP: Generate UUIDs with DMRAID prefix.
 
 @DPATCH@
-diff -urNad dmraid-1.0.0.rc14-1ubuntu1~/1.0.0.rc14/lib/activate/devmapper.c dmraid-1.0.0.rc14-1ubuntu1/1.0.0.rc14/lib/activate/devmapper.c
---- dmraid-1.0.0.rc14-1ubuntu1~/1.0.0.rc14/lib/activate/devmapper.c	2006-09-15 23:52:11.000000000 +1000
-+++ dmraid-1.0.0.rc14-1ubuntu1/1.0.0.rc14/lib/activate/devmapper.c	2008-07-08 14:10:06.000000000 +1000
+diff -urNad dmraid.git~/1.0.0.rc14/lib/activate/devmapper.c dmraid.git/1.0.0.rc14/lib/activate/devmapper.c
+--- dmraid.git~/1.0.0.rc14/lib/activate/devmapper.c	2009-01-23 16:48:44.000000000 +0100
++++ dmraid.git/1.0.0.rc14/lib/activate/devmapper.c	2009-01-23 18:08:44.000000000 +0100
 @@ -21,6 +21,8 @@
  #include "internal.h"
  #include "devmapper.h"
@@ -17,7 +17,7 @@
  /* Make up a dm path. */
  char *mkdm_path(struct lib_context *lc, const char *name)
  {
-@@ -147,24 +149,48 @@
+@@ -147,24 +149,49 @@
  	return handle_table(lc, NULL, table, get_target_list());
  }
  
@@ -56,11 +56,12 @@
  
 -	if (ret)
 -		ret = dm_task_run(dmt);
-+	if (ret && 
-+	    DM_DEVICE_CREATE == type)
-+		ret = dmraid_uuid(lc, rs, uuid, DM_UUID_LEN) &&
-+		      dm_task_set_uuid(dmt, uuid) &&
-+		      dm_task_run(dmt);
++	if (ret) { 
++	    if (DM_DEVICE_CREATE == type &&
++		dmraid_uuid(lc, rs, uuid, DM_UUID_LEN))
++		    	dm_task_set_uuid(dmt, uuid);
++	    ret = dm_task_run(dmt);
++	}
  
  	_exit_dm(dmt);
  	return ret;

Attachment: signature.asc
Description: OpenPGP digital signature


Reply to: