From e7944419d4b7403c51028204ec5c4c53e776e94a Mon Sep 17 00:00:00 2001 From: David Cook Date: Sun, 5 Apr 2020 12:44:23 -0500 Subject: [PATCH] Use Deadlock machine stop uniformly --- src/shims/sync.rs | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/src/shims/sync.rs b/src/shims/sync.rs index c9d846288a4..90d7104b9e7 100644 --- a/src/shims/sync.rs +++ b/src/shims/sync.rs @@ -352,9 +352,7 @@ fn pthread_rwlock_rdlock(&mut self, rwlock_op: OpTy<'tcx, Tag>) -> InterpResult< let readers = rwlock_get_readers(this, rwlock_op)?.to_u32()?; let writers = rwlock_get_writers(this, rwlock_op)?.to_u32()?; if writers != 0 { - throw_unsup_format!( - "Deadlock due to read-locking a pthreads read-write lock while it is already write-locked" - ); + throw_machine_stop!(TerminationInfo::Deadlock); } else { match readers.checked_add(1) { Some(new_readers) => { @@ -390,13 +388,9 @@ fn pthread_rwlock_wrlock(&mut self, rwlock_op: OpTy<'tcx, Tag>) -> InterpResult< let readers = rwlock_get_readers(this, rwlock_op)?.to_u32()?; let writers = rwlock_get_writers(this, rwlock_op)?.to_u32()?; if readers != 0 { - throw_unsup_format!( - "Deadlock due to write-locking a pthreads read-write lock while it is already read-locked" - ); + throw_machine_stop!(TerminationInfo::Deadlock); } else if writers != 0 { - throw_unsup_format!( - "Deadlock due to write-locking a pthreads read-write lock while it is already write-locked" - ); + throw_machine_stop!(TerminationInfo::Deadlock); } else { rwlock_set_writers(this, rwlock_op, Scalar::from_u32(1))?; Ok(0)