Re: Why need not to PROC_UNLOCK() in kthread_suspend()/kproc_suspend()?

Konstantin Belousov <[email protected]>
Newsgroups gmane.os.freebsd.devel.threading
Message-ID <[email protected]>
On Mon, Dec 26, 2016 at 06:26:48PM +0800, jinjun gao wrote:
> Hi Guys,
> 
> In file sys/kern/kern_kthread.c (
> https://github.com/freebsd/freebsd/blob/master/sys/kern/kern_kthread.c),
> the PROC_LOCK() and PROC_UNLOCK() are used in pairs in one function except
> function kthread_suspend()/kproc_suspend() (
> https://github.com/freebsd/freebsd/blob/master/sys/kern/kern_kthread.c#L177).
> In these two functions, there is only PROC_LOCK(). I checked may related
> function(such as kproc_resume()) and can not find PROC_UNLOCK() to pair the
> one resided in kproc_suspend().  Why need not PROC_UNLOCK() to pair
> PROC_LOCK() in kproc_suspend()/kthread_suspend()? Thanks!
> 
Because later msleep(9) is called with the process lock and PDROP flag.
_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-threads
To unsubscribe, send any mail to "[email protected]"
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.