svn commit: r358788 - in head/emulators/qemu-devel: . files

Juergen Lock nox at FreeBSD.org
Sun Jun 22 11:05:30 UTC 2014


Author: nox
Date: Sun Jun 22 11:05:29 2014
New Revision: 358788
URL: http://svnweb.freebsd.org/changeset/ports/358788
QAT: https://qat.redports.org/buildarchive/r358788/

Log:
  - Fix bsd-user default TARGET_SIGINFO handling.
  - Bump PORTREVISION.
  
  Reported by:	sbruno

Added:
  head/emulators/qemu-devel/files/extra-patch-target_siginfo   (contents, props changed)
Modified:
  head/emulators/qemu-devel/Makefile

Modified: head/emulators/qemu-devel/Makefile
==============================================================================
--- head/emulators/qemu-devel/Makefile	Sun Jun 22 10:58:35 2014	(r358787)
+++ head/emulators/qemu-devel/Makefile	Sun Jun 22 11:05:29 2014	(r358788)
@@ -3,7 +3,7 @@
 
 PORTNAME=	qemu
 PORTVERSION=	2.0.0
-PORTREVISION=	4
+PORTREVISION=	5
 CATEGORIES=	emulators
 MASTER_SITES=	http://wiki.qemu.org/download/:release \
 		LOCAL/nox:snapshot
@@ -68,6 +68,7 @@ EXTRA_PATCHES+=	${FILESDIR}/extra-patch-
 EXTRA_PATCHES+=	${FILESDIR}/extra-patch-bsd-user-mmap.c
 EXTRA_PATCHES+=	${FILESDIR}/extra-patch-sysctl-hw-pagesizes
 EXTRA_PATCHES+=	${FILESDIR}/extra-patch-bsd-user-x86_64-target_arch_vmparam.h
+EXTRA_PATCHES+=	${FILESDIR}/extra-patch-target_siginfo
 .endif
 
 CONFIGURE_ARGS+=	--extra-ldflags=-L${LOCALBASE}/lib

Added: head/emulators/qemu-devel/files/extra-patch-target_siginfo
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/emulators/qemu-devel/files/extra-patch-target_siginfo	Sun Jun 22 11:05:29 2014	(r358788)
@@ -0,0 +1,37 @@
+From nox Mon Sep 17 00:00:00 2001
+From: Juergen Lock <nox at jelal.kn-bremen.de>
+Date: 22 Jun 2014 00:52:23 +0200
+Subject: Fix bsd-user default TARGET_SIGINFO handling
+
+TARGET_SIGINFO doesn't kill the process and also doesn't cause EINTR
+by default so add it to fatal_signal() appropriately; and also don't
+call force_sig() on it should it end up being handled.
+
+Signed-off-by: Juergen Lock <nox at jelal.kn-bremen.de>
+
+--- a/bsd-user/signal.c
++++ b/bsd-user/signal.c
+@@ -391,6 +391,7 @@ int queue_signal(CPUArchState *env, int 
+             if (sig != TARGET_SIGCHLD &&
+                 sig != TARGET_SIGURG &&
+                 sig != TARGET_SIGWINCH &&
++                sig != TARGET_SIGINFO &&
+                 sig != TARGET_SIGCONT) {
+                 force_sig(sig);
+             } else {
+@@ -531,6 +532,7 @@ static int fatal_signal(int sig)
+     case TARGET_SIGCHLD:
+     case TARGET_SIGURG:
+     case TARGET_SIGWINCH:
++    case TARGET_SIGINFO:
+         /* Ignored by default. */
+         return 0;
+     case TARGET_SIGCONT:
+@@ -884,6 +886,7 @@ handle_signal:
+                 TARGET_SIGTTOU == sig) {
+             kill(getpid(), SIGSTOP);
+         } else if (TARGET_SIGCHLD != sig && TARGET_SIGURG != sig &&
++            TARGET_SIGINFO != sig &&
+             TARGET_SIGWINCH != sig && TARGET_SIGCONT != sig) {
+             force_sig(sig);
+         }


More information about the svn-ports-head mailing list