[arch-commits] Commit in util-linux/trunk (4 files)

Dave Reisner dreisner at nymeria.archlinux.org
Thu Apr 24 13:45:21 UTC 2014


    Date: Thursday, April 24, 2014 @ 15:45:21
  Author: dreisner
Revision: 211729

upgpkg: util-linux 2.24.2-1

Modified:
  util-linux/trunk/PKGBUILD
Deleted:
  util-linux/trunk/0001-libmount-FS-id-and-parent-ID-could-be-zero.patch
  util-linux/trunk/0001-switch_root-verify-initramfs-by-f_type-not-devno.patch
  util-linux/trunk/move_is_mountinfo.patch

-------------------------------------------------------------+
 0001-libmount-FS-id-and-parent-ID-could-be-zero.patch       |   98 ----------
 0001-switch_root-verify-initramfs-by-f_type-not-devno.patch |   59 ------
 PKGBUILD                                                    |   24 --
 move_is_mountinfo.patch                                     |   46 ----
 4 files changed, 5 insertions(+), 222 deletions(-)

Deleted: 0001-libmount-FS-id-and-parent-ID-could-be-zero.patch
===================================================================
--- 0001-libmount-FS-id-and-parent-ID-could-be-zero.patch	2014-04-24 13:43:09 UTC (rev 211728)
+++ 0001-libmount-FS-id-and-parent-ID-could-be-zero.patch	2014-04-24 13:45:21 UTC (rev 211729)
@@ -1,98 +0,0 @@
-From 6c373810f5b1d32824371e9dff6ee5a006388f98 Mon Sep 17 00:00:00 2001
-From: Karel Zak <kzak at redhat.com>
-Date: Thu, 20 Feb 2014 16:59:11 +0100
-Subject: [PATCH] libmount: FS id and parent ID could be zero
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-It seems that linux 3.14 is able to produce things like:
-
-  19 0 8:3 / / rw,relatime - ext4 /dev/sda3 rw,data=ordered
-     ^
-
-Reported-by: Mantas Mikulėnas <grawity at gmail.com>
-Signed-off-by: Karel Zak <kzak at redhat.com>
----
- libmount/src/tab.c   | 12 ++++--------
- misc-utils/findmnt.c |  5 +++--
- 2 files changed, 7 insertions(+), 10 deletions(-)
-
-diff --git a/libmount/src/tab.c b/libmount/src/tab.c
-index 4c2f8a4..332312b 100644
---- a/libmount/src/tab.c
-+++ b/libmount/src/tab.c
-@@ -505,7 +505,7 @@ int mnt_table_get_root_fs(struct libmnt_table *tb, struct libmnt_fs **root)
- 	assert(tb);
- 	assert(root);
- 
--	if (!tb || !root)
-+	if (!tb || !root || !is_mountinfo(tb))
- 		return -EINVAL;
- 
- 	DBG(TAB, mnt_debug_h(tb, "lookup root fs"));
-@@ -515,8 +515,6 @@ int mnt_table_get_root_fs(struct libmnt_table *tb, struct libmnt_fs **root)
- 	mnt_reset_iter(&itr, MNT_ITER_FORWARD);
- 	while(mnt_table_next_fs(tb, &itr, &fs) == 0) {
- 		int id = mnt_fs_get_parent_id(fs);
--		if (!id)
--			break;		/* @tab is not a mountinfo file? */
- 
- 		if (!*root || id < root_id) {
- 			*root = fs;
-@@ -524,7 +522,7 @@ int mnt_table_get_root_fs(struct libmnt_table *tb, struct libmnt_fs **root)
- 		}
- 	}
- 
--	return root_id ? 0 : -EINVAL;
-+	return *root ? 0 : -EINVAL;
- }
- 
- /**
-@@ -545,15 +543,13 @@ int mnt_table_next_child_fs(struct libmnt_table *tb, struct libmnt_iter *itr,
- 	struct libmnt_fs *fs;
- 	int parent_id, lastchld_id = 0, chld_id = 0;
- 
--	if (!tb || !itr || !parent)
-+	if (!tb || !itr || !parent || !is_mountinfo(tb))
- 		return -EINVAL;
- 
- 	DBG(TAB, mnt_debug_h(tb, "lookup next child of '%s'",
- 				mnt_fs_get_target(parent)));
- 
- 	parent_id = mnt_fs_get_id(parent);
--	if (!parent_id)
--		return -EINVAL;
- 
- 	/* get ID of the previously returned child */
- 	if (itr->head && itr->p != itr->head) {
-@@ -584,7 +580,7 @@ int mnt_table_next_child_fs(struct libmnt_table *tb, struct libmnt_iter *itr,
- 		}
- 	}
- 
--	if (!chld_id)
-+	if (!*chld)
- 		return 1;	/* end of iterator */
- 
- 	/* set the iterator to the @chld for the next call */
-diff --git a/misc-utils/findmnt.c b/misc-utils/findmnt.c
-index fb21174..988cd73 100644
---- a/misc-utils/findmnt.c
-+++ b/misc-utils/findmnt.c
-@@ -822,8 +822,9 @@ static int tab_is_tree(struct libmnt_table *tb)
- 	if (!itr)
- 		return 0;
- 
--	if (mnt_table_next_fs(tb, itr, &fs) == 0)
--		rc = mnt_fs_get_id(fs) > 0 && mnt_fs_get_parent_id(fs) > 0;
-+	rc = (mnt_table_next_fs(tb, itr, &fs) == 0 &&
-+	      mnt_fs_is_kernel(fs) &&
-+	      mnt_fs_get_root(fs));
- 
- 	mnt_free_iter(itr);
- 	return rc;
--- 
-1.9.1
-

Deleted: 0001-switch_root-verify-initramfs-by-f_type-not-devno.patch
===================================================================
--- 0001-switch_root-verify-initramfs-by-f_type-not-devno.patch	2014-04-24 13:43:09 UTC (rev 211728)
+++ 0001-switch_root-verify-initramfs-by-f_type-not-devno.patch	2014-04-24 13:45:21 UTC (rev 211729)
@@ -1,59 +0,0 @@
-From 751c39383adaf5ff5a860516238d524b0e20f835 Mon Sep 17 00:00:00 2001
-From: Dave Reisner <dreisner at archlinux.org>
-Date: Wed, 2 Apr 2014 10:41:30 -0400
-Subject: [PATCH] switch_root: verify initramfs by f_type, not devno
-
-As of linux 3.14, the initramfs device will have both major and
-minor 0, causing our paranoia check to fail. Make this version agnostic
-by checking the filesystem type, rather than a device number.
-
-[adopted from master for backport into 2.24.x branch]
-
-Signed-off-by: Dave Reisner <dreisner at archlinux.org>
----
- sys-utils/switch_root.c | 15 +++++++++------
- 1 file changed, 9 insertions(+), 6 deletions(-)
-
-diff --git a/sys-utils/switch_root.c b/sys-utils/switch_root.c
-index f26f7da..40e222d 100644
---- a/sys-utils/switch_root.c
-+++ b/sys-utils/switch_root.c
-@@ -23,6 +23,7 @@
- #include <sys/mount.h>
- #include <sys/types.h>
- #include <sys/stat.h>
-+#include <sys/statfs.h>
- #include <sys/param.h>
- #include <fcntl.h>
- #include <stdio.h>
-@@ -33,6 +34,8 @@
- #include <ctype.h>
- #include <dirent.h>
- 
-+#include <linux/magic.h>
-+
- #include "c.h"
- #include "nls.h"
- #include "closestream.h"
-@@ -174,12 +177,12 @@ static int switchroot(const char *newroot)
- 	if (cfd >= 0) {
- 		pid = fork();
- 		if (pid <= 0) {
--			if (fstat(cfd, &sb) == 0) {
--				if (sb.st_dev == makedev(0, 1))
--					recursiveRemove(cfd);
--				else
--					warn(_("old root filesystem is not an initramfs"));
--			}
-+			struct statfs stfs;
-+			if (fstatfs(cfd, &stfs) == 0 &&
-+			    (stfs.f_type == RAMFS_MAGIC || stfs.f_type == TMPFS_MAGIC))
-+				recursiveRemove(cfd);
-+			else
-+				warn(_("old root filesystem is not an initramfs"));
- 
- 			if (pid == 0)
- 				exit(EXIT_SUCCESS);
--- 
-1.9.1
-

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2014-04-24 13:43:09 UTC (rev 211728)
+++ PKGBUILD	2014-04-24 13:45:21 UTC (rev 211729)
@@ -5,8 +5,8 @@
 
 pkgbase=util-linux
 pkgname=(util-linux libutil-linux)
-pkgver=2.24.1
-pkgrel=6
+pkgver=2.24.2
+pkgrel=1
 pkgdesc="Miscellaneous system utilities for Linux"
 url="http://www.kernel.org/pub/linux/utils/util-linux/"
 arch=('i686' 'x86_64')
@@ -19,27 +19,13 @@
         uuidd.tmpfiles
         pam-login
         pam-common
-        pam-su
-        move_is_mountinfo.patch
-        0001-switch_root-verify-initramfs-by-f_type-not-devno.patch
-        0001-libmount-FS-id-and-parent-ID-could-be-zero.patch)
-md5sums=('88d46ae23ca599ac5af9cf96b531590f'
+        pam-su)
+md5sums=('3f191727a0d28f7204b755cf1b6ea0aa'
          'a39554bfd65cccfd8254bb46922f4a67'
          '4368b3f98abd8a32662e094c54e7f9b1'
          'a31374fef2cba0ca34dfc7078e2969e4'
-         'fa85e5cce5d723275b14365ba71a8aad'
-         '4cdc5f9a6e51b032274761a82937d438'
-         'b7ca79a0d5318b7cd813bb2573a3f9a9'
-         '2f4bc305bd11d6bfaa81e6c1eb0c6f1b')
+         'fa85e5cce5d723275b14365ba71a8aad')
 
-prepare() {
-  cd "$pkgname-$pkgver"
-
-  patch -p1 -i "${srcdir}/move_is_mountinfo.patch"
-  patch -p1 -i "${srcdir}/0001-libmount-FS-id-and-parent-ID-could-be-zero.patch"
-  patch -p1 -i "${srcdir}/0001-switch_root-verify-initramfs-by-f_type-not-devno.patch"
-}
-
 build() {
   cd "$pkgname-$pkgver"
 

Deleted: move_is_mountinfo.patch
===================================================================
--- move_is_mountinfo.patch	2014-04-24 13:43:09 UTC (rev 211728)
+++ move_is_mountinfo.patch	2014-04-24 13:45:21 UTC (rev 211729)
@@ -1,46 +0,0 @@
-diff --git a/libmount/src/tab.c b/libmount/src/tab.c
-index 3633b6a..8ae49c8 100644
---- a/libmount/src/tab.c
-+++ b/libmount/src/tab.c
-@@ -47,6 +47,20 @@
- #include "strutils.h"
- #include "loopdev.h"
- 
-+static int is_mountinfo(struct libmnt_table *tb)
-+{
-+	struct libmnt_fs *fs;
-+
-+	if (!tb)
-+		return 0;
-+
-+	fs = list_first_entry(&tb->ents, struct libmnt_fs, ents);
-+	if (fs && mnt_fs_is_kernel(fs) && mnt_fs_get_root(fs))
-+		return 1;
-+
-+	return 0;
-+}
-+
- /**
-  * mnt_new_table:
-  *
-@@ -1229,20 +1335,6 @@ err:
- 	return NULL;
- }
- 
--static int is_mountinfo(struct libmnt_table *tb)
--{
--	struct libmnt_fs *fs;
--
--	if (!tb)
--		return 0;
--
--	fs = list_first_entry(&tb->ents, struct libmnt_fs, ents);
--	if (fs && mnt_fs_is_kernel(fs) && mnt_fs_get_root(fs))
--		return 1;
--
--	return 0;
--}
--
- /**
-  * mnt_table_is_fs__mounted:
-  * @tb: /proc/self/mountinfo file




More information about the arch-commits mailing list