From nobody@FreeBSD.org  Sun Jan  3 18:35:58 2010
Return-Path: <nobody@FreeBSD.org>
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
	by hub.freebsd.org (Postfix) with ESMTP id E312F106566C
	for <freebsd-gnats-submit@FreeBSD.org>; Sun,  3 Jan 2010 18:35:57 +0000 (UTC)
	(envelope-from nobody@FreeBSD.org)
Received: from www.freebsd.org (www.freebsd.org [IPv6:2001:4f8:fff6::21])
	by mx1.freebsd.org (Postfix) with ESMTP id D01758FC0A
	for <freebsd-gnats-submit@FreeBSD.org>; Sun,  3 Jan 2010 18:35:57 +0000 (UTC)
Received: from www.freebsd.org (localhost [127.0.0.1])
	by www.freebsd.org (8.14.3/8.14.3) with ESMTP id o03IZvuv013440
	for <freebsd-gnats-submit@FreeBSD.org>; Sun, 3 Jan 2010 18:35:57 GMT
	(envelope-from nobody@www.freebsd.org)
Received: (from nobody@localhost)
	by www.freebsd.org (8.14.3/8.14.3/Submit) id o03IZvZx013439;
	Sun, 3 Jan 2010 18:35:57 GMT
	(envelope-from nobody)
Message-Id: <201001031835.o03IZvZx013439@www.freebsd.org>
Date: Sun, 3 Jan 2010 18:35:57 GMT
From: Przemyslaw Laczynski <torindel@gmail.com>
To: freebsd-gnats-submit@FreeBSD.org
Subject: [zfs] [patch] race condition on zpool create
X-Send-Pr-Version: www-3.1
X-GNATS-Notify:

>Number:         142271
>Category:       kern
>Synopsis:       [zfs] [patch] race condition on zpool create
>Confidential:   no
>Severity:       serious
>Priority:       high
>Responsible:    pjd
>State:          closed
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Sun Jan 03 18:40:00 UTC 2010
>Closed-Date:    Sat May 08 10:43:01 UTC 2010
>Last-Modified:  Sat May 08 10:43:01 UTC 2010
>Originator:     Przemyslaw Laczynski
>Release:        9.0-CURRENT@20100102
>Organization:
>Environment:
FreeBSD  9.0-CURRENT FreeBSD 9.0-CURRENT #1: Sat Jan  2 01:01:24 UTC 2010     root@:/usr/src/sys/amd64/compile/GENERIC  amd64
>Description:
Race condition in zfs module when running vdev_geom_open():
It first opens geom by path in read/write/exclusive mode and checks device guid comparing to cache, if guid mismatches it closes geom (generating g_dev_taste event as it was last write client on geom) and searches all system devices looking for cached guid, if that still fails it tries to open geom by path in read/write/exclusive and fails because g_dev_taste kicked in just before with read/exclusive mode.

Found this problem both on 8.0-RELEASE and 9.0-CURRENT.

Full log for bored ones:
localhost# sysctl vfs.zfs.debug=5
vfs.zfs.debug: 0 -> 5
localhost# sysctl kern.geom.debugflags=5
kern.geom.debugflags: 0 -> 5
localhost# zpool create -f tank md0p2

Jan  3 18:56:14 localhost kernel: g_dev_open(md0p2, 1, 8192, 0xffffff0001a4b700)
Jan  3 18:56:14 localhost kernel: g_access(0xffffff0001929d00(md0p2), 1, 0, 0)
Jan  3 18:56:14 localhost kernel: open delta:[r1w0e0] old:[r0w0e0] provider:[r0w0e0] 0xffffff0001c89700(md0p2)
Jan  3 18:56:14 localhost kernel: g_part_access(md0p2,1,0,0)
Jan  3 18:56:14 localhost kernel: g_access(0xffffff00018b8d00(md0), 1, 0, 0)
Jan  3 18:56:14 localhost kernel: open delta:[r1w0e0] old:[r0w0e0] provider:[r0w0e0] 0xffffff0001c89d00(md0)
Jan  3 18:56:14 localhost kernel: g_dev_close(md0p2, 1, 8192, 0xffffff0001a4b700)
Jan  3 18:56:14 localhost kernel: g_access(0xffffff0001929d00(md0p2), -1, 0, 0)
Jan  3 18:56:14 localhost kernel: open delta:[r-1w0e0] old:[r1w0e0] provider:[r1w0e0] 0xffffff0001c89700(md0p2)
Jan  3 18:56:14 localhost kernel: g_part_access(md0p2,-1,0,0)
Jan  3 18:56:14 localhost kernel: g_access(0xffffff00018b8d00(md0), -1, 0, 0)
Jan  3 18:56:14 localhost kernel: open delta:[r-1w0e0] old:[r1w0e0] provider:[r1w0e0] 0xffffff0001c89d00(md0)
Jan  3 18:56:14 localhost kernel: g_dev_open(md0p2, 1, 8192, 0xffffff0001a4b700)
Jan  3 18:56:14 localhost kernel: g_access(0xffffff0001929d00(md0p2), 1, 0, 0)
Jan  3 18:56:14 localhost kernel: open delta:[r1w0e0] old:[r0w0e0] provider:[r0w0e0] 0xffffff0001c89700(md0p2)
Jan  3 18:56:14 localhost kernel: g_part_access(md0p2,1,0,0)
Jan  3 18:56:14 localhost kernel: g_access(0xffffff00018b8d00(md0), 1, 0, 0)
Jan  3 18:56:14 localhost kernel: open delta:[r1w0e0] old:[r0w0e0] provider:[r0w0e0] 0xffffff0001c89d00(md0)
Jan  3 18:56:14 localhost kernel: g_dev_close(md0p2, 1, 8192, 0xffffff0001a4b700)
Jan  3 18:56:14 localhost kernel: g_access(0xffffff0001929d00(md0p2), -1, 0, 0)
Jan  3 18:56:14 localhost kernel: open delta:[r-1w0e0] old:[r1w0e0] provider:[r1w0e0] 0xffffff0001c89700(md0p2)
Jan  3 18:56:14 localhost kernel: g_part_access(md0p2,-1,0,0)
Jan  3 18:56:14 localhost kernel: g_access(0xffffff00018b8d00(md0), -1, 0, 0)
Jan  3 18:56:14 localhost kernel: open delta:[r-1w0e0] old:[r1w0e0] provider:[r1w0e0] 0xffffff0001c89d00(md0)
Jan  3 18:56:14 localhost kernel: g_dev_open(md0p2, 1, 8192, 0xffffff0001a4b700)
Jan  3 18:56:14 localhost kernel: g_access(0xffffff0001929d00(md0p2), 1, 0, 0)
Jan  3 18:56:14 localhost kernel: open delta:[r1w0e0] old:[r0w0e0] provider:[r0w0e0] 0xffffff0001c89700(md0p2)
Jan  3 18:56:14 localhost kernel: g_part_access(md0p2,1,0,0)
Jan  3 18:56:14 localhost kernel: g_access(0xffffff00018b8d00(md0), 1, 0, 0)
Jan  3 18:56:14 localhost kernel: open delta:[r1w0e0] old:[r0w0e0] provider:[r0w0e0] 0xffffff0001c89d00(md0)
Jan  3 18:56:14 localhost kernel: g_dev_close(md0p2, 1, 8192, 0xffffff0001a4b700)
Jan  3 18:56:14 localhost kernel: g_access(0xffffff0001929d00(md0p2), -1, 0, 0)
Jan  3 18:56:14 localhost kernel: open delta:[r-1w0e0] old:[r1w0e0] provider:[r1w0e0] 0xffffff0001c89700(md0p2)
Jan  3 18:56:14 localhost kernel: g_part_access(md0p2,-1,0,0)
Jan  3 18:56:14 localhost kernel: g_access(0xffffff00018b8d00(md0), -1, 0, 0)
Jan  3 18:56:14 localhost kernel: open delta:[r-1w0e0] old:[r1w0e0] provider:[r1w0e0] 0xffffff0001c89d00(md0)
Jan  3 18:56:14 localhost kernel: vdev_geom_open_by_path:466[1]: Found provider by name /dev/md0p2.
Jan  3 18:56:14 localhost kernel: vdev_geom_attach:112[1]: Attaching to md0p2.
Jan  3 18:56:14 localhost kernel: g_access(0xffffff0001cbf180(md0p2), 1, 1, 1)
Jan  3 18:56:14 localhost kernel: open delta:[r1w1e1] old:[r0w0e0] provider:[r0w0e0] 0xffffff0001c89700(md0p2)
Jan  3 18:56:14 localhost kernel: g_part_access(md0p2,1,1,1)
Jan  3 18:56:14 localhost kernel: g_access(0xffffff00018b8d00(md0), 1, 1, 2)
Jan  3 18:56:14 localhost kernel: open delta:[r1w1e2] old:[r0w0e0] provider:[r0w0e0] 0xffffff0001c89d00(md0)
Jan  3 18:56:14 localhost kernel: g_post_event_x(0xffffffff8054bda0, 0xffffff0001c89d00, 2, 0)
Jan  3 18:56:14 localhost kernel: ref 0xffffff0001c89d00
Jan  3 18:56:14 localhost kernel: g_post_event_x(0xffffffff8054bda0, 0xffffff0001c89700, 2, 0)
Jan  3 18:56:14 localhost kernel: ref 0xffffff0001c89700
Jan  3 18:56:14 localhost kernel: vdev_geom_attach:133[1]: Created geom and consumer for md0p2.
Jan  3 18:56:14 localhost kernel: vdev_geom_read_guid:g3_0s1l[ic1e]_:s poiled(0xffffff0001cb6300/md0p2)Reading guid from md0p2...
Jan  3 18:56:14 localhost kernel: g_wither_geom(0xffffff0001937c00(md0p2))
Jan  3 18:56:14 localhost kernel:
Jan  3 18:56:14 localhost kernel: g_orphan_provider(0xffffff0001939d00(gptid/a8cfde45-f897-11de-9761-001c251ceb12), 6)
Jan  3 18:56:14 localhost kernel: g_orphan_register(gptid/a8cfde45-f897-11de-9761-001c251ceb12)
Jan  3 18:56:14 localhost kernel: g_dev_orphan(0xffffff00018b9200(gptid/a8cfde45-f897-11de-9761-001c251ceb12))
Jan  3 18:56:14 localhost kernel: g_detach(0xffffff00018b9200)
Jan  3 18:56:14 localhost kernel: g_destroy_consumer(0xffffff00018b9200)
Jan  3 18:56:14 localhost kernel: g_destroy_geom(0xffffff0001c89300(gptid/a8cfde45-f897-11de-9761-001c251ceb12))vdev_geom_read_guid:339[1]: guid for
Jan  3 18:56:14 localhost kernel: g_detach(0xffffff0001cb6300)
Jan  3 18:56:14 localhost kernel:
Jan  3 18:56:14 localhost kernel: g_destroy_consumer(0xffffff0001cb6300)
Jan  3 18:56:14 localhost kernel: g_destroy_geom(0xffffff0001937c00(md0p2))
Jan  3 18:56:14 localhost kernel: vdev_geom_detach:173[1]: Closing access to md0p2.
Jan  3 18:56:14 localhost kernel: g_access(0xffffff0001cbf180(md0p2), -1, 0, -1)
Jan  3 18:56:15 localhost kernel:
Jan  3 18:56:15 localhost kernel: open delta:[r-1w0e-1] old:[r1w1e1] provider:[r1w1e1] 0xffffff0001c89700(md0p2)
Jan  3 18:56:15 localhost kernel: g_part_access(md0p2,-1,0,-1)
Jan  3 18:56:15 localhost kernel: g_access(0xffffff00018b8d00(md0), -1, 0, -1)
Jan  3 18:56:15 localhost kernel: open delta:[r-1w0e-1] old:[r1w1e2] provider:[r1w1e2] 0xffffff0001c89d00(md0)
Jan  3 18:56:15 localhost kernel: vdev_geom_detach:177[1]: Destroyed consumer to md0p2.
Jan  3 18:56:15 localhost kernel: g_access(0xffffff0001cbf180(md0p2), 0, -1, 0)
Jan  3 18:56:15 localhost kernel: open delta:[r0w-1e0] old:[r0w1e0] provider:[r0w1e0] 0xffffff0001c89700(md0p2)
Jan  3 18:56:15 localhost kernel: g_part_access(md0p2,0,-1,0)
Jan  3 18:56:15 localhost kernel: g_access(0xffffff00018b8d00(md0), 0, -1, -1)
Jan  3 18:56:15 localhost kernel: open delta:[r0w-1e-1] old:[r0w1e1] provider:[r0w1e1] 0xffffff0001c89d00(md0)
Jan  3 18:56:15 localhost kernel: g_post_event_x(0xffffffff8054bb40, 0xffffff0001c89d00, 2, 0)
Jan  3 18:56:15 localhost kernel: ref 0xffffff0001c89d00
Jan  3 18:56:15 localhost kernel: g_post_event_x(0xffffffff8054bb40, 0xffffff0001c89700, 2, 0)
Jan  3 18:56:15 localhost kernel: ref 0xffffff0001c89700
Jan  3 18:56:15 localhost kernel: g_detach(0xffffff0001cbf180)
Jan  3 18:56:15 localhost kernel: g_destroy_consumer(0xffffff0001cbf180)
Jan  3 18:56:15 localhost kernel: vdev_geom_detach:185[1]: Destroyed geom zfs::vdev.
Jan  3 18:56:15 localhost kernel: g_wither_geom(0xffffff0001a56200(zfs::vdev))
Jan  3 18:56:15 localhost kernel: vdev_geom_open_by_path:477[1]: guid mismatch for provider /dev/md0p2: 15376817640459635577 != 338386095307402449.
Jan  3 18:56:15 localhost kernel: vdev_geom_open_by_guid:43g5[_e1l]i:_ taste(ELI, md0)Searching by guid [15376817640459635577].
Jan  3 18:56:15 localhost kernel: g_label_taste(LABEL, md0)
Jan  3 18:56:15 localhost kernel: g_post_event_x(0xffffffff810a7b10, 0xffffff00015fe9a0, 2, 262144)
Jan  3 18:56:15 localhost kernel: g_access(0xffffff0001cba600(md0), 1, 0, 0)
Jan  3 18:56:15 localhost kernel:
Jan  3 18:56:15 localhost kernel: open delta:[r1w0e0] old:[r0w0e0] provider:[r0w0e0] 0xffffff0001c89d00(md0)
Jan  3 18:56:16 localhost kernel:
Jan  3 18:56:16 localhost kernel: g_access(0xffffff0001cba600(md0), -1, 0, 0)
Jan  3 18:56:16 localhost kernel: open delta:[r-1w0e0] old:[r1w0e0] provider:[r1w0e0] 0xffffff0001c89d00(md0)
Jan  3 18:56:16 localhost kernel: g_detach(0xffffff0001cba600)
Jan  3 18:56:16 localhost kernel: g_destroy_consumer(0xffffff0001cba600)
Jan  3 18:56:16 localhost kernel: g_destroy_geom(0xffffff0001bc4500(label:taste))
Jan  3 18:56:16 localhost kernel: g_eli_taste(ELI, md0p2)
Jan  3 18:56:16 localhost kernel: g_part_taste(PART,md0p2)
Jan  3 18:56:16 localhost kernel: g_access(0xffffff0001cbf380(md0p2), 1, 0, 0)
Jan  3 18:56:16 localhost kernel: open delta:[r1w0e0] old:[r0w0e0] provider:[r0w0e0] 0xffffff0001c89700(md0p2)
Jan  3 18:56:16 localhost kernel: g_part_access(md0p2,1,0,0)
Jan  3 18:56:16 localhost kernel: g_access(0xffffff00018b8d00(md0), 1, 0, 0)
Jan  3 18:56:16 localhost kernel: open delta:[r1w0e0] old:[r0w0e0] provider:[r0w0e0] 0xffffff0001c89d00(md0)
Jan  3 18:56:16 localhost kernel: g_access(0xffffff0001cbf380(md0p2), -1, 0, 0)
Jan  3 18:56:16 localhost kernel: open delta:[r-1w0e0] old:[r1w0e0] provider:[r1w0e0] 0xffffff0001c89700(md0p2)
Jan  3 18:56:16 localhost kernel: g_part_access(md0p2,-1,0,0)
Jan  3 18:56:16 localhost kernel: g_access(0xffffff00018b8d00(md0), -1, 0, 0)
Jan  3 18:56:16 localhost kernel: open delta:[r-1w0e0] old:[r1w0e0] provider:[r1w0e0] 0xffffff0001c89d00(md0)
Jan  3 18:56:16 localhost kernel: g_wither_geom(0xffffff0001afee00(md0p2))
Jan  3 18:56:16 localhost kernel: g_label_taste(LABEL, md0p2)
Jan  3 18:56:16 localhost kernel: g_access(0xffffff0001cb7180(md0p2), 1, 0, 0)
Jan  3 18:56:16 localhost kernel: open delta:[r1w0e0] old:[r0w0e0] provider:[r0w0e0] 0xffffff0001c89700(md0p2)
Jan  3 18:56:16 localhost kernel: g_part_access(md0p2,1,0,0)
Jan  3 18:56:16 localhost kernel: g_access(0xffffff00018b8d00(md0), 1, 0, 0)
Jan  3 18:56:16 localhost kernel: open delta:[r1w0e0] old:[r0w0e0] provider:[r0w0e0] 0xffffff0001c89d00(md0)
Jan  3 18:56:16 localhost kernel: g_access(0xffffff0001cbad80(md0p2), 1, 0, 0)
Jan  3 18:56:16 localhost kernel: open delta:[r1w0e0] old:[r0w0e0] provider:[r1w0e0] 0xffffff0001c89700(md0p2)
Jan  3 18:56:16 localhost kernel: g_part_access(md0p2,1,0,0)
Jan  3 18:56:16 localhost kernel: g_access(0xffffff00018b8d00(md0), 1, 0, 0)
Jan  3 18:56:16 localhost kernel: open delta:[r1w0e0] old:[r1w0e0] provider:[r1w0e0] 0xffffff0001c89d00(md0)
Jan  3 18:56:16 localhost kernel:
Jan  3 18:56:16 localhost kernel: g_access(0xffffff0001cbad80(md0p2), -1, 0, 0)
Jan  3 18:56:17 localhost kernel:
Jan  3 18:56:17 localhost kernel: open delta:[r-1w0e0] old:[r1w0e0] provider:[r2w0e0] 0xffffff0001c89700(md0p2)
Jan  3 18:56:17 localhost kernel: g_part_access(md0p2,-1,0,0)
Jan  3 18:56:17 localhost kernel: g_access(0xffffff00018b8d00(md0), -1, 0, 0)
Jan  3 18:56:17 localhost kernel: open delta:[r-1w0e0] old:[r2w0e0] provider:[r2w0e0] 0xffffff0001c89d00(md0)
Jan  3 18:56:17 localhost kernel: g_slice_config(md0p2, 0, 1)
Jan  3 18:56:17 localhost kernel: g_post_event_x(0xffffffff8054bb40, 0xffffff0001a56900, 2, 0)
Jan  3 18:56:17 localhost kernel: ref 0xffffff0001a56900
Jan  3 18:56:17 localhost kernel: ref 0xffffff0001bfba00
Jan  3 18:56:17 localhost kernel: g_access(0xffffff0001cb7180(md0p2), -1, 0, 0)
Jan  3 18:56:17 localhost kernel: open delta:[r-1w0e0] old:[r1w0e0] provider:[r1w0e0] 0xffffff0001c89700(md0p2)
Jan  3 18:56:17 localhost kernel: g_part_access(md0p2,-1,0,0)
Jan  3 18:56:17 localhost kernel: g_access(0xffffff00018b8d00(md0), -1, 0, 0)
Jan  3 18:56:17 localhost kernel: open delta:[r-1w0e0] old:[r1w0e0] provider:[r1w0e0] 0xffffff0001c89d00(md0)
Jan  3 18:56:17 localhost kernel: g_detach(0xffffff0001cb7180)
Jan  3 18:56:17 localhost kernel: g_destroy_consumer(0xffffff0001cb7180)
Jan  3 18:56:17 localhost kernel: g_destroy_geom(0xffffff0001c89e00(label:taste))
Jan  3 18:56:17 localhost kernel: g_access(0xffffff0001929d80(acd0t01), 1, 0, 0)
Jan  3 18:56:17 localhost kernel: open delta:[r1w0e0] old:[r0w0e0] provider:[r0w0e0] 0xffffff0001333b00(acd0t01)
Jan  3 18:56:17 localhost kernel: vdev_geom_read_guid:301[1]: Reading guid from acd0t01...
Jan  3 18:56:22 localhost kernel: g_access(0xffffff0001929d80(acd0t01), -1, 0, 0)
Jan  3 18:56:22 localhost kernel: open delta:[r-1w0e0] old:[r1w0e0] provider:[r1w0e0] 0xffffff0001333b00(acd0t01)
Jan  3 18:56:22 localhost kernel: g_detach(0xffffff0001929d80)
Jan  3 18:56:22 localhost kernel: g_access(0xffffff0001929d80(acd0), 1, 0, 0)
Jan  3 18:56:22 localhost kernel: open delta:[r1w0e0] old:[r0w0e0] provider:[r0w0e0] 0xffffff0001827b00(acd0)
Jan  3 18:56:22 localhost kernel: vdev_geom_read_guid:301[1]: Reading guid from acd0...
Jan  3 18:56:23 localhost kernel: g_access(0xffffff0001929d80(acd0), -1, 0, 0)
Jan  3 18:56:23 localhost kernel: open delta:[r-1w0e0] old:[r1w0e0] provider:[r1w0e0] 0xffffff0001827b00(acd0)
Jan  3 18:56:23 localhost kernel: g_detach(0xffffff0001929d80)
Jan  3 18:56:23 localhost kernel: g_access(0xffffff0001929d80(da0), 1, 0, 0)
Jan  3 18:56:23 localhost kernel: open delta:[r1w0e0] old:[r0w0e0] provider:[r1w1e2] 0xffffff00018a0e00(da0)
Jan  3 18:56:23 localhost kernel: g_disk_access(da0, 1, 0, 0)
Jan  3 18:56:23 localhost kernel: vdev_geom_read_guid:301[1]: Reading guid from da0...
Jan  3 18:56:24 localhost kernel:
Jan  3 18:56:24 localhost kernel: g_access(0xffffff0001929d80(da0), -1, 0, 0)
Jan  3 18:56:24 localhost kernel: open delta:[r-1w0e0] old:[r1w0e0] provider:[r2w1e2] 0xffffff00018a0e00(da0)
Jan  3 18:56:24 localhost kernel: g_disk_access(da0, -1, 0, 0)
Jan  3 18:56:24 localhost kernel:
Jan  3 18:56:24 localhost kernel: g_detach(0xffffff0001929d80)
Jan  3 18:56:24 localhost kernel: g_access(0xffffff0001929d80(ad4), 1, 0, 0)
Jan  3 18:56:25 localhost kernel:
Jan  3 18:56:25 localhost kernel: open delta:[r1w0e0] old:[r0w0e0] provider:[r0w0e0] 0xffffff00018d1600(ad4)
Jan  3 18:56:25 localhost kernel: g_disk_access(ad4, 1, 0, 0)
Jan  3 18:56:25 localhost kernel: vdev_geom_read_guid:301[1]: Reading guid from ad4...
Jan  3 18:56:25 localhost kernel: g_access(0xffffff0001929d80(ad4), -1, 0, 0)
Jan  3 18:56:25 localhost kernel: open delta:[r-1w0e0] old:[r1w0e0] provider:[r1w0e0] 0xffffff00018d1600(ad4)
Jan  3 18:56:25 localhost kernel: g_disk_access(ad4, -1, 0, 0)
Jan  3 18:56:25 localhost kernel: g_detach(0xffffff0001929d80)
Jan  3 18:56:25 localhost kernel: g_access(0xffffff0001929d80(md0p2), 1, 0, 0)
Jan  3 18:56:25 localhost kernel: open delta:[r1w0e0] old:[r0w0e0] provider:[r0w0e0] 0xffffff0001c89700(md0p2)
Jan  3 18:56:25 localhost kernel: g_part_access(md0p2,1,0,0)
Jan  3 18:56:25 localhost kernel: g_access(0xffffff00018b8d00(md0), 1, 0, 0)
Jan  3 18:56:25 localhost kernel: open delta:[r1w0e0] old:[r0w0e0] provider:[r0w0e0] 0xffffff0001c89d00(md0)
Jan  3 18:56:25 localhost kernel: vdev_geom_read_guid:301[1]: Reading guid from md0p2...
Jan  3 18:56:25 localhost kernel: vdev_geom_read_guid:339[1]: guid for md0p2 is 338386095307402449
Jan  3 18:56:25 localhost kernel: g_access(0xffffff0001929d80(md0p2), -1, 0, 0)
Jan  3 18:56:25 localhost kernel: open delta:[r-1w0e0] old:[r1w0e0] provider:[r1w0e0] 0xffffff0001c89700(md0p2)
Jan  3 18:56:25 localhost kernel: g_part_access(md0p2,-1,0,0)
Jan  3 18:56:25 localhost kernel: g_access(0xffffff00018b8d00(md0), -1, 0, 0)
Jan  3 18:56:25 localhost kernel: open delta:[r-1w0e0] old:[r1w0e0] provider:[r1w0e0] 0xffffff0001c89d00(md0)
Jan  3 18:56:25 localhost kernel: g_detach(0xffffff0001929d80)
Jan  3 18:56:25 localhost kernel: g_access(0xffffff0001929d80(md0p1), 1, 0, 0)
Jan  3 18:56:25 localhost kernel: open delta:[r1w0e0] old:[r0w0e0] provider:[r0w0e0] 0xffffff0001bc4800(md0p1)
Jan  3 18:56:25 localhost kernel: g_part_access(md0p1,1,0,0)
Jan  3 18:56:25 localhost kernel: g_access(0xffffff00018b8d00(md0), 1, 0, 0)
Jan  3 18:56:25 localhost kernel: open delta:[r1w0e0] old:[r0w0e0] provider:[r0w0e0] 0xffffff0001c89d00(md0)
Jan  3 18:56:25 localhost kernel: vdev_geom_read_guid:301[1]: Reading guid from md0p1...
Jan  3 18:56:25 localhost kernel: g_access(0xffffff0001929d80(md0p1), -1, 0, 0)
Jan  3 18:56:25 localhost kernel: open delta:[r-1w0e0] old:[r1w0e0] provider:[r1w0e0] 0xffffff0001bc4800(md0p1)
Jan  3 18:56:25 localhost kernel: g_part_access(md0p1,-1,0,0)
Jan  3 18:56:25 localhost kernel: g_access(0xffffff00018b8d00(md0), -1, 0, 0)
Jan  3 18:56:25 localhost kernel: open delta:[r-1w0e0] old:[r1w0e0] provider:[r1w0e0] 0xffffff0001c89d00(md0)
Jan  3 18:56:25 localhost kernel: g_detach(0xffffff0001929d80)
Jan  3 18:56:25 localhost kernel: g_access(0xffffff0001929d80(da0p2), 1, 0, 0)
Jan  3 18:56:25 localhost kernel: open delta:[r1w0e0] old:[r0w0e0] provider:[r1w1e1] 0xffffff00018d1400(da0p2)
Jan  3 18:56:25 localhost kernel: g_part_access(da0p2,1,0,0)
Jan  3 18:56:25 localhost kernel: g_access(0xffffff000188aa00(da0), 1, 0, 0)
Jan  3 18:56:25 localhost kernel: open delta:[r1w0e0] old:[r1w1e2] provider:[r1w1e2] 0xffffff00018a0e00(da0)
Jan  3 18:56:25 localhost kernel: g_disk_access(da0, 1, 0, 0)
Jan  3 18:56:25 localhost kernel: vdev_geom_read_guid:301[1]: Reading guid from da0p2...
Jan  3 18:56:25 localhost kernel: g_access(0xffffff0001929d80(da0p2), -1, 0, 0)
Jan  3 18:56:25 localhost kernel: open delta:[r-1w0e0] old:[r1w0e0] provider:[r2w1e1] 0xffffff00018d1400(da0p2)
Jan  3 18:56:25 localhost kernel: g_part_access(da0p2,-1,0,0)
Jan  3 18:56:25 localhost kernel: g_access(0xffffff000188aa00(da0), -1, 0, 0)
Jan  3 18:56:25 localhost kernel:
Jan  3 18:56:25 localhost kernel: open delta:[r-1w0e0] old:[r2w1e2] provider:[r2w1e2] 0xffffff00018a0e00(da0)
Jan  3 18:56:25 localhost kernel: g_disk_access(da0, -1, 0, 0)
Jan  3 18:56:25 localhost kernel:
Jan  3 18:56:25 localhost kernel: g_detach(0xffffff0001929d80)
Jan  3 18:56:25 localhost kernel: g_access(0xffffff0001929d80(da0p1), 1, 0, 0)
Jan  3 18:56:25 localhost kernel: open delta:[r1w0e0] old:[r0w0e0] provider:[r0w0e0] 0xffffff0001333c00(da0p1)
Jan  3 18:56:25 localhost kernel: g_part_access(da0p1,1,0,0)
Jan  3 18:56:25 localhost kernel: g_access(0xffffff000188aa00(da0), 1, 0, 0)
Jan  3 18:56:25 localhost kernel: open delta:[r1w0e0] old:[r1w1e2] provider:[r1w1e2] 0xffffff00018a0e00(da0)
Jan  3 18:56:25 localhost kernel: g_disk_access(da0, 1, 0, 0)
Jan  3 18:56:25 localhost kernel: vdev_geom_read_guid:301[1]: Reading guid from da0p1...
Jan  3 18:56:25 localhost kernel: g_access(0xffffff0001929d80(da0p1), -1, 0, 0)
Jan  3 18:56:25 localhost kernel: open delta:[r-1w0e0] old:[r1w0e0] provider:[r1w0e0] 0xffffff0001333c00(da0p1)
Jan  3 18:56:25 localhost kernel: g_part_access(da0p1,-1,0,0)
Jan  3 18:56:25 localhost kernel: g_access(0xffffff000188aa00(da0), -1, 0, 0)
Jan  3 18:56:25 localhost kernel: open delta:[r-1w0e0] old:[r2w1e2] provider:[r2w1e2] 0xffffff00018a0e00(da0)
Jan  3 18:56:25 localhost kernel: g_disk_access(da0, -1, 0, 0)
Jan  3 18:56:25 localhost kernel: g_detach(0xffffff0001929d80)
Jan  3 18:56:25 localhost kernel: g_access(0xffffff0001929d80(ad4s3), 1, 0, 0)
Jan  3 18:56:26 localhost kernel:
Jan  3 18:56:26 localhost kernel: open delta:[r1w0e0] old:[r0w0e0] provider:[r0w0e0] 0xffffff0001827800(ad4s3)
Jan  3 18:56:26 localhost kernel: g_part_access(ad4s3,1,0,0)
Jan  3 18:56:26 localhost kernel: g_access(0xffffff000188ac00(ad4), 1, 0, 0)
Jan  3 18:56:26 localhost kernel: open delta:[r1w0e0] old:[r0w0e0] provider:[r0w0e0] 0xffffff00018d1600(ad4)
Jan  3 18:56:28 localhost kernel:
Jan  3 18:56:28 localhost kernel: g_disk_access(ad4, 1, 0, 0)
Jan  3 18:56:28 localhost kernel: vdev_geom_read_guid:301[1]: Reading guid from ad4s3...
Jan  3 18:56:28 localhost kernel: g_access(0xffffff0001929d80(ad4s3), -1, 0, 0)
Jan  3 18:56:28 localhost kernel: open delta:[r-1w0e0] old:[r1w0e0] provider:[r1w0e0] 0xffffff0001827800(ad4s3)
Jan  3 18:56:28 localhost kernel: g_part_access(ad4s3,-1,0,0)
Jan  3 18:56:28 localhost kernel: g_access(0xffffff000188ac00(ad4), -1, 0, 0)
Jan  3 18:56:28 localhost kernel: open delta:[r-1w0e0] old:[r1w0e0] provider:[r1w0e0] 0xffffff00018d1600(ad4)
Jan  3 18:56:28 localhost kernel: g_disk_access(ad4, -1, 0, 0)
Jan  3 18:56:28 localhost kernel: g_detach(0xffffff0001929d80)
Jan  3 18:56:28 localhost kernel: g_access(0xffffff0001929d80(ad4s2), 1, 0, 0)
Jan  3 18:56:28 localhost kernel: open delta:[r1w0e0] old:[r0w0e0] provider:[r0w0e0] 0xffffff0001873b00(ad4s2)
Jan  3 18:56:28 localhost kernel: g_part_access(ad4s2,1,0,0)
Jan  3 18:56:28 localhost kernel: g_access(0xffffff000188ac00(ad4), 1, 0, 0)
Jan  3 18:56:28 localhost kernel: open delta:[r1w0e0] old:[r0w0e0] provider:[r0w0e0] 0xffffff00018d1600(ad4)
Jan  3 18:56:28 localhost kernel: g_disk_access(ad4, 1, 0, 0)
Jan  3 18:56:28 localhost kernel: vdev_geom_read_guid:301[1]: Reading guid from ad4s2...
Jan  3 18:56:28 localhost kernel: g_access(0xffffff0001929d80(ad4s2), -1, 0, 0)
Jan  3 18:56:28 localhost kernel: open delta:[r-1w0e0] old:[r1w0e0] provider:[r1w0e0] 0xffffff0001873b00(ad4s2)
Jan  3 18:56:28 localhost kernel: g_part_access(ad4s2,-1,0,0)
Jan  3 18:56:28 localhost kernel: g_access(0xffffff000188ac00(ad4), -1, 0, 0)
Jan  3 18:56:28 localhost kernel: open delta:[r-1w0e0] old:[r1w0e0] provider:[r1w0e0] 0xffffff00018d1600(ad4)
Jan  3 18:56:28 localhost kernel: g_disk_access(ad4, -1, 0, 0)
Jan  3 18:56:28 localhost kernel: g_detach(0xffffff0001929d80)
Jan  3 18:56:28 localhost kernel: g_access(0xffffff0001929d80(ad4s1), 1, 0, 0)
Jan  3 18:56:28 localhost kernel: open delta:[r1w0e0] old:[r0w0e0] provider:[r0w0e0] 0xffffff0001475000(ad4s1)
Jan  3 18:56:28 localhost kernel: g_part_access(ad4s1,1,0,0)
Jan  3 18:56:28 localhost kernel: g_access(0xffffff000188ac00(ad4), 1, 0, 0)
Jan  3 18:56:28 localhost kernel: open delta:[r1w0e0] old:[r0w0e0] provider:[r0w0e0] 0xffffff00018d1600(ad4)
Jan  3 18:56:28 localhost kernel: g_disk_access(ad4, 1, 0, 0)
Jan  3 18:56:28 localhost kernel: vdev_geom_read_guid:301[1]: Reading guid from ad4s1...
Jan  3 18:56:28 localhost kernel: g_access(0xffffff0001929d80(ad4s1), -1, 0, 0)
Jan  3 18:56:28 localhost kernel: open delta:[r-1w0e0] old:[r1w0e0] provider:[r1w0e0] 0xffffff0001475000(ad4s1)
Jan  3 18:56:28 localhost kernel: g_part_access(ad4s1,-1,0,0)
Jan  3 18:56:28 localhost kernel: g_access(0xffffff000188ac00(ad4), -1, 0, 0)
Jan  3 18:56:28 localhost kernel: open delta:[r-1w0e0] old:[r1w0e0] provider:[r1w0e0] 0xffffff00018d1600(ad4)
Jan  3 18:56:28 localhost kernel: g_disk_access(ad4, -1, 0, 0)
Jan  3 18:56:28 localhost kernel: g_detach(0xffffff0001929d80)
Jan  3 18:56:28 localhost kernel: g_access(0xffffff0001929d80(md1), 1, 0, 0)
Jan  3 18:56:28 localhost kernel: open delta:[r1w0e0] old:[r0w0e0] provider:[r0w0e0] 0xffffff0001cd5300(md1)
Jan  3 18:56:28 localhost kernel: vdev_geom_read_guid:301[1]: Reading guid from md1...
Jan  3 18:56:28 localhost kernel: g_access(0xffffff0001929d80(md1), -1, 0, 0)
Jan  3 18:56:28 localhost kernel: open delta:[r-1w0e0] old:[r1w0e0] provider:[r1w0e0] 0xffffff0001cd5300(md1)
Jan  3 18:56:28 localhost kernel: g_detach(0xffffff0001929d80)
Jan  3 18:56:28 localhost kernel: g_access(0xffffff0001929d80(md0), 1, 0, 0)
Jan  3 18:56:28 localhost kernel: open delta:[r1w0e0] old:[r0w0e0] provider:[r0w0e0] 0xffffff0001c89d00(md0)
Jan  3 18:56:28 localhost kernel: vdev_geom_read_guid:301[1]: Reading guid from md0...
Jan  3 18:56:28 localhost kernel: g_access(0xffffff0001929d80(md0), -1, 0, 0)
Jan  3 18:56:28 localhost kernel: open delta:[r-1w0e0] old:[r1w0e0] provider:[r1w0e0] 0xffffff0001c89d00(md0)
Jan  3 18:56:28 localhost kernel: g_detach(0xffffff0001929d80)
Jan  3 18:56:28 localhost kernel: g_access(0xffffff0001929d80(gptid/a8cfde45-f897-11de-9761-001c251ceb12), 1, 0, 0)
Jan  3 18:56:28 localhost kernel: open delta:[r1w0e0] old:[r0w0e0] provider:[r0w0e0] 0xffffff0001a56900(gptid/a8cfde45-f897-11de-9761-001c251ceb12)
Jan  3 18:56:28 localhost kernel: g_access(0xffffff0001cbad80(md0p2), 1, 0, 1)
Jan  3 18:56:28 localhost kernel: open delta:[r1w0e1] old:[r0w0e0] provider:[r0w0e0] 0xffffff0001c89700(md0p2)
Jan  3 18:56:28 localhost kernel: g_part_access(md0p2,1,0,1)
Jan  3 18:56:28 localhost kernel: g_access(0xffffff00018b8d00(md0), 1, 0, 1)
Jan  3 18:56:28 localhost kernel: open delta:[r1w0e1] old:[r0w0e0] provider:[r0w0e0] 0xffffff0001c89d00(md0)
Jan  3 18:56:28 localhost kernel: vdev_geom_read_guid:301[1]: Reading guid from gptid/a8cfde45-f897-11de-9761-001c251ceb12...
Jan  3 18:56:28 localhost kernel: vdev_geom_read_guid:339[1]: guid for gptid/a8cfde45-f897-11de-9761-001c251ceb12 is 338386095307402449
Jan  3 18:56:28 localhost kernel: g_access(0xffffff0001929d80(gptid/a8cfde45-f897-11de-9761-001c251ceb12), -1, 0, 0)
Jan  3 18:56:28 localhost kernel: open delta:[r-1w0e0] old:[r1w0e0] provider:[r1w0e0] 0xffffff0001a56900(gptid/a8cfde45-f897-11de-9761-001c251ceb12)
Jan  3 18:56:28 localhost kernel: g_access(0xffffff0001cbad80(md0p2), -1, 0, -1)
Jan  3 18:56:28 localhost kernel: open delta:[r-1w0e-1] old:[r1w0e1] provider:[r1w0e1] 0xffffff0001c89700(md0p2)
Jan  3 18:56:28 localhost kernel: g_part_access(md0p2,-1,0,-1)
Jan  3 18:56:28 localhost kernel: g_access(0xffffff00018b8d00(md0), -1, 0, -1)
Jan  3 18:56:28 localhost kernel: open delta:[r-1w0e-1] old:[r1w0e1] provider:[r1w0e1] 0xffffff0001c89d00(md0)
Jan  3 18:56:28 localhost kernel: g_detach(0xffffff0001929d80)
Jan  3 18:56:28 localhost kernel: g_access(0xffffff0001929d80(gptid/a8cf4791-f897-11de-9761-001c251ceb12), 1, 0, 0)
Jan  3 18:56:28 localhost kernel: open delta:[r1w0e0] old:[r0w0e0] provider:[r0w0e0] 0xffffff0001c89600(gptid/a8cf4791-f897-11de-9761-001c251ceb12)
Jan  3 18:56:28 localhost kernel: g_access(0xffffff00018b6300(md0p1), 1, 0, 1)
Jan  3 18:56:28 localhost kernel: open delta:[r1w0e1] old:[r0w0e0] provider:[r0w0e0] 0xffffff0001bc4800(md0p1)
Jan  3 18:56:28 localhost kernel: g_part_access(md0p1,1,0,1)
Jan  3 18:56:28 localhost kernel: g_access(0xffffff00018b8d00(md0), 1, 0, 1)
Jan  3 18:56:28 localhost kernel: open delta:[r1w0e1] old:[r0w0e0] provider:[r0w0e0] 0xffffff0001c89d00(md0)
Jan  3 18:56:28 localhost kernel: vdev_geom_read_guid:301[1]: Reading guid from gptid/a8cf4791-f897-11de-9761-001c251ceb12...
Jan  3 18:56:28 localhost kernel: g_access(0xffffff0001929d80(gptid/a8cf4791-f897-11de-9761-001c251ceb12), -1, 0, 0)
Jan  3 18:56:28 localhost kernel: open delta:[r-1w0e0] old:[r1w0e0] provider:[r1w0e0] 0xffffff0001c89600(gptid/a8cf4791-f897-11de-9761-001c251ceb12)
Jan  3 18:56:28 localhost kernel: g_access(0xffffff00018b6300(md0p1), -1, 0, -1)
Jan  3 18:56:28 localhost kernel: open delta:[r-1w0e-1] old:[r1w0e1] provider:[r1w0e1] 0xffffff0001bc4800(md0p1)
Jan  3 18:56:28 localhost kernel: g_part_access(md0p1,-1,0,-1)
Jan  3 18:56:28 localhost kernel: g_access(0xffffff00018b8d00(md0), -1, 0, -1)
Jan  3 18:56:28 localhost kernel: open delta:[r-1w0e-1] old:[r1w0e1] provider:[r1w0e1] 0xffffff0001c89d00(md0)
Jan  3 18:56:28 localhost kernel: g_detach(0xffffff0001929d80)
Jan  3 18:56:28 localhost kernel: g_access(0xffffff0001929d80(gptid/e55fa55d-f6e3-11de-859b-001c251ceb12), 1, 0, 0)
Jan  3 18:56:28 localhost kernel: open delta:[r1w0e0] old:[r0w0e0] provider:[r0w0e0] 0xffffff000189f400(gptid/e55fa55d-f6e3-11de-859b-001c251ceb12)
Jan  3 18:56:28 localhost kernel: g_access(0xffffff00018b9500(da0p1), 1, 0, 1)
Jan  3 18:56:28 localhost kernel: open delta:[r1w0e1] old:[r0w0e0] provider:[r0w0e0] 0xffffff0001333c00(da0p1)
Jan  3 18:56:28 localhost kernel: g_part_access(da0p1,1,0,1)
Jan  3 18:56:28 localhost kernel: g_access(0xffffff000188aa00(da0), 1, 0, 1)
Jan  3 18:56:28 localhost kernel: open delta:[r1w0e1] old:[r1w1e2] provider:[r1w1e2] 0xffffff00018a0e00(da0)
Jan  3 18:56:28 localhost kernel: g_disk_access(da0, 1, 0, 1)
Jan  3 18:56:28 localhost kernel: vdev_geom_read_guid:301[1]: Reading guid from gptid/e55fa55d-f6e3-11de-859b-001c251ceb12...
Jan  3 18:56:28 localhost kernel: g_access(0xffffff0001929d80(gptid/e55fa55d-f6e3-11de-859b-001c251ceb12), -1, 0, 0)
Jan  3 18:56:28 localhost kernel: open delta:[r-1w0e0] old:[r1w0e0] provider:[r1w0e0] 0xffffff000189f400(gptid/e55fa55d-f6e3-11de-859b-001c251ceb12)
Jan  3 18:56:28 localhost kernel: g_access(0xffffff00018b9500(da0p1), -1, 0, -1)
Jan  3 18:56:28 localhost kernel: 
Jan  3 18:56:28 localhost kernel: open delta:[r-1w0e-1] old:[r1w0e1] provider:[r1w0e1] 0xffffff0001333c00(da0p1)
Jan  3 18:56:28 localhost kernel: g_part_access(da0p1,-1,0,-1)
Jan  3 18:56:28 localhost kernel: g_access(0xffffff000188aa00(da0), -1, 0, -1)
Jan  3 18:56:29 localhost kernel:
Jan  3 18:56:29 localhost kernel: open delta:[r-1w0e-1] old:[r2w1e3] provider:[r2w1e3] 0xffffff00018a0e00(da0)
Jan  3 18:56:29 localhost kernel: g_disk_access(da0, -1, 0, -1)
Jan  3 18:56:29 localhost kernel: g_detach(0xffffff0001929d80)
Jan  3 18:56:29 localhost kernel: g_access(0xffffff0001929d80(iso9660/CDROM), 1, 0, 0)
Jan  3 18:56:29 localhost kernel: open delta:[r1w0e0] old:[r0w0e0] provider:[r0w0e0] 0xffffff00018d1900(iso9660/CDROM)
Jan  3 18:56:29 localhost kernel: g_access(0xffffff00018b9a00(acd0), 1, 0, 1)
Jan  3 18:56:29 localhost kernel: open delta:[r1w0e1] old:[r0w0e0] provider:[r0w0e0] 0xffffff0001827b00(acd0)
Jan  3 18:56:29 localhost kernel: vdev_geom_read_guid:301[1]: Reading guid from iso9660/CDROM...
Jan  3 18:56:31 localhost kernel: g_access(0xffffff0001929d80(iso9660/CDROM), -1, 0, 0)
Jan  3 18:56:31 localhost kernel: open delta:[r-1w0e0] old:[r1w0e0] provider:[r1w0e0] 0xffffff00018d1900(iso9660/CDROM)
Jan  3 18:56:31 localhost kernel: g_access(0xffffff00018b9a00(acd0), -1, 0, -1)
Jan  3 18:56:31 localhost kernel: open delta:[r-1w0e-1] old:[r1w0e1] provider:[r1w0e1] 0xffffff0001827b00(acd0)
Jan  3 18:56:31 localhost kernel: g_detach(0xffffff0001929d80)
Jan  3 18:56:31 localhost kernel: g_destroy_consumer(0xffffff0001929d80)
Jan  3 18:56:31 localhost kernel: g_destroy_geom(0xffffff0001cd5400(zfs::vdev::taste))
Jan  3 18:56:31 localhost kernel: g_eli_taste(ELI, vdevgptid/a8cfde45-f897-11de-9761-001c251ceb12)
Jan  3 18:56:31 localhost kernel: _geom_open_by_guid:449[1]: Search by guid [15376817640459635577] failed.
Jan  3 18:56:31 localhost kernel: dev_taste(DEV,gptid/a8cfde45-f897-11de-9761-001c251ceb12)
Jan  3 18:56:31 localhost kernel:
Jan  3 18:56:31 localhost kernel: g_part_taste(PART,gptid/a8cfde45-f897-11de-9761-001c251ceb12)
Jan  3 18:56:31 localhost kernel: g_access(0xffffff0001cb7b80(gptid/a8cfde45-f897-11de-9761-001c251ceb12), 1, 0, 0)
Jan  3 18:56:31 localhost kernel: open delta:[r1w0e0] old:[r0w0e0] provider:[r0w0e0] 0xffffff0001a56900(gptid/a8cfde45-f897-11de-9761-001c251ceb12)
Jan  3 18:56:31 localhost kernel:
Jan  3 18:56:31 localhost kernel: g_access(0xffffff0001cbad80(md0p2), 1, 0, 1)
Jan  3 18:56:31 localhost kernel: open delta:[r1w0e1] old:[r0w0e0] provider:[r0w0e0] 0xffffff0001c89700(md0p2)
Jan  3 18:56:31 localhost kernel: g_part_access(md0p2,1,0,1)
Jan  3 18:56:31 localhost kernel:
Jan  3 18:56:31 localhost kernel: g_access(0xffffff00018b8d00(md0), 1, 0, 1)
Jan  3 18:56:31 localhost kernel:
Jan  3 18:56:31 localhost kernel: open delta:[r1w0e1] old:[r0w0e0] provider:[r0w0e0] 0xffffff0001c89d00(md0)
Jan  3 18:56:31 localhost kernel:
Jan  3 18:56:31 localhost kernel: vdev_geom_open_by_path:466[1]: Found provider by name /dev/md0p2.
Jan  3 18:56:31 localhost root: ZFS: vdev failure, zpool=tank type=vdev.open_failed
Jan  3 18:56:31 localhost kernel: 
Jan  3 18:56:31 localhost kernel: vdev_geom_attach:112[1]: Attaching to md0p2.
Jan  3 18:56:31 localhost kernel: g_access(0xffffff0001cb6a00(md0p2), 1, 1, 1)
Jan  3 18:56:31 localhost kernel: open delta:[r1w1e1] old:[r0w0e0] provider:[r1w0e1] 0xffffff0001c89700(md0p2)
Jan  3 18:56:31 localhost kernel: g_wither_geom(0xffffff0001a56400(zfs::vdev))
Jan  3 18:56:31 localhost kernel: vdev_geom_open:g52_1a[cc1e]s:s (0xffffff0001cb7b80(gptid/a8cfde45-f897-11de-9761-001c251ceb12), -1, 0, 0)Provider
Jan  3 18:56:31 localhost kernel: open delta:[r-1w0e0] old:[r1w0e0] provider:[r1w0e0] 0xffffff0001a56900(gptid/a8cfde45-f897-11de-9761-001c251ceb12)
Jan  3 18:56:31 localhost kernel:
Jan  3 18:56:31 localhost kernel: g_access(0xffffff0001cbad80(md0p2), -1, 0, -1)
Jan  3 18:56:31 localhost kernel: open delta:[r-1w0e-1] old:[r1w0e1] provider:[r1w0e1] 0xffffff0001c89700(md0p2)
Jan  3 18:56:31 localhost kernel:
Jan  3 18:56:31 localhost kernel: g_part_access(md0p2,-1,0,-1)
Jan  3 18:56:31 localhost kernel: g_access(0xffffff00018b8d00(md0), -1, 0, -1)
Jan  3 18:56:31 localhost kernel: open delta:[r-1w0e-1] old:[r1w0e1] provider:[r1w0e1] 0xffffff0001c89d00(md0)
Jan  3 18:56:32 localhost kernel:
Jan  3 18:56:32 localhost kernel: g_wither_geom(0xffffff0001afe800(gptid/a8cfde45-f897-11de-9761-001c251ceb12))
Jan  3 18:56:32 localhost kernel: g_label_taste(LABEL, gptid/a8cfde45-f897-11de-9761-001c251ceb12)
Jan  3 18:56:32 localhost kernel: g_detach(0xffffff0001cb6a00)
Jan  3 18:56:32 localhost kernel: g_destroy_consumer(0xffffff0001cb6a00)
Jan  3 18:56:32 localhost kernel: g_destroy_geom(0xffffff0001a56400(zfs::vdev))
Jan  3 18:56:32 localhost kernel: g_destroy_geom(0xffffff0001a56200(zfs::vdev))
Jan  3 18:56:32 localhost kernel: g_detach(0xffffff0001cb7b80)
Jan  3 18:56:32 localhost kernel: g_destroy_consumer(0xffffff0001cb7b80)
Jan  3 18:56:32 localhost kernel: g_destroy_geom(0xffffff0001afe800(gptid/a8cfde45-f897-11de-9761-001c251ceb12))
Jan  3 18:56:32 localhost kernel: g_detach(0xffffff0001cbf380)
Jan  3 18:56:32 localhost kernel: g_destroy_consumer(0xffffff0001cbf380)
Jan  3 18:56:32 localhost kernel: g_destroy_geom(0xffffff0001afee00(md0p2))

>How-To-Repeat:
localhost# mdconfig -a -t malloc -s 512M
md0
localhost# gpart create -s GPT md0
md0 created
localhost# gpart add -t freebsd-boot -s 128 md0
md0p1 added
localhost# gpart add -t freebsd-zfs md0
md0p2 added
localhost# zpool create tank md0p2
cannot create 'tank': permission denied
localhost# Jan  3 18:48:31 localhost root: ZFS: vdev failure, zpool=tank type=vdev.open_failed

>Fix:
Apply patch below

Patch attached with submission follows:

--- /usr/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c	2009-12-05 20:16:28.000000000 +0000
+++ /usr/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c	2010-01-03 13:58:29.000000000 +0000
@@ -464,7 +464,7 @@ vdev_geom_open_by_path(vdev_t *vd, int c
 	pp = g_provider_by_name(vd->vdev_path + sizeof("/dev/") - 1);
 	if (pp != NULL) {
 		ZFS_LOG(1, "Found provider by name %s.", vd->vdev_path);
-		cp = vdev_geom_attach(pp, !!(spa_mode & FWRITE));
+		cp = vdev_geom_attach(pp, 0);
 		if (cp != NULL && check_guid) {
 			g_topology_unlock();
 			guid = vdev_geom_read_guid(cp);
@@ -480,6 +480,12 @@ vdev_geom_open_by_path(vdev_t *vd, int c
 				    vd->vdev_path);
 			}
 		}
+		if (cp != NULL) {
+			if (g_access(cp, 0, !!(spa_mode & FWRITE), 0) != 0) {
+				vdev_geom_detach(cp, 0);
+				cp = NULL;
+			}
+		}
 	}
 	g_topology_unlock();
 


>Release-Note:
>Audit-Trail:
Responsible-Changed-From-To: freebsd-bugs->freebsd-fs 
Responsible-Changed-By: linimon 
Responsible-Changed-When: Sun Jan 3 19:24:51 UTC 2010 
Responsible-Changed-Why:  
Over to maintainer(s). 

http://www.freebsd.org/cgi/query-pr.cgi?pr=142271 

From: Alexey Dokuchaev <danfe@nsu.ru>
To: bug-followup@FreeBSD.org, torindel@gmail.com
Cc:  
Subject: Re: kern/142271: [zfs] [patch] race condition on zpool create
Date: Tue, 12 Jan 2010 10:00:46 +0600

 I've had the same problem and confirm that provided patch fixes it on
 recent -CURRENT.

From: Buganini <buganini@gmail.com>
To: bug-followup@FreeBSD.org, torindel@gmail.com
Cc:  
Subject: Re: kern/142271: [zfs] [patch] race condition on zpool create
Date: Wed, 20 Jan 2010 20:24:12 +0800

 this patch also works for me on today RELENG_8

From: Henrik Wist <henrik.wist@titanias.org>
To: bug-followup@FreeBSD.org, torindel@gmail.com
Cc:  
Subject: Re: kern/142271: [zfs] [patch] race condition on zpool create
Date: Wed, 20 Jan 2010 23:15:50 +0100

 I can confirm this issue on 7.2-STABLE and I'm happy to report that the 
 patch fixes this on 7.2-STABLE as well.
State-Changed-From-To: open->patched 
State-Changed-By: pjd 
State-Changed-When: ndz 7 lut 2010 20:31:00 UTC 
State-Changed-Why:  
Should be fixed in HEAD (r203504). 


Responsible-Changed-From-To: freebsd-fs->pjd 
Responsible-Changed-By: pjd 
Responsible-Changed-When: ndz 7 lut 2010 20:31:00 UTC 
Responsible-Changed-Why:  
I'll take this one. 

http://www.freebsd.org/cgi/query-pr.cgi?pr=142271 

From: Willem Jan Withagen <wjw@digiware.nl>
To: bug-followup@FreeBSD.org, torindel@gmail.com
Cc:  
Subject: Re: kern/142271: [zfs] [patch] race condition on zpool create
Date: Sun, 18 Apr 2010 13:06:37 +0200

 -----BEGIN PGP SIGNED MESSAGE-----
 Hash: SHA1
 
 Thanx for the patch,
 Needed to upgrade to a recent 8-stable.
 But then was not able to fix my zfsboot pool.
 
 +1 for putting this in the tree.
 
 - --WjW
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.10 (MingW32)
 
 iQEcBAEBAgAGBQJLyue9AAoJEP4k4K6R6rBht0MIAI1+zty6FBcSycLlpGhfaZk2
 x8G90y9XWa5ZZRC9H9fxJ8ukCxhwqVKxKYmWfWN1c8EDQBQPAjRz05VL5QRH+jy9
 LQ9zcGZ6uOQrF76DlCgX/45Mx5QiD6GE6qUQOKeECAQ9kU21FvwJCiu6ptSklDjT
 qME984+7/hHtHrxEtatVSh1lOFofgWpXbgWGBMuWXMahktDcuyg9d7qYEfautlyc
 GJcoDHIQGlpQofXJ9z+gTROpKAlfapg1BlUVpDZwU9sAMRFCbNb7ZYZBRZUNwGND
 ams56cf0Qaietufi+TnoYcwa2kg3a+H7zEXZ4UUaCCairyUV91+svhu1kTfYrhw=
 =vhPn
 -----END PGP SIGNATURE-----
State-Changed-From-To: patched->closed 
State-Changed-By: pjd 
State-Changed-When: sob 8 maj 2010 10:42:44 UTC 
State-Changed-Why:  
Fix is already merged to stable/8. 

http://www.freebsd.org/cgi/query-pr.cgi?pr=142271 
>Unformatted:
