]> CyberLeo.Net >> Repos - FreeBSD/stable/10.git/commit
MFC r293677 (by asomers): Record physical path information in ZFS Vdevs
authormav <mav@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f>
Sun, 20 Mar 2016 23:43:26 +0000 (23:43 +0000)
committermav <mav@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f>
Sun, 20 Mar 2016 23:43:26 +0000 (23:43 +0000)
commit610363096aecc42e4b363d8ddeb78470ae9a9c45
treedbcb091771c7106a58dbecfd264e4651720a3440
parent3b81e89285afdcc2eada845d11425a13bdbcc38c
MFC r293677 (by asomers): Record physical path information in ZFS Vdevs

sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c:
        If available, record the physical path of a vdev in ZFS meta-data.
        Do this both when opening the vdev, and when receiving an attribute
        change notification from GEOM.

        Make vdev_geom_close() synchronous instead of deferring its work to
        a GEOM event handler. There is no benefit to deferring the work and
        this prevents a future open call from referencing a consumer that is
        scheduled for destruction. The close followed by an immediate open
        will occur during a vdev reprobe triggered by any type of I/O error.

        Consolidate vdev_geom_close() and vdev_geom_detach() into
        vdev_geom_close() and vdev_geom_close_locked(). This also moves the
        cross linking operations between vdev and GEOM consumer into a
        single place (linking in vdev_geom_attach() and unlinking in
        vdev_geom_close_locked()).

Differential Revision:  https://reviews.freebsd.org/D4524

git-svn-id: svn://svn.freebsd.org/base/stable/10@297090 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c