Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 10 Jan 2010 08:24:47 GMT
From:      Alt <wtfcrap@mail.ru>
To:        freebsd-gnats-submit@FreeBSD.org
Subject:   kern/142563: ioctl freeze in zpool
Message-ID:  <201001100824.o0A8Ol14036072@www.freebsd.org>
Resent-Message-ID: <201001100830.o0A8U4gu072642@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         142563
>Category:       kern
>Synopsis:       ioctl freeze in zpool
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Sun Jan 10 08:30:04 UTC 2010
>Closed-Date:
>Last-Modified:
>Originator:     Alt
>Release:        9-CURRENT
>Organization:
>Environment:
FreeBSD  9.0-CURRENT FreeBSD 9.0-CURRENT #0 r201894: Sun Jan 10 01:53:08 MSK 2010     root@:/usr/obj/root/current/sys/GENERIC  i386
>Description:
zfs's zpool utility freezes on ioctl call on rare situtions:
# zpool status
Jan 10 10:16:33  root: ZFS: vdev failure, zpool=test type=vdev.bad_label
Jan 10 10:16:33  root: ZFS: vdev failure, zpool=test type=vdev.bad_label

Issue leads to zfs pools become uncontrollable, since zpool's commands status,import,export,destroy not working now. I tried to trackdown issue - it leads to kernel ioctl call (i dont have any experience with kernel dev):

(gdb) disas
Dump of assembler code for function ioctl:
0x2828a740 <ioctl+0>:   mov    $0x36,%eax
0x2828a745 <ioctl+5>:   int    $0x80
0x2828a747 <ioctl+7>:   jb     0x2828a72c <select+12>
0x2828a749 <ioctl+9>:   ret
0x2828a74a <ioctl+10>:  nop
0x2828a74b <ioctl+11>:  nop
0x2828a74c <ioctl+12>:  push   %ebx
0x2828a74d <ioctl+13>:  call   0x2828a752 <ioctl+18>
0x2828a752 <ioctl+18>:  pop    %ebx
0x2828a753 <ioctl+19>:  add    $0x15b36,%ebx
0x2828a759 <ioctl+25>:  jmp    0x2817fc14 <_init+3940>
0x2828a75e <ioctl+30>:  mov    %esi,%esi
End of assembler dump.
(gdb) stepi
0x2828a745      3       RSYSCALL(ioctl)
(gdb)
Jan 10 10:16:33  root: ZFS: vdev failure, zpool=test type=vdev.bad_label
Jan 10 10:16:33  root: ZFS: vdev failure, zpool=test type=vdev.bad_label

(now its freezed and dont react ctrl-c, sigterm, sigkill - any signals)
>How-To-Repeat:
Make zfs raidz1 with 4+ disks.
Shutdown system. Replace 1 disk with new one and remove other. So, we removed 2 disks from pool and its broken. Boot and command `zpool status` - it freezes. Need to say it take effect with other commands: import/export/destroy, so actually pools become uncontrollable..
>Fix:


>Release-Note:
>Audit-Trail:
>Unformatted:



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