From ac7bf2ecd0db5f1955fe5871ccdc92821d657fd8 Mon Sep 17 00:00:00 2001 From: "Dmitry V. Levin" Date: Sun, 12 May 2019 22:45:45 +0000 Subject: [PATCH] Implement and use new parsers of ppoll syscall * poll.c (SYS_FUNC(ppoll)): Remove. [HAVE_ARCH_TIME32_SYSCALLS] (SYS_FUNC(ppoll_time32)): New function. * pathtrace.c (pathtrace_match_set): Replace SEN_ppoll with SEN_ppoll_time32. * linux/64/syscallent.h: Replace SEN(ppoll) with SEN(ppoll_time64). * linux/alpha/syscallent.h: Likewise. * linux/ia64/syscallent.h: Likewise. * linux/mips/syscallent-n64.h: Likewise. * linux/powerpc64/syscallent.h: Likewise. * linux/s390x/syscallent.h: Likewise. * linux/sh64/syscallent.h: Likewise. * linux/sparc64/syscallent.h: Likewise. * linux/x32/syscallent.h: Likewise. * linux/x86_64/syscallent.h: Likewise. * linux/32/syscallent.h: Replace SEN(ppoll) with SEN(ppoll_time32). * linux/arm/syscallent.h: Likewise. * linux/avr32/syscallent.h: Likewise. * linux/bfin/syscallent.h: Likewise. * linux/hppa/syscallent.h: Likewise. * linux/i386/syscallent.h: Likewise. * linux/m68k/syscallent.h: Likewise. * linux/microblaze/syscallent.h: Likewise. * linux/mips/syscallent-n32.h: Likewise. * linux/mips/syscallent-o32.h: Likewise. * linux/powerpc/syscallent.h: Likewise. * linux/s390/syscallent.h: Likewise. * linux/sh/syscallent.h: Likewise. * linux/sparc/syscallent.h: Likewise. * linux/xtensa/syscallent.h: Likewise. --- linux/32/syscallent.h | 2 +- linux/64/syscallent.h | 2 +- linux/alpha/syscallent.h | 2 +- linux/arm/syscallent.h | 2 +- linux/avr32/syscallent.h | 2 +- linux/bfin/syscallent.h | 2 +- linux/hppa/syscallent.h | 2 +- linux/i386/syscallent.h | 2 +- linux/ia64/syscallent.h | 2 +- linux/m68k/syscallent.h | 2 +- linux/microblaze/syscallent.h | 2 +- linux/mips/syscallent-n32.h | 2 +- linux/mips/syscallent-n64.h | 2 +- linux/mips/syscallent-o32.h | 2 +- linux/powerpc/syscallent.h | 2 +- linux/powerpc64/syscallent.h | 2 +- linux/s390/syscallent.h | 2 +- linux/s390x/syscallent.h | 2 +- linux/sh/syscallent.h | 2 +- linux/sh64/syscallent.h | 2 +- linux/sparc/syscallent.h | 2 +- linux/sparc64/syscallent.h | 2 +- linux/x32/syscallent.h | 2 +- linux/x86_64/syscallent.h | 2 +- linux/xtensa/syscallent.h | 2 +- pathtrace.c | 2 +- poll.c | 6 ++++-- 27 files changed, 30 insertions(+), 28 deletions(-) diff --git a/linux/32/syscallent.h b/linux/32/syscallent.h index 3d400231..72086194 100644 --- a/linux/32/syscallent.h +++ b/linux/32/syscallent.h @@ -81,7 +81,7 @@ [ 70] = { 5, TD, SEN(pwritev), "pwritev" }, [ 71] = { 4, TD|TN, SEN(sendfile64), "sendfile64" }, [ 72] = { 6, TD, SEN(pselect6_time32), "pselect6" }, -[ 73] = { 5, TD, SEN(ppoll), "ppoll" }, +[ 73] = { 5, TD, SEN(ppoll_time32), "ppoll" }, [ 74] = { 4, TD|TS, SEN(signalfd4), "signalfd4" }, [ 75] = { 4, TD, SEN(vmsplice), "vmsplice" }, [ 76] = { 6, TD, SEN(splice), "splice" }, diff --git a/linux/64/syscallent.h b/linux/64/syscallent.h index db3f4726..e3830b9e 100644 --- a/linux/64/syscallent.h +++ b/linux/64/syscallent.h @@ -78,7 +78,7 @@ [ 70] = { 4, TD, SEN(pwritev), "pwritev" }, [ 71] = { 4, TD|TN, SEN(sendfile64), "sendfile" }, [ 72] = { 6, TD, SEN(pselect6_time64), "pselect6" }, -[ 73] = { 5, TD, SEN(ppoll), "ppoll" }, +[ 73] = { 5, TD, SEN(ppoll_time64), "ppoll" }, [ 74] = { 4, TD|TS, SEN(signalfd4), "signalfd4" }, [ 75] = { 4, TD, SEN(vmsplice), "vmsplice" }, [ 76] = { 6, TD, SEN(splice), "splice" }, diff --git a/linux/alpha/syscallent.h b/linux/alpha/syscallent.h index 4c67096a..d04789da 100644 --- a/linux/alpha/syscallent.h +++ b/linux/alpha/syscallent.h @@ -407,7 +407,7 @@ [461] = { 3, TD|TF, SEN(fchmodat), "fchmodat" }, [462] = { 3, TD|TF, SEN(faccessat), "faccessat" }, [463] = { 6, TD, SEN(pselect6_time64), "pselect6" }, -[464] = { 5, TD, SEN(ppoll), "ppoll" }, +[464] = { 5, TD, SEN(ppoll_time64), "ppoll" }, [465] = { 1, TP, SEN(unshare), "unshare" }, [466] = { 2, 0, SEN(set_robust_list), "set_robust_list" }, [467] = { 3, 0, SEN(get_robust_list), "get_robust_list" }, diff --git a/linux/arm/syscallent.h b/linux/arm/syscallent.h index 9a451327..52a8eebc 100644 --- a/linux/arm/syscallent.h +++ b/linux/arm/syscallent.h @@ -343,7 +343,7 @@ [333] = { 3, TD|TF, SEN(fchmodat), "fchmodat" }, [334] = { 3, TD|TF, SEN(faccessat), "faccessat" }, [335] = { 6, TD, SEN(pselect6_time32), "pselect6" }, -[336] = { 5, TD, SEN(ppoll), "ppoll" }, +[336] = { 5, TD, SEN(ppoll_time32), "ppoll" }, [337] = { 1, TP, SEN(unshare), "unshare" }, [338] = { 2, 0, SEN(set_robust_list), "set_robust_list" }, [339] = { 3, 0, SEN(get_robust_list), "get_robust_list" }, diff --git a/linux/avr32/syscallent.h b/linux/avr32/syscallent.h index ae0a964f..40f235c9 100644 --- a/linux/avr32/syscallent.h +++ b/linux/avr32/syscallent.h @@ -263,7 +263,7 @@ [254] = { 3, TD|TF, SEN(fchmodat), "fchmodat" }, [255] = { 3, TD|TF, SEN(faccessat), "faccessat" }, [256] = { 6, TD, SEN(pselect6_time32), "pselect6" }, -[257] = { 5, TD, SEN(ppoll), "ppoll" }, +[257] = { 5, TD, SEN(ppoll_time32), "ppoll" }, [258] = { 1, TP, SEN(unshare), "unshare" }, [259] = { 2, 0, SEN(set_robust_list), "set_robust_list" }, [260] = { 3, 0, SEN(get_robust_list), "get_robust_list" }, diff --git a/linux/bfin/syscallent.h b/linux/bfin/syscallent.h index 36e323e3..885b109b 100644 --- a/linux/bfin/syscallent.h +++ b/linux/bfin/syscallent.h @@ -315,7 +315,7 @@ [306] = { 3, TD|TF, SEN(fchmodat), "fchmodat" }, [307] = { 3, TD|TF, SEN(faccessat), "faccessat" }, [308] = { 6, TD, SEN(pselect6_time32), "pselect6" }, -[309] = { 5, TD, SEN(ppoll), "ppoll" }, +[309] = { 5, TD, SEN(ppoll_time32), "ppoll" }, [310] = { 1, TP, SEN(unshare), "unshare" }, [311] = { 2, 0, SEN(sram_alloc), "sram_alloc" }, [312] = { 1, 0, SEN(printargs), "sram_free" }, diff --git a/linux/hppa/syscallent.h b/linux/hppa/syscallent.h index 01f927ae..f5b119ca 100644 --- a/linux/hppa/syscallent.h +++ b/linux/hppa/syscallent.h @@ -277,7 +277,7 @@ [271] = { 2, TD, SEN(inotify_rm_watch), "inotify_rm_watch" }, [272] = { 4, TM, SEN(migrate_pages), "migrate_pages" }, [273] = { 6, TD, SEN(pselect6_time32), "pselect6" }, -[274] = { 5, TD, SEN(ppoll), "ppoll" }, +[274] = { 5, TD, SEN(ppoll_time32), "ppoll" }, [275] = { 4, TD|TF, SEN(openat), "openat" }, [276] = { 3, TD|TF, SEN(mkdirat), "mkdirat" }, [277] = { 4, TD|TF, SEN(mknodat), "mknodat" }, diff --git a/linux/i386/syscallent.h b/linux/i386/syscallent.h index 798209e9..73e19db2 100644 --- a/linux/i386/syscallent.h +++ b/linux/i386/syscallent.h @@ -315,7 +315,7 @@ [306] = { 3, TD|TF, SEN(fchmodat), "fchmodat" }, [307] = { 3, TD|TF, SEN(faccessat), "faccessat" }, [308] = { 6, TD, SEN(pselect6_time32), "pselect6" }, -[309] = { 5, TD, SEN(ppoll), "ppoll" }, +[309] = { 5, TD, SEN(ppoll_time32), "ppoll" }, [310] = { 1, TP, SEN(unshare), "unshare" }, [311] = { 2, 0, SEN(set_robust_list), "set_robust_list" }, [312] = { 3, 0, SEN(get_robust_list), "get_robust_list" }, diff --git a/linux/ia64/syscallent.h b/linux/ia64/syscallent.h index 0cf7a56f..27ffad7e 100644 --- a/linux/ia64/syscallent.h +++ b/linux/ia64/syscallent.h @@ -278,7 +278,7 @@ [1024 + 268] = { 3, TD|TF, SEN(fchmodat), "fchmodat" }, [1024 + 269] = { 3, TD|TF, SEN(faccessat), "faccessat" }, [1024 + 270] = { 6, TD, SEN(pselect6_time64), "pselect6" }, -[1024 + 271] = { 5, TD, SEN(ppoll), "ppoll" }, +[1024 + 271] = { 5, TD, SEN(ppoll_time64), "ppoll" }, [1024 + 272] = { 1, TP, SEN(unshare), "unshare" }, [1024 + 273] = { 6, TD, SEN(splice), "splice" }, [1024 + 274] = { 2, 0, SEN(set_robust_list), "set_robust_list" }, diff --git a/linux/m68k/syscallent.h b/linux/m68k/syscallent.h index 749b5cda..8fd41e55 100644 --- a/linux/m68k/syscallent.h +++ b/linux/m68k/syscallent.h @@ -308,7 +308,7 @@ [299] = { 3, TD|TF, SEN(fchmodat), "fchmodat" }, [300] = { 3, TD|TF, SEN(faccessat), "faccessat" }, [301] = { 6, TD, SEN(pselect6_time32), "pselect6" }, -[302] = { 5, TD, SEN(ppoll), "ppoll" }, +[302] = { 5, TD, SEN(ppoll_time32), "ppoll" }, [303] = { 1, TP, SEN(unshare), "unshare" }, [304] = { 2, 0, SEN(set_robust_list), "set_robust_list" }, [305] = { 3, 0, SEN(get_robust_list), "get_robust_list" }, diff --git a/linux/microblaze/syscallent.h b/linux/microblaze/syscallent.h index a82622ba..d09258af 100644 --- a/linux/microblaze/syscallent.h +++ b/linux/microblaze/syscallent.h @@ -315,7 +315,7 @@ [306] = { 3, TD|TF, SEN(fchmodat), "fchmodat" }, [307] = { 3, TD|TF, SEN(faccessat), "faccessat" }, [308] = { 6, TD, SEN(pselect6_time32), "pselect6" }, -[309] = { 5, TD, SEN(ppoll), "ppoll" }, +[309] = { 5, TD, SEN(ppoll_time32), "ppoll" }, [310] = { 1, TP, SEN(unshare), "unshare" }, [311] = { 2, 0, SEN(set_robust_list), "set_robust_list" }, [312] = { 3, 0, SEN(get_robust_list), "get_robust_list" }, diff --git a/linux/mips/syscallent-n32.h b/linux/mips/syscallent-n32.h index ad3b96cf..96d2bc8c 100644 --- a/linux/mips/syscallent-n32.h +++ b/linux/mips/syscallent-n32.h @@ -272,7 +272,7 @@ [6262] = { 3, TD|TF, SEN(fchmodat), "fchmodat" }, [6263] = { 3, TD|TF, SEN(faccessat), "faccessat" }, [6264] = { 6, TD, SEN(pselect6_time32), "pselect6" }, -[6265] = { 5, TD, SEN(ppoll), "ppoll" }, +[6265] = { 5, TD, SEN(ppoll_time32), "ppoll" }, [6266] = { 1, TP, SEN(unshare), "unshare" }, [6267] = { 6, TD, SEN(splice), "splice" }, [6268] = { 4, TD, SEN(sync_file_range), "sync_file_range" }, diff --git a/linux/mips/syscallent-n64.h b/linux/mips/syscallent-n64.h index e7a62e02..6b9d4f41 100644 --- a/linux/mips/syscallent-n64.h +++ b/linux/mips/syscallent-n64.h @@ -268,7 +268,7 @@ [5258] = { 3, TD|TF, SEN(fchmodat), "fchmodat" }, [5259] = { 3, TD|TF, SEN(faccessat), "faccessat" }, [5260] = { 6, TD, SEN(pselect6_time64), "pselect6" }, -[5261] = { 5, TD, SEN(ppoll), "ppoll" }, +[5261] = { 5, TD, SEN(ppoll_time64), "ppoll" }, [5262] = { 1, TP, SEN(unshare), "unshare" }, [5263] = { 6, TD, SEN(splice), "splice" }, [5264] = { 4, TD, SEN(sync_file_range), "sync_file_range" }, diff --git a/linux/mips/syscallent-o32.h b/linux/mips/syscallent-o32.h index 22152c29..bd9b8003 100644 --- a/linux/mips/syscallent-o32.h +++ b/linux/mips/syscallent-o32.h @@ -310,7 +310,7 @@ [4299] = { 3, TD|TF, SEN(fchmodat), "fchmodat" }, [4300] = { 3, TD|TF, SEN(faccessat), "faccessat" }, [4301] = { 6, TD, SEN(pselect6_time32), "pselect6" }, -[4302] = { 5, TD, SEN(ppoll), "ppoll" }, +[4302] = { 5, TD, SEN(ppoll_time32), "ppoll" }, [4303] = { 1, TP, SEN(unshare), "unshare" }, [4304] = { 6, TD, SEN(splice), "splice" }, [4305] = { 7, TD, SEN(sync_file_range), "sync_file_range" }, diff --git a/linux/powerpc/syscallent.h b/linux/powerpc/syscallent.h index 1ea6700f..88769407 100644 --- a/linux/powerpc/syscallent.h +++ b/linux/powerpc/syscallent.h @@ -288,7 +288,7 @@ [278] = { 3, 0, SEN(printargs), "spu_run" }, [279] = { 4, 0, SEN(printargs), "spu_create" }, [280] = { 6, TD, SEN(pselect6_time32), "pselect6" }, -[281] = { 5, TD, SEN(ppoll), "ppoll" }, +[281] = { 5, TD, SEN(ppoll_time32), "ppoll" }, [282] = { 1, TP, SEN(unshare), "unshare" }, [283] = { 6, TD, SEN(splice), "splice" }, [284] = { 4, TD, SEN(tee), "tee" }, diff --git a/linux/powerpc64/syscallent.h b/linux/powerpc64/syscallent.h index 0ca7df36..46883302 100644 --- a/linux/powerpc64/syscallent.h +++ b/linux/powerpc64/syscallent.h @@ -283,7 +283,7 @@ [278] = { 3, 0, SEN(printargs), "spu_run" }, [279] = { 4, 0, SEN(printargs), "spu_create" }, [280] = { 6, TD, SEN(pselect6_time64), "pselect6" }, -[281] = { 5, TD, SEN(ppoll), "ppoll" }, +[281] = { 5, TD, SEN(ppoll_time64), "ppoll" }, [282] = { 1, TP, SEN(unshare), "unshare" }, [283] = { 6, TD, SEN(splice), "splice" }, [284] = { 4, TD, SEN(tee), "tee" }, diff --git a/linux/s390/syscallent.h b/linux/s390/syscallent.h index 1d6c7841..4f87ab31 100644 --- a/linux/s390/syscallent.h +++ b/linux/s390/syscallent.h @@ -311,7 +311,7 @@ [299] = { 3, TD|TF, SEN(fchmodat), "fchmodat" }, [300] = { 3, TD|TF, SEN(faccessat), "faccessat" }, [301] = { 6, TD, SEN(pselect6_time32), "pselect6" }, -[302] = { 5, TD, SEN(ppoll), "ppoll" }, +[302] = { 5, TD, SEN(ppoll_time32), "ppoll" }, [303] = { 1, TP, SEN(unshare), "unshare" }, [304] = { 2, 0, SEN(set_robust_list), "set_robust_list" }, [305] = { 3, 0, SEN(get_robust_list), "get_robust_list" }, diff --git a/linux/s390x/syscallent.h b/linux/s390x/syscallent.h index 76d756f4..f0e1a06e 100644 --- a/linux/s390x/syscallent.h +++ b/linux/s390x/syscallent.h @@ -295,7 +295,7 @@ [299] = { 3, TD|TF, SEN(fchmodat), "fchmodat" }, [300] = { 3, TD|TF, SEN(faccessat), "faccessat" }, [301] = { 6, TD, SEN(pselect6_time64), "pselect6" }, -[302] = { 5, TD, SEN(ppoll), "ppoll" }, +[302] = { 5, TD, SEN(ppoll_time64), "ppoll" }, [303] = { 1, TP, SEN(unshare), "unshare" }, [304] = { 2, 0, SEN(set_robust_list), "set_robust_list" }, [305] = { 3, 0, SEN(get_robust_list), "get_robust_list" }, diff --git a/linux/sh/syscallent.h b/linux/sh/syscallent.h index a0b029d3..d234eb67 100644 --- a/linux/sh/syscallent.h +++ b/linux/sh/syscallent.h @@ -315,7 +315,7 @@ [306] = { 3, TD|TF, SEN(fchmodat), "fchmodat" }, [307] = { 3, TD|TF, SEN(faccessat), "faccessat" }, [308] = { 6, TD, SEN(pselect6_time32), "pselect6" }, -[309] = { 5, TD, SEN(ppoll), "ppoll" }, +[309] = { 5, TD, SEN(ppoll_time32), "ppoll" }, [310] = { 1, TP, SEN(unshare), "unshare" }, [311] = { 2, 0, SEN(set_robust_list), "set_robust_list" }, [312] = { 3, 0, SEN(get_robust_list), "get_robust_list" }, diff --git a/linux/sh64/syscallent.h b/linux/sh64/syscallent.h index da0bd754..38236e30 100644 --- a/linux/sh64/syscallent.h +++ b/linux/sh64/syscallent.h @@ -341,7 +341,7 @@ [334] = { 3, TD|TF, SEN(fchmodat), "fchmodat" }, [335] = { 3, TD|TF, SEN(faccessat), "faccessat" }, [336] = { 6, TD, SEN(pselect6_time64), "pselect6" }, -[337] = { 5, TD, SEN(ppoll), "ppoll" }, +[337] = { 5, TD, SEN(ppoll_time64), "ppoll" }, [338] = { 1, TP, SEN(unshare), "unshare" }, [339] = { 2, 0, SEN(set_robust_list), "set_robust_list" }, [340] = { 3, 0, SEN(get_robust_list), "get_robust_list" }, diff --git a/linux/sparc/syscallent.h b/linux/sparc/syscallent.h index c8e5c43f..1d476d98 100644 --- a/linux/sparc/syscallent.h +++ b/linux/sparc/syscallent.h @@ -303,7 +303,7 @@ [295] = { 3, TD|TF, SEN(fchmodat), "fchmodat" }, [296] = { 3, TD|TF, SEN(faccessat), "faccessat" }, [297] = { 6, TD, SEN(pselect6_time32), "pselect6" }, -[298] = { 5, TD, SEN(ppoll), "ppoll" }, +[298] = { 5, TD, SEN(ppoll_time32), "ppoll" }, [299] = { 1, TP, SEN(unshare), "unshare" }, [300] = { 2, 0, SEN(set_robust_list), "set_robust_list" }, [301] = { 3, 0, SEN(get_robust_list), "get_robust_list" }, diff --git a/linux/sparc64/syscallent.h b/linux/sparc64/syscallent.h index 111506d8..fc01b539 100644 --- a/linux/sparc64/syscallent.h +++ b/linux/sparc64/syscallent.h @@ -301,7 +301,7 @@ [295] = { 3, TD|TF, SEN(fchmodat), "fchmodat" }, [296] = { 3, TD|TF, SEN(faccessat), "faccessat" }, [297] = { 6, TD, SEN(pselect6_time64), "pselect6" }, -[298] = { 5, TD, SEN(ppoll), "ppoll" }, +[298] = { 5, TD, SEN(ppoll_time64), "ppoll" }, [299] = { 1, TP, SEN(unshare), "unshare" }, [300] = { 2, 0, SEN(set_robust_list), "set_robust_list" }, [301] = { 3, 0, SEN(get_robust_list), "get_robust_list" }, diff --git a/linux/x32/syscallent.h b/linux/x32/syscallent.h index 360e333c..be7a0eda 100644 --- a/linux/x32/syscallent.h +++ b/linux/x32/syscallent.h @@ -276,7 +276,7 @@ [268] = { 3, TD|TF, SEN(fchmodat), "fchmodat" }, [269] = { 3, TD|TF, SEN(faccessat), "faccessat" }, [270] = { 6, TD, SEN(pselect6_time64), "pselect6" }, -[271] = { 5, TD, SEN(ppoll), "ppoll" }, +[271] = { 5, TD, SEN(ppoll_time64), "ppoll" }, [272] = { 1, TP, SEN(unshare), "unshare" }, [273] = { 2, 0, SEN(printargs), "set_robust_list#64" }, [274] = { 3, 0, SEN(printargs), "get_robust_list#64" }, diff --git a/linux/x86_64/syscallent.h b/linux/x86_64/syscallent.h index b655e3cd..2e2d6108 100644 --- a/linux/x86_64/syscallent.h +++ b/linux/x86_64/syscallent.h @@ -276,7 +276,7 @@ [268] = { 3, TD|TF, SEN(fchmodat), "fchmodat" }, [269] = { 3, TD|TF, SEN(faccessat), "faccessat" }, [270] = { 6, TD, SEN(pselect6_time64), "pselect6" }, -[271] = { 5, TD, SEN(ppoll), "ppoll" }, +[271] = { 5, TD, SEN(ppoll_time64), "ppoll" }, [272] = { 1, TP, SEN(unshare), "unshare" }, [273] = { 2, 0, SEN(set_robust_list), "set_robust_list" }, [274] = { 3, 0, SEN(get_robust_list), "get_robust_list" }, diff --git a/linux/xtensa/syscallent.h b/linux/xtensa/syscallent.h index c6c2a9c6..6b13cd6b 100644 --- a/linux/xtensa/syscallent.h +++ b/linux/xtensa/syscallent.h @@ -270,7 +270,7 @@ [270] = { 4, TD, SEN(vmsplice), "vmsplice" }, [271] = { }, [272] = { 6, TD, SEN(pselect6_time32), "pselect6" }, -[273] = { 5, TD, SEN(ppoll), "ppoll" }, +[273] = { 5, TD, SEN(ppoll_time32), "ppoll" }, [274] = { 6, TD, SEN(epoll_pwait), "epoll_pwait" }, [275] = { 1, TD, SEN(epoll_create1), "epoll_create1" }, [276] = { 0, TD, SEN(inotify_init), "inotify_init" }, diff --git a/pathtrace.c b/pathtrace.c index 44f57b3f..9810814d 100644 --- a/pathtrace.c +++ b/pathtrace.c @@ -288,7 +288,7 @@ pathtrace_match_set(struct tcb *tcp, struct path_set *set) case SEN_select: return match_xselect_args(tcp, tcp->u_arg, set); case SEN_poll: - case SEN_ppoll: + case SEN_ppoll_time32: case SEN_ppoll_time64: { struct pollfd fds; diff --git a/poll.c b/poll.c index 16145546..aa9dcc42 100644 --- a/poll.c +++ b/poll.c @@ -164,10 +164,12 @@ do_ppoll(struct tcb *const tcp, const print_obj_by_addr_fn print_ts, } } -SYS_FUNC(ppoll) +#if HAVE_ARCH_TIME32_SYSCALLS +SYS_FUNC(ppoll_time32) { - return do_ppoll(tcp, print_timespec, sprint_timespec); + return do_ppoll(tcp, print_timespec32, sprint_timespec32); } +#endif SYS_FUNC(ppoll_time64) { -- 2.40.0