Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 18 Apr 2017 13:02:16 -0600
From:      Alan Somers <asomers@freebsd.org>
To:        "Conrad E. Meyer" <cem@freebsd.org>
Cc:        "src-committers@freebsd.org" <src-committers@freebsd.org>,  "svn-src-all@freebsd.org" <svn-src-all@freebsd.org>,  "svn-src-head@freebsd.org" <svn-src-head@freebsd.org>
Subject:   Re: svn commit: r308155 - in head/sys: amd64/conf cam cam/scsi conf dev/mps geom geom/part kern sys vm
Message-ID:  <CAOtMX2jvzUtBTzqQf7TMvv2TX72LL7SzvtG3uJmVTBY=TqbdSQ@mail.gmail.com>
In-Reply-To: <201610312309.u9VN9qGk027956@repo.freebsd.org>
References:  <201610312309.u9VN9qGk027956@repo.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Oct 31, 2016 at 5:09 PM, Conrad E. Meyer <cem@freebsd.org> wrote:
> Author: cem
> Date: Mon Oct 31 23:09:52 2016
> New Revision: 308155
> URL: https://svnweb.freebsd.org/changeset/base/308155
>
> Log:
>   Add BUF_TRACKING and FULL_BUF_TRACKING buffer debugging
>
>   Upstream the BUF_TRACKING and FULL_BUF_TRACKING buffer debugging code.
>   This can be handy in tracking down what code touched hung bios and bufs
>   last. The full history is especially useful, but adds enough bloat that
>   it shouldn't be enabled in release builds.
>
>   Function names (or arbitrary string constants) are tracked in a
>   fixed-size ring in bufs. Bios gain a pointer to the upper buf for
>   tracking. SCSI CCBs gain a pointer to the upper bio for tracking.
>
>   Reviewed by:  markj
>   Sponsored by: Dell EMC Isilon
>   Differential Revision:        https://reviews.freebsd.org/D8366
>
> Modified:
>   head/sys/amd64/conf/GENERIC
>   head/sys/amd64/conf/GENERIC-NODEBUG
>   head/sys/cam/cam_ccb.h
>   head/sys/cam/cam_periph.c
>   head/sys/cam/cam_xpt.c
>   head/sys/cam/scsi/scsi_da.c
>   head/sys/conf/options
>   head/sys/dev/mps/mps_sas.c
>   head/sys/geom/geom_dev.c
>   head/sys/geom/geom_disk.c
>   head/sys/geom/geom_io.c
>   head/sys/geom/geom_subr.c
>   head/sys/geom/geom_vfs.c
>   head/sys/geom/part/g_part.c
>   head/sys/kern/vfs_bio.c
>   head/sys/kern/vfs_cluster.c
>   head/sys/sys/bio.h
>   head/sys/sys/buf.h
>   head/sys/vm/vm_pager.c

This change is causing panics when I try to create a zpool on an SSD.
The SSD is obviously having problems; it fails UNMAP commands with
ILLEGAL REQUEST, and then fails WRITE SAME with a timeout.  The
offending line is the biotrack call in scsi_da.c at line 4172; bp is
apparently null.  Could you please review this change and ensure that
biotrack is appropriately guarded?

-Alan



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