Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 24 Jun 2012 22:26:34 -0600
From:      "Kenneth D. Merry" <ken@FreeBSD.org>
To:        "Andrey V. Elsukov" <ae@FreeBSD.org>
Cc:        svn-src-head@FreeBSD.org, svn-src-all@FreeBSD.org, src-committers@FreeBSD.org
Subject:   Re: svn commit: r237518 - in head: share/man/man9 sys/cam/scsi sys/dev/xen/blkfront sys/geom
Message-ID:  <20120625042634.GA55640@nargothrond.kdm.org>
In-Reply-To: <4FE7DF6F.6020007@FreeBSD.org>
References:  <201206240429.q5O4T3D7087012@svn.freebsd.org> <4FE7DF6F.6020007@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Jun 25, 2012 at 07:47:59 +0400, Andrey V. Elsukov wrote:
> On 24.06.2012 8:29, Kenneth D. Merry wrote:
> > Author: ken
> > Date: Sun Jun 24 04:29:03 2012
> > New Revision: 237518
> > URL: http://svn.freebsd.org/changeset/base/237518
> > 
> > Log:
> >   Fix a bug which causes a panic in daopen(). The panic is caused by
> >   a da(4) instance going away while GEOM is still probing it.
> >   
> >   In this case, the GEOM disk class instance has been created by
> >   disk_create(), and the taste of the disk is queued in the GEOM
> >   event queue.
> >   
> >   While that event is queued, the da(4) instance goes away.  When the
> >   open call comes into the da(4) driver, it dereferences the freed
> >   (but non-NULL) peripheral pointer provided by GEOM, which results
> >   in a panic.
> >   
> >   The solution is to add a callback to the GEOM disk code that is
> >   called when all of its resources are cleaned up.  This is
> >   implemented inside GEOM by adding an optional callback that is
> >   called when all consumers have detached from a provider, and the
> >   provider is about to be deleted.
> 
> >   
> >   geom.h:		Add a new, optional, providergone callback that
> >   		is called when a provider is about to be deleted.
> >   
> >   MFC after:	5 days
> 
> This will break ABI. If you want to merge this change,
> it is better to use one of spare field in the geom structures.

Done, thanks!

Ken
-- 
Kenneth Merry
ken@FreeBSD.ORG



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