x86: wire up arch_prctl syscall

* linux/i386/syscallent.h [384]: Add arch_prctl entry.
* xlat/archvals.in: Add fallback definitions for constants.
* prctl.c: Stop including <asm/prctl.h>.
(SYS_FUNC(arch_prctl)): Enable for [I386].
* NEWS: Mention this.
This commit is contained in:
Дмитрий Левин 2017-07-21 01:30:26 +00:00
parent f62e2d39ec
commit 8d2dd76323
4 changed files with 8 additions and 7 deletions

1
NEWS
View File

@ -18,6 +18,7 @@ Noteworthy changes in release ?.?? (????-??-??)
* Implemented decoding of netlink message ack flags.
* Implemented decoding of nlmsgerr netlink attributes.
* Updated lists of BPF_*, KEY_*, RWF_*, SCM_*, SO_*, and *_MAGIC constants.
* Added decoding of arch_prctl syscall on x86.
* Bug fixes
* Fixed output formatting of blkpg_ioctl_arg, dm_name_list, and iocb

View File

@ -410,6 +410,7 @@
[381] = { 2, 0, SEN(pkey_alloc), "pkey_alloc" },
[382] = { 1, 0, SEN(pkey_free), "pkey_free" },
[383] = { 5, TD|TF|TSTA, SEN(statx), "statx" },
[384] = { 2, TP, SEN(arch_prctl), "arch_prctl" },
#define SYS_socket_subcall 400
#include "subcall.h"

View File

@ -350,8 +350,7 @@ SYS_FUNC(prctl)
return 0;
}
#if defined X86_64 || defined X32
# include <asm/prctl.h>
#if defined X86_64 || defined X32 || defined I386
# include "xlat/archvals.h"
SYS_FUNC(arch_prctl)
@ -375,4 +374,4 @@ SYS_FUNC(arch_prctl)
tprintf(", %#" PRI_klx, addr);
return RVAL_DECODED;
}
#endif /* X86_64 || X32 */
#endif /* X86_64 || X32 || I386 */

View File

@ -1,7 +1,7 @@
ARCH_SET_GS
ARCH_SET_FS
ARCH_GET_FS
ARCH_GET_GS
ARCH_SET_GS 0x1001
ARCH_SET_FS 0x1002
ARCH_GET_FS 0x1003
ARCH_GET_GS 0x1004
ARCH_GET_CPUID 0x1011
ARCH_SET_CPUID 0x1012
ARCH_MAP_VDSO_X32 0x2001