From: Sepherosa Ziehau Date: Fri, 23 Sep 2011 01:51:05 +0000 (+0800) Subject: kevent(2): Set errno properly X-Git-Tag: v2.12.0~22 X-Git-Url: https://gitweb.dragonflybsd.org/dragonfly.git/commitdiff_plain/ef7915fc4bf7204876b4aca6698fd84668676a41?hp=fd4e5f0653e4044ac5be25874d42b960bd000d9d kevent(2): Set errno properly If we can't deliver the registration failure information in the changelist, then we should set the errno properly. --- 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++; }