From: Tommaso Marinelli Date: Sun, 6 Oct 2019 19:12:06 +0000 (+0200) Subject: arch: Drop sysctl support if built against glibc X-Git-Tag: v19.0.0.0~417 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=239054f48439c18b93e1a70ff29dbcb0c4742cff;p=gem5.git arch: Drop sysctl support if built against glibc Since glibc 2.30 the sysctl() function has been declared deprecated and it will be deleted in future versions. This patch removes the support for the sysctl system call in SE mode (which is currently serviced calling the sysctl() function) if gem5 is built against glibc, keeping it with other libc implementations, as a temporary measure to prevent the generation of a compilation error. Note that this system call in gem5 is only supported for the arm/freebsd architecture. Change-Id: Ie5fcb983d15c0a27c7820d24250d7ae5dbe12355 Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/21519 Reviewed-by: Brandon Potter Maintainer: Brandon Potter Tested-by: kokoro --- diff --git a/src/arch/arm/freebsd/process.cc b/src/arch/arm/freebsd/process.cc index 399da3a42..901b2411b 100644 --- a/src/arch/arm/freebsd/process.cc +++ b/src/arch/arm/freebsd/process.cc @@ -35,7 +35,9 @@ #include #include #include +#if !defined ( __GNU_LIBRARY__ ) #include +#endif #include #include @@ -90,6 +92,7 @@ issetugidFunc(SyscallDesc *desc, int callnum, ThreadContext *tc) return 0; } +#if !defined ( __GNU_LIBRARY__ ) static SyscallReturn sysctlFunc(SyscallDesc *desc, int callnum, ThreadContext *tc) { @@ -133,6 +136,7 @@ sysctlFunc(SyscallDesc *desc, int callnum, ThreadContext *tc) return (ret); } +#endif static SyscallDesc syscallDescs32[] = { /* 0 */ SyscallDesc("unused#000", unimplementedFunc), @@ -888,7 +892,11 @@ static SyscallDesc syscallDescs64[] = { /* 199 */ SyscallDesc("unused#199", unimplementedFunc), /* 200 */ SyscallDesc("unused#200", unimplementedFunc), /* 201 */ SyscallDesc("unused#201", unimplementedFunc), +#if !defined ( __GNU_LIBRARY__ ) /* 202 */ SyscallDesc("sysctl", sysctlFunc), +#else + /* 202 */ SyscallDesc("sysctl", unimplementedFunc), +#endif /* 203 */ SyscallDesc("unused#203", unimplementedFunc), /* 204 */ SyscallDesc("unused#204", unimplementedFunc), /* 205 */ SyscallDesc("unused#205", unimplementedFunc),