Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 14 Mar 2014 13:07:48 -0400
From:      yan cui <ccuiyyan@gmail.com>
To:        "Wojciech A. Koszek" <wkoszek@freebsd.org>
Cc:        freebsd-hackers@freebsd.org, freebsd-current@freebsd.org, soc-status@freebsd.org
Subject:   Re: FreeBSD GSOC proposal in 2014
Message-ID:  <CAAVq3rknW1Hry2s_Ztpwp0vNrQbRjjPickdiL1Gb6DAY=PQVyQ@mail.gmail.com>
In-Reply-To: <20140314070218.GA37327@FreeBSD.org>
References:  <CAAVq3rkyqmu6fKL9jFX6NmwaiB794H5fN_Ec79GYG39GHfh2Ow@mail.gmail.com> <CAAVq3rmpXSYDbHUys7JQztYRU1qB2OCF%2Bt8HXoZMBbgXznCG2w@mail.gmail.com> <CAAVq3rmQVZqvmF7bg0=9oHBrUDMegvmREKPe4E2RCfQ=3yxo9w@mail.gmail.com> <20140314070218.GA37327@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Thanks for the reply! I will get more information about KTR subsystem.





2014-03-14 3:02 GMT-04:00 Wojciech A. Koszek <wkoszek@freebsd.org>:

> 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
>
> >
> > 2014-03-13 19:19 GMT-04:00 yan cui <ccuiyyan@gmail.com>:
> >
> > > Hi all,
> > >
> > >     I have downloaded the newest FreeBSD-release kernel and scanned
> some
> > > codes.
> > > Wonder to know whether the lock order verification and lock profiling
> tool
> > > mentioned in
> > > the GSoC idea list is witness? Are there any other tools that needs to
> > > look at in the FreeBSD kernel?
> > >
> > > Thanks, Yan
> > >
> > >
> > > 2014-03-09 15:46 GMT-04:00 yan cui <ccuiyyan@gmail.com>:
> > >
> > > Hi All,
> > >>
> > >>      I am a student in Columbia University (Yan Cui), and want to join
> > >> the FreeBSD GSOC 2014. After scanned the idea list posted online, I
> think I
> > >> am interested in
> > >>  the idea titled "user space pthread mutex lock contention profiling
> and
> > >> lock order verification tools". I have several year experiences in
> kernel
> > >> and user locking and believe I can complete the task in time.
> Currently, I
> > >> wonder to know, before submitting an application on GSOC home page,
> do I
> > >> need to submit some documents in the community (to review?)
> > >>
> > >> Best Wishes!
> > >> Yan
> > >>
> > >> --
> > >> Think big; Dream impossible; Make it happen.
> > >>
> > >
> > >
> > >
> > > --
> > > Think big; Dream impossible; Make it happen.
> > >
> >
> >
> >
> > --
> > Think big; Dream impossible; Make it happen.
> > _______________________________________________
> > soc-status@freebsd.org mailing list
> > http://lists.freebsd.org/mailman/listinfo/soc-status
> > To unsubscribe, send any mail to "soc-status-unsubscribe@freebsd.org"
>
> --
> Wojciech A. Koszek
> wkoszek@FreeBSD.czest.pl
> http://FreeBSD.czest.pl/~wkoszek/
>



-- 
Think big; Dream impossible; Make it happen.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAAVq3rknW1Hry2s_Ztpwp0vNrQbRjjPickdiL1Gb6DAY=PQVyQ>