[arch-commits] Commit in util-linux/trunk (0001-fdisk-fix-l-device.patch PKGBUILD)

Dave Reisner dreisner at archlinux.org
Mon Jul 28 13:15:26 UTC 2014


    Date: Monday, July 28, 2014 @ 15:15:25
  Author: dreisner
Revision: 218249

upgpkg: util-linux 2.25-3

- backport fix for 'fdisk -l' regression

Added:
  util-linux/trunk/0001-fdisk-fix-l-device.patch
Modified:
  util-linux/trunk/PKGBUILD

-------------------------------+
 0001-fdisk-fix-l-device.patch |   61 ++++++++++++++++++++++++++++++++++++++++
 PKGBUILD                      |   14 +++++++--
 2 files changed, 72 insertions(+), 3 deletions(-)

Added: 0001-fdisk-fix-l-device.patch
===================================================================
--- 0001-fdisk-fix-l-device.patch	                        (rev 0)
+++ 0001-fdisk-fix-l-device.patch	2014-07-28 13:15:25 UTC (rev 218249)
@@ -0,0 +1,61 @@
+From 52d92543ffb8efb56036f316a1072d8fbba62c38 Mon Sep 17 00:00:00 2001
+From: Karel Zak <kzak at redhat.com>
+Date: Mon, 28 Jul 2014 11:57:10 +0200
+Subject: [PATCH] fdisk: fix -l [<device>]
+
+ * don't use err(), but warn(), so don't stop after the first error
+
+ * display all errors when "-l <device> ..." specified
+
+ * display only EACCES errors when list whole disks from
+   /proc/partitions ("fdisk -l" )
+
+Reported-by: Boian Bonev <bbonev at ipacct.com>
+Addresses: https://github.com/karelzak/util-linux/pull/106
+Signed-off-by: Karel Zak <kzak at redhat.com>
+---
+ disk-utils/fdisk.c | 13 ++++++++-----
+ 1 file changed, 8 insertions(+), 5 deletions(-)
+
+diff --git a/disk-utils/fdisk.c b/disk-utils/fdisk.c
+index 8d57dbb..46e632a 100644
+--- a/disk-utils/fdisk.c
++++ b/disk-utils/fdisk.c
+@@ -670,10 +670,13 @@ static int is_ide_cdrom_or_tape(char *device)
+ 	return ret;
+ }
+ 
+-static void print_device_pt(struct fdisk_context *cxt, char *device)
++static void print_device_pt(struct fdisk_context *cxt, char *device, int warnme)
+ {
+-	if (fdisk_context_assign_device(cxt, device, 1) != 0)	/* read-only */
+-		err(EXIT_FAILURE, _("cannot open %s"), device);
++	if (fdisk_context_assign_device(cxt, device, 1) != 0) {	/* read-only */
++		if (warnme || errno == EACCES)
++			warn(_("cannot open %s"), device);
++		return;
++	}
+ 
+ 	list_disk_geometry(cxt);
+ 
+@@ -717,7 +720,7 @@ static void print_all_devices_pt(struct fdisk_context *cxt)
+ 		if (!cn)
+ 			continue;
+ 		if (!is_ide_cdrom_or_tape(cn))
+-			print_device_pt(cxt, cn);
++			print_device_pt(cxt, cn, 0);
+ 		free(cn);
+ 	}
+ 	fclose(f);
+@@ -912,7 +915,7 @@ int main(int argc, char **argv)
+ 		if (argc > optind) {
+ 			int k;
+ 			for (k = optind; k < argc; k++)
+-				print_device_pt(cxt, argv[k]);
++				print_device_pt(cxt, argv[k], 1);
+ 		} else
+ 			print_all_devices_pt(cxt);
+ 		break;
+-- 
+2.0.3
+

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2014-07-27 21:59:54 UTC (rev 218248)
+++ PKGBUILD	2014-07-28 13:15:25 UTC (rev 218249)
@@ -6,7 +6,7 @@
 pkgbase=util-linux
 pkgname=(util-linux libutil-linux)
 pkgver=2.25
-pkgrel=2
+pkgrel=3
 pkgdesc="Miscellaneous system utilities for Linux"
 url="http://www.kernel.org/pub/linux/utils/util-linux/"
 arch=('i686' 'x86_64')
@@ -17,13 +17,21 @@
         uuidd.tmpfiles
         pam-login
         pam-common
-        pam-su)
+        pam-su
+        0001-fdisk-fix-l-device.patch)
 md5sums=('4c78fdef4cb882caafad61e33cafbc14'
          'a39554bfd65cccfd8254bb46922f4a67'
          '4368b3f98abd8a32662e094c54e7f9b1'
          'a31374fef2cba0ca34dfc7078e2969e4'
-         'fa85e5cce5d723275b14365ba71a8aad')
+         'fa85e5cce5d723275b14365ba71a8aad'
+         '93cf977a7abc6f30152295e2aef453fa')
 
+prepare() {
+  cd "$pkgname-$pkgver"
+
+  patch -Np1 <"$srcdir"/0001-fdisk-fix-l-device.patch
+}
+
 build() {
   cd "$pkgname-$pkgver"
 




More information about the arch-commits mailing list