+++ /dev/null
-diff --git a/coregrind/m_syswrap/syswrap-amd64-linux.c b/coregrind/m_syswrap/syswrap-amd64-linux.c
-index 0f2ad8c51..407af7f76 100644
---- a/coregrind/m_syswrap/syswrap-amd64-linux.c
-+++ b/coregrind/m_syswrap/syswrap-amd64-linux.c
-@@ -249,6 +249,7 @@ PRE(sys_rt_sigreturn)
- PRE(sys_arch_prctl)
- {
- ThreadState* tst;
-+ Bool known_option = True;
- PRINT( "arch_prctl ( %ld, %lx )", SARG1, ARG2 );
-
- vg_assert(VG_(is_valid_tid)(tid));
-@@ -283,13 +284,16 @@ PRE(sys_arch_prctl)
- POST_MEM_WRITE(ARG2, sizeof(unsigned long));
- }
- else {
-- VG_(core_panic)("Unsupported arch_prctl option");
-+ known_option = False;
- }
-
- /* Note; the Status writeback to guest state that happens after
- this wrapper returns does not change guest_FS_CONST or guest_GS_CONST;
- hence that direct assignment to the guest state is safe here. */
-- SET_STATUS_Success( 0 );
-+ if (known_option)
-+ SET_STATUS_Success( 0 );
-+ else
-+ SET_STATUS_Failure( VKI_EINVAL );
- }
-
- // Parts of this are amd64-specific, but the *PEEK* cases are generic.