svn commit: r267660 - head/sys/dev/firewire

Justin Hibbits chmeeedalf at gmail.com
Fri Jun 20 01:50:25 UTC 2014


On Fri, 20 Jun 2014 01:45:03 +0000 (UTC)
Alexander Kabaev <kan at FreeBSD.org> wrote:

> Author: kan
> Date: Fri Jun 20 01:45:03 2014
> New Revision: 267660
> URL: http://svnweb.freebsd.org/changeset/base/267660
> 
> Log:
>   Set target->sbp field to valid value when sbp device is created.
>   
>   The sbp_cam_detach_target can be called from sbp_post_explore
> function on the first target that is not really attached and it was
> written with the corresponding safety check in place to tolerate
> that. Unfortunately the recent locking cleanup did add a locking
> assertion that tries to dereference the target->sbp pointer
> unconditionally, which causes less than desirable outcome. Since the
> assertion is useful, just initialize the target sbp pointer once when
> sbp device is being initialized instead of when the target is being
> attached. This makes assertion work in all cases and fixes the crash
> on boot.

Thanks for fixing this!  I was hitting it on my latest kernel rebuilds,
and kept rolling back until I could find the time to fix it.  You beat
me to it.

- Justin


More information about the svn-src-all mailing list