From owner-freebsd-threads@freebsd.org Mon Dec 26 10:26:50 2016 Return-Path: Delivered-To: freebsd-threads@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C1729C90D6F for ; Mon, 26 Dec 2016 10:26:50 +0000 (UTC) (envelope-from gjinjun@gmail.com) Received: from mail-oi0-x233.google.com (mail-oi0-x233.google.com [IPv6:2607:f8b0:4003:c06::233]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 89F30C93 for ; Mon, 26 Dec 2016 10:26:50 +0000 (UTC) (envelope-from gjinjun@gmail.com) Received: by mail-oi0-x233.google.com with SMTP id 128so126558583oig.0 for ; Mon, 26 Dec 2016 02:26:50 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to; bh=dx2hpOjwK1hH/wXjXd2kSSCGWU/i1J4NnZMhlsAk32o=; b=Ui+l3482npcWtaCVky+QVJDt2pqr4bm/g1Vsknse++Uux97kQJh28XR9Omqrkqb3rG JNH8Gteokk0oA8ET4KyOWFbjTXt3/xivGDZU7K4U1SKINM3eatDVCzFebbY0izlIuwcx wZu/+nOeTwLyI9JtkLkAOxUUBplUMtaEj5+m3FEv8Gl9a7s2QitmQ1+Oe13cRUBWbe1R edu4ji/h2oiq10qNG6Kcc22eACzhvpXy3oqs7kN+zr/ZrXgZhoD2kcUCJbFnOtqZctRm faB1OYvz9VsCz5Ex3UiomO4XDpFdd1mSUO7k8RehxbAxby9tB2QPE/Eb0zq6qKJWHoWS iyWA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=dx2hpOjwK1hH/wXjXd2kSSCGWU/i1J4NnZMhlsAk32o=; b=luOTr+zasoT5n52NClhdfozygofDKpGhR6cQc5Z6k2DM9hDDIgxh54/OBzw/wOVUx7 sM2VSx/tO8utA4BuESX9HELw5PCZA9wfkC5RtRvWDD+9oQDoqyiI3uKJuM2FIq8p/B87 o0njaSeMCueCr1HAb3/bm3ofpy9jkt6WMmOzFc82WdF+AByqb5Jxf+k7dsUDc323eFLR mKqlTqmGxTDbO83P8Y5gUYlCaYcmUhjWlSgXKxwfjHUmw7NooUqCPRkUy6xeCh6e8R2d YXaIxS8vxyDe8bxitqCWk+GWGKIpDicDZzEPkiF1DSRR9HhJE2L4Z4mH1KxdZ6A5PdNt E3+Q== X-Gm-Message-State: AIkVDXJxp28vQ0J4U4Y+cfY2ghredtSy8bkj3YHC99PPBCFx4+xR8oZDaMzd/usyzaKvejj0+y1oJKqt+ziZeQ== X-Received: by 10.202.71.131 with SMTP id u125mr13229885oia.170.1482748009466; Mon, 26 Dec 2016 02:26:49 -0800 (PST) MIME-Version: 1.0 Received: by 10.157.33.136 with HTTP; Mon, 26 Dec 2016 02:26:48 -0800 (PST) From: jinjun gao Date: Mon, 26 Dec 2016 18:26:48 +0800 Message-ID: Subject: Why need not to PROC_UNLOCK() in kthread_suspend()/kproc_suspend()? To: freebsd-threads@freebsd.org Content-Type: text/plain; charset=UTF-8 X-Content-Filtered-By: Mailman/MimeDel 2.1.23 X-BeenThere: freebsd-threads@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Threading on FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 26 Dec 2016 10:26:50 -0000 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! regards, Jinjun