On Thu, 30 Mar 2006, Igor Sysoev wrote:
IS> Ошибка исправлена:
IS>
http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/kern/kern_event.c.diff?r1=1.95&r2=1.96
IS>
IS> Исправление попадёт в 6.1-RELEASE.
Изменение внесено в ветку RELENG_6, желающие могут обновляться, или подождать
очередной 6.1-BETA.
На всякий случай патч в аттаче.
Sincerely,
D.Marck [DM5020, MCK-RIPE, DM3-RIPN]
------------------------------------------------------------------------
*** Dmitry Morozovsky --- D.Marck --- Wild Woozle --- marck@xxxxxxxx ***
------------------------------------------------------------------------
Index: sys/kern/kern_event.c
===================================================================
RCS file: /home/ncvs/src/sys/kern/kern_event.c,v
retrieving revision 1.93.2.1
retrieving revision 1.93.2.2
diff -u -r1.93.2.1 -r1.93.2.2
--- sys/kern/kern_event.c 18 Sep 2005 15:03:31 -0000 1.93.2.1
+++ sys/kern/kern_event.c 2 Apr 2006 08:21:13 -0000 1.93.2.2
@@ -920,11 +920,11 @@
* which will remove it from the list, and NULL kn_knlist.
*/
event = kn->kn_fop->f_event(kn, 0);
- KN_LIST_UNLOCK(kn);
KQ_LOCK(kq);
if (event)
KNOTE_ACTIVATE(kn, 1);
kn->kn_status &= ~KN_INFLUX;
+ KN_LIST_UNLOCK(kn);
} else if (kev->flags & EV_DELETE) {
kn->kn_status |= KN_INFLUX;
KQ_UNLOCK(kq);