Date: Wed, 25 May 2011 12:11:29 +0200 From: Oliver Pinter <oliver.pntr@gmail.com> To: Konstantin Belousov <kib@freebsd.org> Cc: svn-src-stable@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, svn-src-stable-8@freebsd.org Subject: Re: svn commit: r222274 - stable/8/sys/kern Message-ID: <BANLkTimE9eYRP-nkzVOdreHR_3Ahvvxg1Q@mail.gmail.com> In-Reply-To: <201105250325.p4P3PEvI097170@svn.freebsd.org> References: <201105250325.p4P3PEvI097170@svn.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
MFC to 7-STABLE? On 5/25/11, Konstantin Belousov <kib@freebsd.org> wrote: > Author: kib > Date: Wed May 25 03:25:14 2011 > New Revision: 222274 > URL: http://svn.freebsd.org/changeset/base/222274 > > Log: > MFC r222086: > The protection against the race with dev_rel(), introduced in r163328, > should be extended to cover destroy_devl() calls for the children of the > destroyed dev. > > Modified: > stable/8/sys/kern/kern_conf.c > Directory Properties: > stable/8/sys/ (props changed) > stable/8/sys/amd64/include/xen/ (props changed) > stable/8/sys/cddl/contrib/opensolaris/ (props changed) > stable/8/sys/contrib/dev/acpica/ (props changed) > stable/8/sys/contrib/pf/ (props changed) > > Modified: stable/8/sys/kern/kern_conf.c > ============================================================================== > --- stable/8/sys/kern/kern_conf.c Wed May 25 01:04:12 2011 (r222273) > +++ stable/8/sys/kern/kern_conf.c Wed May 25 03:25:14 2011 (r222274) > @@ -885,6 +885,8 @@ destroy_devl(struct cdev *dev) > /* Remove name marking */ > dev->si_flags &= ~SI_NAMED; > > + dev->si_refcount++; /* Avoid race with dev_rel() */ > + > /* If we are a child, remove us from the parents list */ > if (dev->si_flags & SI_CHILD) { > LIST_REMOVE(dev, si_siblings); > @@ -901,7 +903,6 @@ destroy_devl(struct cdev *dev) > dev->si_flags &= ~SI_CLONELIST; > } > > - dev->si_refcount++; /* Avoid race with dev_rel() */ > csw = dev->si_devsw; > dev->si_devsw = NULL; /* already NULL for SI_ALIAS */ > while (csw != NULL && csw->d_purge != NULL && dev->si_threadcount) { > _______________________________________________ > svn-src-stable@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/svn-src-stable > To unsubscribe, send any mail to "svn-src-stable-unsubscribe@freebsd.org" >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?BANLkTimE9eYRP-nkzVOdreHR_3Ahvvxg1Q>