Date: Wed, 05 Aug 2020 22:27:35 +0000 From: "Bjoern A. Zeeb" <bz@FreeBSD.org> To: "Emmanuel Vadot" <manu@FreeBSD.org>, "Warner Losh" <imp@bsdimp.com> Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r363862 - head/sys/cam/mmc Message-ID: <676873E2-9199-4EE5-ADEF-59A8F9E1308B@FreeBSD.org> In-Reply-To: <202008042004.074K40ls016193@repo.freebsd.org> References: <202008042004.074K40ls016193@repo.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On 4 Aug 2020, at 20:04, Emmanuel Vadot wrote: > Author: manu > Date: Tue Aug 4 20:04:00 2020 > New Revision: 363862 > URL: https://svnweb.freebsd.org/changeset/base/363862 > > Log: > mmccam: Hold the periph during init > > We need to sleep during this routine so acquire the cam hold too. Turns out that with this my /dev/sddaX.. device nodes are never created. Reverting this and things work a lot better again. > > Reviewed by: imp > Differential Revision: https://reviews.freebsd.org/D25946 > > Modified: > head/sys/cam/mmc/mmc_da.c > > Modified: head/sys/cam/mmc/mmc_da.c > ============================================================================== > --- head/sys/cam/mmc/mmc_da.c Tue Aug 4 20:02:23 2020 (r363861) > +++ head/sys/cam/mmc/mmc_da.c Tue Aug 4 20:04:00 2020 (r363862) > @@ -1109,7 +1109,9 @@ sdda_start_init_task(void *context, int pending) > { > CAM_PRIORITY_NONE); > > cam_periph_lock(periph); > + cam_periph_hold(periph, PRIBIO|PCATCH); > sdda_start_init(context, new_ccb); > + cam_periph_unhold(periph); > cam_periph_unlock(periph); > xpt_free_ccb(new_ccb); > }
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?676873E2-9199-4EE5-ADEF-59A8F9E1308B>