about summary refs log tree commit diff
path: root/ChangeLog
diff options
context:
space:
mode:
authorSamuel Thibault <samuel.thibault@ens-lyon.org>2018-10-09 23:40:09 +0200
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2018-10-28 13:41:51 +0100
commit5c81be53407434ce22b849722a3d691295480016 (patch)
tree930f36f9263b5d02c176d6b13b0ed5a762c8fd83 /ChangeLog
parent2d0d1d38761cd9aeb7063c5cce1993cec909f67f (diff)
downloadglibc-5c81be53407434ce22b849722a3d691295480016.tar.gz
glibc-5c81be53407434ce22b849722a3d691295480016.tar.xz
glibc-5c81be53407434ce22b849722a3d691295480016.zip
hurd: Fix race between calling RPC and handling a signal
	* sysdeps/mach/hurd/i386/intr-msg.h (INTR_MSG_TRAP): Make
	_hurd_intr_rpc_msg_about_to global point to start of controlled
	assembly snippet. Make it check canceled flag.
	* hurd/hurdsig.c (_hurdsig_abort_rpcs): Only mutate thread if it passed
	the _hurd_intr_rpc_msg_about_to point.
	* hurd/intr-msg.c (_hurd_intr_rpc_mach_msg): Remove comment on mutation
	issue, remove cancel flag check.
Diffstat (limited to 'ChangeLog')
-rw-r--r--ChangeLog7
1 files changed, 7 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 7d23aa7236..5709c3cdbc 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -3,6 +3,13 @@
 	* hurd/hurdsig.c (_hurd_interrupted_rpc_timeout): Set to 60000.
 	* hurd/intr-msg.c (_hurd_intr_rpc_mach_msg): When the server does not
 	answer to interrupt_operation, return EIO instead of EINTR.
+	* sysdeps/mach/hurd/i386/intr-msg.h (INTR_MSG_TRAP): Make
+	_hurd_intr_rpc_msg_about_to global point to start of controlled
+	assembly snippet. Make it check canceled flag.
+	* hurd/hurdsig.c (_hurdsig_abort_rpcs): Only mutate thread if it passed
+	the _hurd_intr_rpc_msg_about_to point.
+	* hurd/intr-msg.c (_hurd_intr_rpc_mach_msg): Remove comment on mutation
+	issue, remove cancel flag check.
 
 2018-10-26  Joseph Myers  <joseph@codesourcery.com>