From: Guillem Jover Date: Wed, 21 Aug 2019 03:29:52 +0000 (+0200) Subject: [PATCH libaio 28/28] harness: Skip the test if io_pgetevents() is not implemented X-Git-Tag: archive/raspbian/0.3.112-13+rpi1~1^2^2~13 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=ba98d18d27df31bb404ad77eb12a13437227858d;p=libaio.git [PATCH libaio 28/28] harness: Skip the test if io_pgetevents() is not implemented Either the kernel or the syscall wrapper will return -ENOSYS when this syscall is not implemented. So we should cope with this in the test suite and SKIP the test case. This is currently the case for alpha and ia64, even though they have already been wired up very recently in the kernel mainline. Signed-off-by: Guillem Jover Signed-off-by: Jeff Moyer Gbp-Pq: Topic upstream Gbp-Pq: Name 0028-harness-Skip-the-test-if-io_pgetevents-is-not-implem.patch --- diff --git a/harness/cases/22.t b/harness/cases/22.t index c47140d..d6a8986 100644 --- a/harness/cases/22.t +++ b/harness/cases/22.t @@ -98,6 +98,10 @@ int test_main(void) ret = io_pgetevents(ctx, 1, 1, &ev, &to, &sigmask); } while (ret == 0); + /* SKIP if the syscall has not been implemented. */ + if (ret == -ENOSYS) + return 3; + if (ret != -EINTR) { printf("child: io_pgetevents did not set errno to " "EINTR: %s\n", strerror(-ret)); @@ -135,6 +139,9 @@ int test_main(void) kill(p, SIGUSR1); ret = io_pgetevents(ctx, 1, 1, &ev, NULL, &sigmask); + /* SKIP if the syscall has not been implemented. */ + if (ret == -ENOSYS) + return 3; if (ret < 0) { printf("parent: io_pgetevents failed: %s\n", strerror(-ret));