Date: Wed, 22 Jul 1998 18:51:22 +0200 From: Stefan Eggers <seggers@semyam.dinoco.de> To: zhihuizhang <bf20761@binghamton.edu> Cc: freebsd-hackers@FreeBSD.ORG, seggers@semyam.dinoco.de Subject: Re: Questions on inactive page queue Message-ID: <199807221651.SAA20605@semyam.dinoco.de> In-Reply-To: Your message of "Tue, 21 Jul 1998 16:52:12 EDT." <Pine.SOL.L3.93.980721164337.25658A-100000@bingsun2>
next in thread | previous in thread | raw e-mail | index | archive | help
> (2) I find that the VM fault routine vm_fault() can call tsleep() to > sleep! This contradict my knowledge that interrupt routine can never go to > sleep. How can this happen? When you get a normal interrupt there might be whatever process run- ning at that time and you would make it go to sleep then if sleeping in interrupts were OK. Now imagine the X server sleeping because of a printer port interrupt for example. And sometimes there even is no process running at all. W/o a process tsleep isn't able to do its work as far as I know. Someone please correct me if I'm wrong with this. In contrast to this a page fault for a process's address space is always associated with that process and that one you put to sleep. You will always pick the right process and are guaranteed to have one. Doing a sleep then is OK. Stefan. -- Stefan Eggers Lu4 yao2 zhi1 ma3 li4, Max-Slevogt-Str. 1 ri4 jiu3 jian4 ren2 xin1. 51109 Koeln Federal Republic of Germany To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199807221651.SAA20605>