Date: Sun, 5 Apr 1998 14:54:27 +0400 From: =?koi8-r?B?4c7E0sXKIP7F0s7P1w==?= <ache@nagual.pp.ru> To: phk@FreeBSD.ORG, current@FreeBSD.ORG Subject: dead hang after ppp started (with workaround) Message-ID: <19980405145427.14961@nagual.pp.ru>
next in thread | raw e-mail | index | archive | help
This change in kern_time.c 1.46 cause dead hang after ppp started, stack
looks like:
vec1(...)
softclock(...)
doreti_swi(...)
below is workaround (I not shure it is right, just back out to 1.45 code,
but it work!)
Index: kern_time.c
===================================================================
RCS file: /home/ncvs/src/sys/kern/kern_time.c,v
retrieving revision 1.46
retrieving revision 1.45
diff -c -r1.46 -r1.45
*** kern_time.c 1998/04/04 18:46:13 1.46
--- kern_time.c 1998/04/04 13:25:25 1.45
***************
*** 536,544 ****
if (uap->which == ITIMER_REAL) {
if (timerisset(&p->p_realtimer.it_value))
untimeout(realitexpire, (caddr_t)p, p->p_ithandle);
! if (timerisset(&aitv.it_value))
p->p_ithandle = timeout(realitexpire, (caddr_t)p,
! tvtohz(&aitv.it_value));
p->p_realtimer = aitv;
} else
p->p_stats->p_timer[uap->which] = aitv;
--- 536,547 ----
if (uap->which == ITIMER_REAL) {
if (timerisset(&p->p_realtimer.it_value))
untimeout(realitexpire, (caddr_t)p, p->p_ithandle);
! if (timerisset(&aitv.it_value)) {
! getmicrotime(&ctv);
! timevaladd(&aitv.it_value, &ctv);
p->p_ithandle = timeout(realitexpire, (caddr_t)p,
! hzto(&aitv.it_value));
! }
p->p_realtimer = aitv;
} else
p->p_stats->p_timer[uap->which] = aitv;
--
Andrey A. Chernov
http://www.nagual.pp.ru/~ache/
MTH/SH/HE S-- W-- N+ PEC>+ D A a++ C G>+ QH+(++) 666+>++ Y
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19980405145427.14961>
