aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitry Chagin <dchagin@FreeBSD.org>2022-06-22 11:25:36 +0000
committerDmitry Chagin <dchagin@FreeBSD.org>2022-07-06 11:02:14 +0000
commit46ebfcb039c6842d50da3cd1ba7695761c91497c (patch)
tree6d525bb06359ce1eeb2470ce4dd782225a6da645
parent29ef2caa02d096b867035ed7211babf24e4585f9 (diff)
downloadsrc-46ebfcb039c6842d50da3cd1ba7695761c91497c.tar.gz
src-46ebfcb039c6842d50da3cd1ba7695761c91497c.zip
libsysdecode: Decode Linux *at() flags
MFC after: 2 weeks (cherry picked from commit d2b3237eebdfd46d54a9539acf13e3f24dc935b2)
-rw-r--r--lib/libsysdecode/linux.c8
-rw-r--r--lib/libsysdecode/mklinuxtables1
-rw-r--r--lib/libsysdecode/sysdecode.h1
3 files changed, 10 insertions, 0 deletions
diff --git a/lib/libsysdecode/linux.c b/lib/libsysdecode/linux.c
index 79e71d1207ca..8a3b88a7bfca 100644
--- a/lib/libsysdecode/linux.c
+++ b/lib/libsysdecode/linux.c
@@ -51,6 +51,7 @@ __FBSDID("$FreeBSD$");
#endif
#include <compat/linux/linux.h>
+#include <compat/linux/linux_file.h>
#include <compat/linux/linux_timer.h>
#define X(a,b) { a, #b },
@@ -197,3 +198,10 @@ sysdecode_linux_clock_flags(FILE *fp, int flags, int *rem)
return (print_mask_int(fp, clockflags, flags, rem));
}
+
+bool
+sysdecode_linux_atflags(FILE *fp, int flag, int *rem)
+{
+
+ return (print_mask_int(fp, atflags, flag, rem));
+}
diff --git a/lib/libsysdecode/mklinuxtables b/lib/libsysdecode/mklinuxtables
index caeeb785b4d3..734d69fca9cf 100644
--- a/lib/libsysdecode/mklinuxtables
+++ b/lib/libsysdecode/mklinuxtables
@@ -88,6 +88,7 @@ cat <<_EOF_
_EOF_
+gen_table "atflags" "LINUX_AT_[A-Z_]+[[:space:]]+[0-9]+" "compat/linux/linux_file.h"
gen_table "clockids" "LINUX_CLOCK_[A-Z_]+[[:space:]]+[0-9]+" "compat/linux/linux_timer.h"
gen_table "clockflags" "LINUX_TIMER_[A-Z_]+[[:space:]]+0x[0-9]+" "compat/linux/linux_timer.h"
gen_table "clockcpuids" "LINUX_CPUCLOCK_[A-Z_]+[[:space:]]+[0-9]+" "compat/linux/linux_timer.h" "_MASK|_MAX"
diff --git a/lib/libsysdecode/sysdecode.h b/lib/libsysdecode/sysdecode.h
index 6d72a84ef32a..ae09077e969e 100644
--- a/lib/libsysdecode/sysdecode.h
+++ b/lib/libsysdecode/sysdecode.h
@@ -141,6 +141,7 @@ bool sysdecode_shmflags(FILE *_fp, int _flags, int *_rem);
#define SYSDECODE_HAVE_LINUX
+bool sysdecode_linux_atflags(FILE *_fp, int _flag, int *_rem);
void sysdecode_linux_clockid(FILE *_fp, clockid_t _which);
bool sysdecode_linux_clock_flags(FILE *_fp, int _flags, int *_rem);
const char *sysdecode_linux_signal(int _sig);