[OE-core] [PATCH] pseudo: update to 1.8.2

Joshua Lock joshua.g.lock at intel.com
Tue Feb 7 15:53:00 UTC 2017


Update to the newly minted 1.8.2, dropping several patches we'd
backported since the last release.

Signed-off-by: Joshua Lock <joshua.g.lock at intel.com>
---
 .../files/0001-Don-t-send-SIGUSR1-to-init.patch    |  48 ---------
 ...t-diagnostics-during-startup-for-pseudo-d.patch |  54 ----------
 .../files/0002-Use-correct-file-descriptor.patch   |  53 ----------
 ...nameat-parallel-to-previous-fix-to-rename.patch |  64 -----------
 .../pseudo/files/Fix-xattr-performance.patch       | 117 ---------------------
 .../pseudo/files/More-correctly-fix-xattrs.patch   |  37 -------
 meta/recipes-devtools/pseudo/pseudo_1.8.1.bb       |  17 ---
 meta/recipes-devtools/pseudo/pseudo_1.8.2.bb       |  11 ++
 meta/recipes-devtools/pseudo/pseudo_git.bb         |   4 +-
 9 files changed, 13 insertions(+), 392 deletions(-)
 delete mode 100644 meta/recipes-devtools/pseudo/files/0001-Don-t-send-SIGUSR1-to-init.patch
 delete mode 100644 meta/recipes-devtools/pseudo/files/0001-Quiet-diagnostics-during-startup-for-pseudo-d.patch
 delete mode 100644 meta/recipes-devtools/pseudo/files/0002-Use-correct-file-descriptor.patch
 delete mode 100644 meta/recipes-devtools/pseudo/files/0003-Fix-renameat-parallel-to-previous-fix-to-rename.patch
 delete mode 100644 meta/recipes-devtools/pseudo/files/Fix-xattr-performance.patch
 delete mode 100644 meta/recipes-devtools/pseudo/files/More-correctly-fix-xattrs.patch
 delete mode 100644 meta/recipes-devtools/pseudo/pseudo_1.8.1.bb
 create mode 100644 meta/recipes-devtools/pseudo/pseudo_1.8.2.bb

diff --git a/meta/recipes-devtools/pseudo/files/0001-Don-t-send-SIGUSR1-to-init.patch b/meta/recipes-devtools/pseudo/files/0001-Don-t-send-SIGUSR1-to-init.patch
deleted file mode 100644
index 6c694ce..0000000
--- a/meta/recipes-devtools/pseudo/files/0001-Don-t-send-SIGUSR1-to-init.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-From befc6dbd6469d428c9e0830dbe51bdf7ac39d9ae Mon Sep 17 00:00:00 2001
-From: Seebs <seebs at seebs.net>
-Date: Thu, 22 Sep 2016 14:35:04 -0500
-Subject: [PATCH] Don't send SIGUSR1 to init.
-
-If the parent exits due to child process being slow, getppid() will return
-1, and we'll send SIGUSR1 to init, which can break things like dumbinit
-which aren't adequately protected against non-root processes sending them
-signals.
-
-Signed-off-by: Seebs <seebs at seebs.net>
-
-Upstream-Status: Backport (commit befc6dbd6469d428c9e0830dbe51bdf7ac39d9ae)
-
-[YOCTO #10324]
-
-This resolves an issue where a docker container running builds would die
-due to it's 'mini init' being signaled by pseudo.
-
-Signed-off-by: Mark Hatle <mark.hatle at windriver.com>
----
- pseudo_server.c | 11 ++++++++---
-
-diff --git a/pseudo_server.c b/pseudo_server.c
-index 65102dd..8731d20 100644
---- a/pseudo_server.c
-+++ b/pseudo_server.c
-@@ -358,9 +358,14 @@ pseudo_server_start(int daemonize) {
- 	signal(SIGTERM, quit_now);
- 	/* tell parent process to stop waiting */
- 	if (daemonize) {
--		pseudo_diag("Setup complete, sending SIGUSR1 to pid %d.\n",
--			getppid());
--		kill(getppid(), SIGUSR1);
-+		pid_t ppid = getppid();
-+		if (ppid == 1) {
-+			pseudo_diag("Setup complete, but parent is init, not sending SIGUSR1.\n");
-+		} else {
-+			pseudo_diag("Setup complete, sending SIGUSR1 to pid %d.\n",
-+				ppid);
-+			kill(ppid, SIGUSR1);
-+		}
- 	}
- 	pseudo_server_loop();
- 	return 0;
--- 
-2.5.5
-
diff --git a/meta/recipes-devtools/pseudo/files/0001-Quiet-diagnostics-during-startup-for-pseudo-d.patch b/meta/recipes-devtools/pseudo/files/0001-Quiet-diagnostics-during-startup-for-pseudo-d.patch
deleted file mode 100644
index d4b9f6a..0000000
--- a/meta/recipes-devtools/pseudo/files/0001-Quiet-diagnostics-during-startup-for-pseudo-d.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-From eead8a505245a292c43f070c0e836cdfeb7bd7bd Mon Sep 17 00:00:00 2001
-From: Seebs <seebs at seebs.net>
-Date: Wed, 28 Sep 2016 17:05:17 -0500
-Subject: [PATCH 1/2] Quiet diagnostics during startup for pseudo -d
-
-When the client spawns a pseudo server, it starts out sending diagnostics
-to stderr. This can be spammy in some cases with races during startup;
-everything resolves, but we get scary-looking diagnostics. So shove
-those into a log file.
-
-Signed-off-by: Seebs <seebs at seebs.net>
-
-Upstream-Status: Backport
-Signed-off-by: Robert Yang <liezhi.yang at windriver.com>
----
- ChangeLog.txt   | 5 +++++
- pseudo_server.c | 4 +++-
- 2 files changed, 8 insertions(+), 1 deletion(-)
-
-diff --git a/ChangeLog.txt b/ChangeLog.txt
-index d6359ca..4cc24de 100644
---- a/ChangeLog.txt
-+++ b/ChangeLog.txt
-@@ -1,3 +1,8 @@
-+2016-09-28:
-+	* (seebs) Send errors to log when daemonizing, but do that a lot
-+	  sooner to prevent startup messages which can show up spuriously
-+	  with multiple clients.
-+
- 2016-07-28:
- 	* (seebs) Fix performance issue on deletion with xattr changes.
- 
-diff --git a/pseudo_server.c b/pseudo_server.c
-index 8731d20..7c2db2f 100644
---- a/pseudo_server.c
-+++ b/pseudo_server.c
-@@ -162,6 +162,9 @@ pseudo_server_start(int daemonize) {
- 	 * SIGUSR1, or until too much time has passed. */
- 	if (daemonize) {
- 		int child;
-+
-+		/* make startup messages go away when invoked-as-daemon */
-+		pseudo_debug_logfile(PSEUDO_LOGFILE, 2);
- 		child = fork();
- 		if (child == -1) {
- 			pseudo_diag("Couldn't fork child process: %s\n",
-@@ -231,7 +234,6 @@ pseudo_server_start(int daemonize) {
- 			setsid();
- 			fclose(stdin);
- 			fclose(stdout);
--			pseudo_debug_logfile(PSEUDO_LOGFILE, 2);
- 			/* and then just execute the server code normally.  */
- 			/* Any logging will presumably go to logfile, but
- 			 * exit status will make it back to the parent for
diff --git a/meta/recipes-devtools/pseudo/files/0002-Use-correct-file-descriptor.patch b/meta/recipes-devtools/pseudo/files/0002-Use-correct-file-descriptor.patch
deleted file mode 100644
index dd6fd87..0000000
--- a/meta/recipes-devtools/pseudo/files/0002-Use-correct-file-descriptor.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-From 7a0632cad851826d804db0540d9a59773e6bf29c Mon Sep 17 00:00:00 2001
-From: Seebs <seebs at seebs.net>
-Date: Wed, 28 Sep 2016 22:12:29 -0500
-Subject: [PATCH 2/2] Use correct file descriptor
-
-So it turns out that pseudo_logfile() was returning 0 or -1, and
-pseudo_debug_logfile() was expecting it to be the correct file descriptor
-to use. And it's basically a mystery that any of that ever worked.
-
-Signed-off-by: Seebs <seebs at seebs.net>
-
-Upstream-Status: Backport
-Signed-off-by: Robert Yang <liezhi.yang at windriver.com>
----
- ChangeLog.txt | 3 +++
- pseudo_util.c | 3 ++-
- 2 files changed, 5 insertions(+), 1 deletion(-)
-
-diff --git a/ChangeLog.txt b/ChangeLog.txt
-index 4cc24de..49a6c36 100644
---- a/ChangeLog.txt
-+++ b/ChangeLog.txt
-@@ -2,6 +2,9 @@
- 	* (seebs) Send errors to log when daemonizing, but do that a lot
- 	  sooner to prevent startup messages which can show up spuriously
- 	  with multiple clients.
-+	* (seebs) return file descriptor from pseudo_logfile, so we set
-+	  pseudo_util_debug_fd to the right value instead of to stdin.
-+	  Nice bug.
- 
- 2016-07-28:
- 	* (seebs) Fix performance issue on deletion with xattr changes.
-diff --git a/pseudo_util.c b/pseudo_util.c
-index 0c156cf..a60c74b 100644
---- a/pseudo_util.c
-+++ b/pseudo_util.c
-@@ -1569,7 +1569,7 @@ pseudo_logfile(char *filename, char *defname, int prefer_fd) {
- 	if (fd == -1)
- 		return -1;
- 	else
--		return 0;
-+		return fd;
- }
- 
- int
-@@ -1579,6 +1579,7 @@ pseudo_debug_logfile(char *defname, int prefer_fd) {
- 
- 	fd = pseudo_logfile(filename, defname, prefer_fd);
- 	if (fd > -1) {
-+		pseudo_diag("debug_logfile: fd %d\n", fd);
- 		pseudo_util_debug_fd = fd;
- 		return 0;
- 	}
diff --git a/meta/recipes-devtools/pseudo/files/0003-Fix-renameat-parallel-to-previous-fix-to-rename.patch b/meta/recipes-devtools/pseudo/files/0003-Fix-renameat-parallel-to-previous-fix-to-rename.patch
deleted file mode 100644
index 739c03e..0000000
--- a/meta/recipes-devtools/pseudo/files/0003-Fix-renameat-parallel-to-previous-fix-to-rename.patch
+++ /dev/null
@@ -1,64 +0,0 @@
-From d9ab3a0acc94151048498b1ea4d69e7707df1526 Mon Sep 17 00:00:00 2001
-From: Seebs <seebs at seebs.net>
-Date: Fri, 30 Sep 2016 10:56:35 -0500
-Subject: [PATCH 3/3] Fix renameat (parallel to previous fix to rename)
-
-There was a bug in rename(), which was duplicated when renameat() was
-implemented, and which got fixed two years ago for rename(), but no
-one ever uses renameat() so it didn't get fixed there. Thanks
-to Anton Gerasimov <anton at advancedtelematic.com> for the bug report
-and patch.
-
-Signed-off-by: Seebs <seebs at seebs.net>
-
-Upstream-Status: Backport
-Signed-off-by: Joshua Lock <joshua.g.lock at intel.com>
-
----
- ChangeLog.txt              | 4 ++++
- ports/unix/guts/renameat.c | 7 ++++++-
- 2 files changed, 10 insertions(+), 1 deletion(-)
-
-diff --git a/ChangeLog.txt b/ChangeLog.txt
-index 65b9759..ca04cc0 100644
---- a/ChangeLog.txt
-+++ b/ChangeLog.txt
-@@ -1,3 +1,7 @@
-+2016-09-30:
-+	* (seebs) Fix rename at, matching fix from ee00f63d for rename. Bug
-+	  and fix provided by Anton Gerasimov <anton at advancedtelematic.com>.
-+
- 2016-09-28:
- 	* (seebs) Send errors to log when daemonizing, but do that a lot
- 	  sooner to prevent startup messages which can show up spuriously
-diff --git a/ports/unix/guts/renameat.c b/ports/unix/guts/renameat.c
-index ade0509..d5e36fa 100644
---- a/ports/unix/guts/renameat.c
-+++ b/ports/unix/guts/renameat.c
-@@ -11,6 +11,7 @@
- 	int oldrc, newrc;
- 	int save_errno;
- 	int old_db_entry = 0;
-+	int may_unlinked = 0;
- 
- 	pseudo_debug(PDBGF_FILE, "renameat: %d,%s->%d,%s\n",
- 		olddirfd, oldpath ? oldpath : "<nil>",
-@@ -44,10 +45,14 @@
- 	/* as with unlink, we have to mark that the file may get deleted */
- 	msg = pseudo_client_op(OP_MAY_UNLINK, 0, -1, newdirfd, newpath, newrc ? NULL : &newbuf);
- 	if (msg && msg->result == RESULT_SUCCEED)
-+		may_unlinked = 1;
-+	msg = pseudo_client_op(OP_STAT, 0, -1, olddirfd, oldpath, oldrc ? NULL : &oldbuf);
-+	if (msg && msg->result == RESULT_SUCCEED)
- 		old_db_entry = 1;
-+
- 	rc = real_renameat(olddirfd, oldpath, newdirfd, newpath);
- 	save_errno = errno;
--	if (old_db_entry) {
-+	if (may_unlinked) {
- 		if (rc == -1) {
- 			/* since we failed, that wasn't really unlinked -- put
- 			 * it back.
--- 
-2.7.4
-
diff --git a/meta/recipes-devtools/pseudo/files/Fix-xattr-performance.patch b/meta/recipes-devtools/pseudo/files/Fix-xattr-performance.patch
deleted file mode 100644
index 4e072e6..0000000
--- a/meta/recipes-devtools/pseudo/files/Fix-xattr-performance.patch
+++ /dev/null
@@ -1,117 +0,0 @@
-From 0d9071f3090bbd7880558f3b488b236ac19b44fc Mon Sep 17 00:00:00 2001
-From: seebs <seebs at seebs.net>
-Date: Thu, 28 Jul 2016 14:02:12 -0500
-Subject: [PATCH 1/2] Fix xattr performance
-
-When deleting files, we *do* know the inode and attribute, most of the
-time, so we pass those in whenever possible. The full purge of unmatched
-xattrs should not happen when the correct dev/ino are believed to be known.
-
-Signed-off-by: Seebs <seebs at seebs.net>
-
-[YOCTO #9929]
-Upstream-Status: Backport (0d9071f3090bbd7880558f3b488b236ac19b44fc)
-Signed-off-by: Joshua Lock <joshua.g.lock at intel.com>
----
- ChangeLog.txt |  3 +++
- pseudo.c      | 11 ++++++++---
- pseudo_db.c   | 15 +++++++++------
- pseudo_db.h   |  2 +-
- 4 files changed, 21 insertions(+), 10 deletions(-)
-
-diff --git a/ChangeLog.txt b/ChangeLog.txt
-index 131f163..d6359ca 100644
---- a/ChangeLog.txt
-+++ b/ChangeLog.txt
-@@ -1,3 +1,6 @@
-+2016-07-28:
-+	* (seebs) Fix performance issue on deletion with xattr changes.
-+
- 2016-07-08:
- 	* (RP) release 1.8.1
- 	* (joshuagl) Fix log table creation issue
-diff --git a/pseudo.c b/pseudo.c
-index 52f649f..db1c400 100644
---- a/pseudo.c
-+++ b/pseudo.c
-@@ -600,7 +600,12 @@ pseudo_op(pseudo_msg_t *msg, const char *program, const char *tag, char **respon
- 				if (by_path.deleting != 0) {
- 					pseudo_debug(PDBGF_FILE, "inode mismatch for '%s' -- old one was marked for deletion, deleting.\n",
- 						msg->path);
--					pdb_did_unlink_file(msg->path, by_path.deleting);
-+					/* in this case, we don't trust the
-+					 * existing entries, so we will do the
-+					 * more expensive sweep for stray
-+					 * xattrs.
-+					 */
-+					pdb_did_unlink_file(msg->path, NULL, by_path.deleting);
- 				} else {
- 					pseudo_diag("inode mismatch: '%s' ino %llu in db, %llu in request.\n",
- 						msg->path,
-@@ -698,7 +703,7 @@ pseudo_op(pseudo_msg_t *msg, const char *program, const char *tag, char **respon
- 				if (by_ino.deleting != 0) {
- 					pseudo_debug(PDBGF_FILE, "inode mismatch for '%s' -- old one was marked for deletion, deleting.\n",
- 						msg->path);
--					pdb_did_unlink_file(path_by_ino, by_ino.deleting);
-+					pdb_did_unlink_file(path_by_ino, &by_ino, by_ino.deleting);
- 				} else {
- 					pseudo_diag("path mismatch [%d link%s]: ino %llu db '%s' req '%s'.\n",
- 						msg->nlink,
-@@ -930,7 +935,7 @@ pseudo_op(pseudo_msg_t *msg, const char *program, const char *tag, char **respon
- 		}
- 		break;
- 	case OP_DID_UNLINK:
--		pdb_did_unlink_file(msg->path, msg->client);
-+		pdb_did_unlink_file(msg->path, msg, msg->client);
- 		break;
- 	case OP_CANCEL_UNLINK:
- 		pdb_cancel_unlink_file(msg);
-diff --git a/pseudo_db.c b/pseudo_db.c
-index 289bb29..e7dd193 100644
---- a/pseudo_db.c
-+++ b/pseudo_db.c
-@@ -1848,7 +1848,7 @@ pdb_did_unlink_files(int deleting) {
- 
- /* confirm deletion of a specific file by a given client */
- int
--pdb_did_unlink_file(char *path, int deleting) {
-+pdb_did_unlink_file(char *path, pseudo_msg_t *msg, int deleting) {
- 	static sqlite3_stmt *delete_exact;
- 	int rc, exact;
- 	char *sql_delete_exact = "DELETE FROM files WHERE path = ? AND deleting = ?;";
-@@ -1878,11 +1878,14 @@ pdb_did_unlink_file(char *path, int deleting) {
- 	exact = sqlite3_changes(file_db);
- 	pseudo_debug(PDBGF_DB, "(exact %d)\n", exact);
- 	sqlite3_reset(delete_exact);
--	sqlite3_clear_bindings(delete_exact);
--	/* we have to clean everything because we don't know for sure the
--	 * device/inode...
--	 */
--	pdb_clear_unused_xattrs();
-+	if (msg) {
-+		pdb_clear_xattrs(msg);
-+	} else {
-+		/* we have to clean everything because we don't know for sure the
-+		 * device/inode...
-+		 */
-+		pdb_clear_unused_xattrs();
-+	}
- 	return rc != SQLITE_DONE;
- }
- 
-diff --git a/pseudo_db.h b/pseudo_db.h
-index a54f3c1..1b2599c 100644
---- a/pseudo_db.h
-+++ b/pseudo_db.h
-@@ -39,7 +39,7 @@ typedef struct {
- 
- extern int pdb_maybe_backup(void);
- extern int pdb_cancel_unlink_file(pseudo_msg_t *msg);
--extern int pdb_did_unlink_file(char *path, int deleting);
-+extern int pdb_did_unlink_file(char *path, pseudo_msg_t *msg, int deleting);
- extern int pdb_did_unlink_files(int deleting);
- extern int pdb_link_file(pseudo_msg_t *msg);
- extern int pdb_may_unlink_file(pseudo_msg_t *msg, int deleting);
--- 
-2.7.4
-
diff --git a/meta/recipes-devtools/pseudo/files/More-correctly-fix-xattrs.patch b/meta/recipes-devtools/pseudo/files/More-correctly-fix-xattrs.patch
deleted file mode 100644
index 3d178f9..0000000
--- a/meta/recipes-devtools/pseudo/files/More-correctly-fix-xattrs.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From 45eca34c754d416a38bee90fb2d3c110a0b6cc5f Mon Sep 17 00:00:00 2001
-From: Seebs <seebs at seebs.net>
-Date: Thu, 3 Nov 2016 11:36:12 -0500
-Subject: [PATCH] More-correctly fix xattrs
-
-Fix provided by Patrick Ohly <patrick.ohly at intel.com>. This resolves
-the actual cause of the path length mismatches, and explains why
-I couldn't quite explain why the previous one had only sometimes
-worked, also why it showed up on directories but not plain files.
-
-Signed-off-by: Seebs <seebs at seebs.net>
-
-Fixes [YOCTO #10623]
-
-Upstream-Status: Backport [commit 45eca34c754d416a38bee90fb2d3c110a0b6cc5f]
-
-Signed-off-by: Patrick Ohly <patrick.ohly at intel.com>
----
- pseudo_client.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/pseudo_client.c b/pseudo_client.c
-index 6a08df3..b1a00fa 100644
---- a/pseudo_client.c
-+++ b/pseudo_client.c
-@@ -1676,7 +1676,7 @@ pseudo_client_op(pseudo_op_t op, int access, int fd, int dirfd, const char *path
- 	 * empty path for that.
- 	 */
- 	if (path_extra_1) {
--		size_t full_len = path_extra_1len + 1 + pathlen;
-+		size_t full_len = path_extra_1len + 1 + pathlen - strip_slash;
- 		size_t partial_len = pathlen - 1 - strip_slash;
- 		if (path_extra_2) {
- 			full_len += path_extra_2len + 1;
--- 
-2.1.4
-
diff --git a/meta/recipes-devtools/pseudo/pseudo_1.8.1.bb b/meta/recipes-devtools/pseudo/pseudo_1.8.1.bb
deleted file mode 100644
index 90b53c0..0000000
--- a/meta/recipes-devtools/pseudo/pseudo_1.8.1.bb
+++ /dev/null
@@ -1,17 +0,0 @@
-require pseudo.inc
-
-SRC_URI = "http://downloads.yoctoproject.org/releases/pseudo/${BPN}-${PV}.tar.bz2 \
-           file://0001-configure-Prune-PIE-flags.patch \
-           file://fallback-passwd \
-           file://fallback-group \
-           file://moreretries.patch \
-           file://Fix-xattr-performance.patch \
-           file://0001-Don-t-send-SIGUSR1-to-init.patch \
-           file://0001-Quiet-diagnostics-during-startup-for-pseudo-d.patch \
-           file://0002-Use-correct-file-descriptor.patch \
-           file://0003-Fix-renameat-parallel-to-previous-fix-to-rename.patch \
-           file://More-correctly-fix-xattrs.patch \
-           "
-
-SRC_URI[md5sum] = "ee38e4fb62ff88ad067b1a5a3825bac7"
-SRC_URI[sha256sum] = "dac4ad2d21228053151121320f629d41dd5c0c87695ac4e7aea286c414192ab5"
diff --git a/meta/recipes-devtools/pseudo/pseudo_1.8.2.bb b/meta/recipes-devtools/pseudo/pseudo_1.8.2.bb
new file mode 100644
index 0000000..9e0213a
--- /dev/null
+++ b/meta/recipes-devtools/pseudo/pseudo_1.8.2.bb
@@ -0,0 +1,11 @@
+require pseudo.inc
+
+SRC_URI = "http://downloads.yoctoproject.org/releases/pseudo/${BPN}-${PV}.tar.bz2 \
+           file://0001-configure-Prune-PIE-flags.patch \
+           file://fallback-passwd \
+           file://fallback-group \
+           file://moreretries.patch \
+           "
+
+SRC_URI[md5sum] = "7d41e72188fbea1f696c399c1a435675"
+SRC_URI[sha256sum] = "ceb456bd47770a37ca20784a91d715c5a7601e07e26ab11b0c77e9203ed3d196"
diff --git a/meta/recipes-devtools/pseudo/pseudo_git.bb b/meta/recipes-devtools/pseudo/pseudo_git.bb
index ac923bb..42c7b2e 100644
--- a/meta/recipes-devtools/pseudo/pseudo_git.bb
+++ b/meta/recipes-devtools/pseudo/pseudo_git.bb
@@ -1,7 +1,7 @@
 require pseudo.inc
 
-SRCREV = "45eca34c754d416a38bee90fb2d3c110a0b6cc5f"
-PV = "1.8.1+git${SRCPV}"
+SRCREV = "02168305b0a19f981ffe857f36eb256ba8810b77"
+PV = "1.8.2+git${SRCPV}"
 
 DEFAULT_PREFERENCE = "-1"
 
-- 
2.9.3




More information about the Openembedded-core mailing list