Date: Thu, 25 Jul 2013 19:40:04 -0400 From: markj@freebsd.org To: Andriy Gapon <avg@FreeBSD.org> Cc: freebsd-dtrace@FreeBSD.org Subject: Re: [RFC] reworking FreeBSD's SDT implementation Message-ID: <20130725234004.GA78828@raichu> In-Reply-To: <51F14150.7000509@FreeBSD.org> References: <20130703041023.GA82673@raichu> <20130711024500.GA67976@raichu> <20130711210215.GB7506@gmail.com> <20130713234200.GA40803@raichu> <20130714075634.GC2832@gmail.com> <20130722022811.GA14288@raichu> <51F14150.7000509@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Jul 25, 2013 at 06:16:32PM +0300, Andriy Gapon wrote: > on 22/07/2013 05:28 markj@freebsd.org said the following: > > http://people.freebsd.org/~markj/patches/sdt-module-info/20130721-sdt-module-info.diff > > Mark, > > this is a minor suggestion only partially related to your patch. > I think that it would be nice if module loading and unloading events were posted > via EVENTHANDLER(9) mechanism. Then instead of introducing yet more DTrace > related hooks in the kernel code, DTrace modules could just subscribe to those > events. Also, those events could be potentially useful to other consumers > beyond DTrace. > What do you think? I think that's nicer than what I did - I was mostly just following what illumos does. I did consider having some general mechanism for posting module load/unload events, but it's not clear that the hwpmc hooks could use it. The DTrace handlers need to be called with the linker lock exclusively held, and the unload handler needs to be called before linker_file_unload(), so this is at odds with the locations of the hwpmc hooks, and I decided not to bother with it. That said, I think it would be good to use EVENTHANDLER() even if hwpmc can't use it. Calling two DTrace hooks is ugly - originally I just had one, so it wasn't as bad. I'll post an updated patch soon. Thanks! -Mark
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20130725234004.GA78828>