Date: Wed, 03 Nov 2010 19:09:22 +0200 From: Andriy Gapon <avg@icyb.net.ua> To: mdf@FreeBSD.org Cc: freebsd-current@FreeBSD.org Subject: Re: MTX_DEF versus MTX_SPIN Message-ID: <4CD19742.2010501@icyb.net.ua> In-Reply-To: <AANLkTimmiQ9VH=cr%2BPJ4Hz=h1Oua%2Bouj7CAv8L__JeNn@mail.gmail.com> References: <AANLkTi=12-dSAZ21DbZgw36YbRGiUq4KZbyCx3SjucPG@mail.gmail.com> <4CD190EF.5080600@icyb.net.ua> <AANLkTimmiQ9VH=cr%2BPJ4Hz=h1Oua%2Bouj7CAv8L__JeNn@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
on 03/11/2010 19:04 mdf@FreeBSD.org said the following: > On Wed, Nov 3, 2010 at 9:42 AM, Andriy Gapon <avg@icyb.net.ua> wrote: >> on 03/11/2010 18:27 mdf@FreeBSD.org said the following: >>> It's not clear to me from the man pages (perhaps I didn't look at the >>> right one?) in which environments I need a spinlock. For example, I >>> wouldn't think it's safe to use a MTX_DEF in a hard interrupt handler >>> (i.e one that was registered with BUS_SETUP_INTR), but I see some code >>> lying around here that does it and nothing I'm aware of has broken. >> >> Such a handler runs in an interrupt thread. >> The "harder" interrupt handler is called interrupt filter in FreeBSD terminology. >> I think that it was formerly known as fast interrupt. > > So a MTX_DEF is okay in that environment? Yes, I think so. > What would "best practices" be considered for what code should be run > in the interrupt handler versus a soft interrupt? Sorry for not going into details, but I personally think that there is no reason to use soft interrupts. If you can do everything in interrupt handler (i.e. on interrupt threads), then that should be all you need. -- Andriy Gapon
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4CD19742.2010501>