|
@@ -6378,6 +6378,12 @@ static abi_long do_prctl_inval1(CPUArchState *env, abi_long arg2)
|
|
#ifndef do_prctl_get_tagged_addr_ctrl
|
|
#ifndef do_prctl_get_tagged_addr_ctrl
|
|
#define do_prctl_get_tagged_addr_ctrl do_prctl_inval0
|
|
#define do_prctl_get_tagged_addr_ctrl do_prctl_inval0
|
|
#endif
|
|
#endif
|
|
|
|
+#ifndef do_prctl_get_unalign
|
|
|
|
+#define do_prctl_get_unalign do_prctl_inval1
|
|
|
|
+#endif
|
|
|
|
+#ifndef do_prctl_set_unalign
|
|
|
|
+#define do_prctl_set_unalign do_prctl_inval1
|
|
|
|
+#endif
|
|
|
|
|
|
static abi_long do_prctl(CPUArchState *env, abi_long option, abi_long arg2,
|
|
static abi_long do_prctl(CPUArchState *env, abi_long option, abi_long arg2,
|
|
abi_long arg3, abi_long arg4, abi_long arg5)
|
|
abi_long arg3, abi_long arg4, abi_long arg5)
|
|
@@ -6441,6 +6447,11 @@ static abi_long do_prctl(CPUArchState *env, abi_long option, abi_long arg2,
|
|
}
|
|
}
|
|
return do_prctl_get_tagged_addr_ctrl(env);
|
|
return do_prctl_get_tagged_addr_ctrl(env);
|
|
|
|
|
|
|
|
+ case PR_GET_UNALIGN:
|
|
|
|
+ return do_prctl_get_unalign(env, arg2);
|
|
|
|
+ case PR_SET_UNALIGN:
|
|
|
|
+ return do_prctl_set_unalign(env, arg2);
|
|
|
|
+
|
|
case PR_GET_DUMPABLE:
|
|
case PR_GET_DUMPABLE:
|
|
case PR_SET_DUMPABLE:
|
|
case PR_SET_DUMPABLE:
|
|
case PR_GET_KEEPCAPS:
|
|
case PR_GET_KEEPCAPS:
|
|
@@ -6483,8 +6494,6 @@ static abi_long do_prctl(CPUArchState *env, abi_long option, abi_long arg2,
|
|
case PR_SET_THP_DISABLE:
|
|
case PR_SET_THP_DISABLE:
|
|
case PR_GET_TSC:
|
|
case PR_GET_TSC:
|
|
case PR_SET_TSC:
|
|
case PR_SET_TSC:
|
|
- case PR_GET_UNALIGN:
|
|
|
|
- case PR_SET_UNALIGN:
|
|
|
|
/* Disable to prevent the target disabling stuff we need. */
|
|
/* Disable to prevent the target disabling stuff we need. */
|
|
return -TARGET_EINVAL;
|
|
return -TARGET_EINVAL;
|
|
|
|
|