From owner-soc-status@FreeBSD.ORG Wed Mar 19 17:33:55 2014 Return-Path: Delivered-To: soc-status@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 8932C21C; Wed, 19 Mar 2014 17:33:55 +0000 (UTC) Received: from freebsd.czest.pl (freebsd.czest.pl [212.87.224.105]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 2C54460A; Wed, 19 Mar 2014 17:33:54 +0000 (UTC) Received: from freebsd.czest.pl (freebsd.czest.pl [212.87.224.105]) by freebsd.czest.pl (8.14.5/8.14.5) with ESMTP id s2JHWAKV097524; Wed, 19 Mar 2014 17:32:10 GMT (envelope-from wkoszek@freebsd.czest.pl) Received: (from wkoszek@localhost) by freebsd.czest.pl (8.14.5/8.14.5/Submit) id s2JHWAwZ097523; Wed, 19 Mar 2014 17:32:10 GMT (envelope-from wkoszek) Date: Wed, 19 Mar 2014 17:32:10 +0000 From: "Wojciech A. Koszek" To: yan cui Subject: Re: FreeBSD GSOC proposal in 2014 Message-ID: <20140319173210.GM37327@FreeBSD.org> References: <20140314070218.GA37327@FreeBSD.org> <201403181426.19929.jhb@freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.21 (2010-09-15) X-Spam-Status: No, score=-0.4 required=5.0 tests=RP_MATCHES_RCVD, SPF_HELO_PASS, SPF_PASS autolearn=ham version=3.3.2 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on freebsd.czest.pl X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.2.7 (freebsd.czest.pl [212.87.224.105]); Wed, 19 Mar 2014 17:32:14 +0000 (UTC) Cc: freebsd-hackers@freebsd.org, soc-status@freebsd.org, freebsd-current@freebsd.org X-BeenThere: soc-status@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: Summer of Code Status Reports and Discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Mar 2014 17:33:55 -0000 On Wed, Mar 19, 2014 at 01:08:58PM -0400, yan cui wrote: > Any comments for this thread? There is only three days left for application. > If the proposed idea should not be considered in this year, > it should be removed from the GSoC idea list and I will submit a different > proposal about the CPU hot plug problem in the FreeBSD kernel. Yan, Please submit all possible ideas you have. We'll carefully look into them and judge which one is the most interesting from the FreeBSD point of view. If you were to stay with locking work, given that the work on pthreads was finished, we'd have to look into whether there's anything else to do in this domain. It still can be valuable to perform some improvements, but somebody else with expertise would have to judge. Thanks, Wojciech > > 2014-03-18 15:39 GMT-04:00 yan cui : > > > Really? Maybe I can download his code from previous GSoC. > > Actually, before applying for this idea, I did not scan the projects in > > previous years and just pick up one which I like. > > Are there any possibilities to improve on this part (or this idea should > > not be considered any more)? > > > > Yan > > > > > > 2014-03-18 14:26 GMT-04:00 John Baldwin : > > > > On Friday, March 14, 2014 3:02:18 am Wojciech A. Koszek wrote: > >> > On Thu, Mar 13, 2014 at 09:56:35PM -0400, yan cui wrote: > >> > > Hi all, > >> > > > >> > > I write this mail to make my question clear. I know witness can be > >> used > >> > > to detect wrong lock order in the kernel. However, can it be used to > >> do > >> > > lock profiling (what I mean is to report the information such as which > >> > > locks are most contended and print some related statistics such as > >> calling > >> > > graph, etc)? > >> > > In other words, is it enough to finish the task by porting witness to > >> the > >> > > pthread library? > >> > > > >> > > >> > Yan, > >> > > >> > To my knowledge WITNESS is the only tool for lock order verification. > >> > > >> > For lock profiling in the FreeBSD kernel there's a KTR subsystem. KTR > >> > mechanism is basically like syslog() in the user-space, but for the > >> kernel. > >> > KTR subsystem will receive messages from KTR API that is placed in the > >> > FreeBSD kernel. Messages get stored on the list of some sort. List can > >> be > >> > exported to a file. File you can later analyze. > >> > > >> > Jeff wrote a Python app which can be used for pre-processing the KTR > >> logs > >> > from scheduler and protting them visually. Link: > >> > > >> > http://svnweb.freebsd.org/base/head/tools/sched/schedgraph.py > >> > > >> > Instead of porting witness to pthreads, maybe we could evaluate > >> expanding > >> > WITNESS to cover kern_umtx? This could prove to be more universal. > >> > > >> > Wojciech > >> > >> There is a dedicated lock profiler (LOCK_PROFILING) in the kernel. A > >> previous GSoC student from an earlier year has already re-implemented both > >> LOCK_PROFILING and WITNESS for pthreads. > >> > >> -- > >> John Baldwin > >> > > > > > > > > -- > > Think big; Dream impossible; Make it happen. > > > > > > -- > Think big; Dream impossible; Make it happen. -- Wojciech A. Koszek wkoszek@FreeBSD.czest.pl http://FreeBSD.czest.pl/~wkoszek/