summaryrefslogtreecommitdiff
path: root/debian/patches/700002-Port-Samuels-fix.patch
diff options
context:
space:
mode:
Diffstat (limited to 'debian/patches/700002-Port-Samuels-fix.patch')
-rw-r--r--debian/patches/700002-Port-Samuels-fix.patch27
1 files changed, 27 insertions, 0 deletions
diff --git a/debian/patches/700002-Port-Samuels-fix.patch b/debian/patches/700002-Port-Samuels-fix.patch
new file mode 100644
index 0000000..1074d69
--- /dev/null
+++ b/debian/patches/700002-Port-Samuels-fix.patch
@@ -0,0 +1,27 @@
+From 56b4a54e8eda7c55e5463feb51150358a9b87686 Mon Sep 17 00:00:00 2001
+From: Justus Winter <justus@gnupg.org>
+Date: Fri, 15 Apr 2016 11:46:58 +0200
+Subject: [PATCH gnumach 2/2] Port Samuels fix
+
+---
+ device/intr.c | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/device/intr.c b/device/intr.c
+index 85915cd..11f0772 100644
+--- a/device/intr.c
++++ b/device/intr.c
+@@ -314,6 +314,10 @@ intr_thread ()
+ assert (e->interrupts == 1);
+ e->interrupts--;
+
++ /* The thread might go to sleep while delivering the
++ interrupt, hence we clear our event. */
++ clear_wait (current_thread (), 0, 0);
++
+ cpu_intr_restore (flags);
+ deliver_intr (line, notification_port, interrupt_port);
+ cpu_intr_save (&flags);
+--
+2.1.4
+