From ef7915fc4bf7204876b4aca6698fd84668676a41 Mon Sep 17 00:00:00 2001 From: Sepherosa Ziehau Date: Fri, 23 Sep 2011 09:51:05 +0800 Subject: [PATCH] kevent(2): Set errno properly If we can't deliver the registration failure information in the changelist, then we should set the errno properly. --- sys/kern/kern_event.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/sys/kern/kern_event.c b/sys/kern/kern_event.c index 0c4c30cfab..bd5ac9a3d9 100644 --- a/sys/kern/kern_event.c +++ b/sys/kern/kern_event.c @@ -625,7 +625,9 @@ kern_kevent(struct kqueue *kq, int nevents, int *res, void *uap, kevp->data = error; lres = *res; kevent_copyoutfn(uap, kevp, 1, res); - if (lres != *res) { + if (*res < 0) { + goto done; + } else if (lres != *res) { nevents--; nerrors++; } -- 2.41.0