aboutsummaryrefslogtreecommitdiff
path: root/tests/sys/kqueue
diff options
context:
space:
mode:
authorDavid Bright <dab@FreeBSD.org>2018-08-14 19:31:06 +0000
committerDavid Bright <dab@FreeBSD.org>2018-08-14 19:31:06 +0000
commit45bed28c116daf076d33b00d1830c62f9dcd30b3 (patch)
tree3b9158deb3dfce40e02fc42f963c5e9a0e0fbca3 /tests/sys/kqueue
parentb8abc9d8f50766621ef445171b47632bebe2fa1f (diff)
Notes
Diffstat (limited to 'tests/sys/kqueue')
-rw-r--r--tests/sys/kqueue/libkqueue/main.c17
1 files changed, 14 insertions, 3 deletions
diff --git a/tests/sys/kqueue/libkqueue/main.c b/tests/sys/kqueue/libkqueue/main.c
index 9b8945e3f2b91..33a2ed0d3ee8b 100644
--- a/tests/sys/kqueue/libkqueue/main.c
+++ b/tests/sys/kqueue/libkqueue/main.c
@@ -235,10 +235,14 @@ kevent_add(int kqfd, struct kevent *kev,
intptr_t data,
void *udata)
{
+ char *kev_str;
+
EV_SET(kev, ident, filter, flags, fflags, data, NULL);
if (kevent(kqfd, kev, 1, NULL, 0, NULL) < 0) {
- printf("Unable to add the following kevent:\n%s\n",
- kevent_to_str(kev));
+ kev_str = kevent_to_str(kev);
+ printf("Unable to add the following kevent:\n%s\n",
+ kev_str);
+ free(kev_str);
err(1, "kevent(): %s", strerror(errno));
}
}
@@ -246,6 +250,9 @@ kevent_add(int kqfd, struct kevent *kev,
void
kevent_cmp(struct kevent *k1, struct kevent *k2)
{
+ char *kev1_str;
+ char *kev2_str;
+
/* XXX-
Workaround for inconsistent implementation of kevent(2)
*/
@@ -258,8 +265,12 @@ kevent_cmp(struct kevent *k1, struct kevent *k2)
k1->data != k2->data || k1->udata != k2->udata ||
k1->ext[0] != k2->ext[0] || k1->ext[1] != k2->ext[1] ||
k1->ext[0] != k2->ext[2] || k1->ext[0] != k2->ext[3]) {
+ kev1_str = kevent_to_str(k1);
+ kev2_str = kevent_to_str(k2);
printf("kevent_cmp: mismatch:\n %s !=\n %s\n",
- kevent_to_str(k1), kevent_to_str(k2));
+ kev1_str, kev2_str);
+ free(kev1_str);
+ free(kev2_str);
abort();
}
}