Date: Mon, 17 Jul 2017 09:24:06 +0300 From: Andriy Gapon <avg@FreeBSD.org> To: Peter Wemm <peter@wemm.org> Cc: svn-src-head@FreeBSD.org, src-committers@FreeBSD.org, svn-src-all@FreeBSD.org Subject: Re: svn commit: r320452 - in head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs: . sys Message-ID: <f2289f19-fe07-bb5a-3082-7ebe2d48856f@FreeBSD.org> In-Reply-To: <1620155.k5U0yJ7ekR@overcee.wemm.org> References: <201706281359.v5SDxKDB033681@repo.freebsd.org> <2865573.6VCVxXl8ZR@overcee.wemm.org> <2227668.mxUYtcVILl@overcee.wemm.org> <1620155.k5U0yJ7ekR@overcee.wemm.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On 12/07/2017 22:52, Peter Wemm wrote: > On Tuesday, July 11, 2017 11:55:47 PM Peter Wemm wrote: >> On Tuesday, July 11, 2017 11:08:15 PM Peter Wemm wrote: >>> On Wednesday, June 28, 2017 01:59:20 PM Andriy Gapon wrote: >>>> A side bonus of this change is that now a vdev zio has a pointer >>>> to its corresponding bio while the zio is active. >>> >>> fault virtual address = 0x28 >>> >>> >>> db> where >>> Tracing pid 0 tid 100471 td 0xfffff80005452000 >>> vdev_geom_io_done() at vdev_geom_io_done+0x36/frame 0xfffffe0239f9eaa0 >>> zio_vdev_io_done() at zio_vdev_io_done+0x176/frame 0xfffffe0239f9ead0 >>> zio_execute() at zio_execute+0xac/frame 0xfffffe0239f9eb20 >> >> Oops, truncated. >> >> >> taskqueue_run_locked() at taskqueue_run_locked+0x127/frame >> 0xfffffe0239f9eb80 taskqueue_thread_loop() at >> taskqueue_thread_loop+0xc8/frame 0xfffffe0239f9ebb0 fork_exit() at >> fork_exit+0x85/frame 0xfffffe0239f9ebf0 >> fork_trampoline() at fork_trampoline+0xe/frame 0xfffffe0239f9ebf0 >> --- trap 0, rip = 0, rsp = 0, rbp = 0 --- > > Likewise with a disk failing or being put offline. eg: the explicit offlining > case, making a vdev degrade: Peter, could you please see if the patch from the bug report you opened helps with the problems? https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=220691#c3 Sorry for the breakage and thank you for the report. > root@nope.ysv:/home/peter # zpool offline zroot mfid5p3 > > atal trap 12: page fault while in kernel mode > cpuid = 4; apic id = 04 > > Fatal trap 12: page fault while in kernel mode > fault virtual address = 0x28 > Fatal trap 12: page fault while in kernel mode > > Fatal trap 12: page fault while in kernel mode > Fatal trap 12: page fault while in kernel mode > cpuid = 7; apic id = 07 > cpuid = 1; apic id = 01 > fault virtual address = 0x28 > fault code = supervisor read data, page not present > cpuid = 3; cpuid = 5; apic id = 03 > Fatal trap 12: page fault while in kernel mode > apic id = 05 > fault virtual address = 0x28 > fault virtual address = 0x28 > fault code = supervisor read data, page not present > instruction pointer = 0x20:0xffffffff803aab56 > stack pointer = 0x28:0xfffffe085fb3aa90 > instruction pointer = 0x20:0xffffffff803aab56 > fault code = supervisor read data, page not present > cpuid = 6; fault virtual address = 0x28 > Fatal trap 12: page fault while in kernel mode > fault code = supervisor read data, page not present > instruction pointer = 0x20:0xffffffff803aab56 > stack pointer = 0x28:0xfffffe085fb3fa90 > frame pointer = 0x28:0xfffffe085fb3aaa0 > fault code = supervisor read data, page not present > cpuid = 2; apic id = 02 > apic id = 06 > instruction pointer = 0x20:0xffffffff803aab56 > fault virtual address = 0x28 > fault code = supervisor read data, page not present > stack pointer = 0x28:0xfffffe085fb30a90 > instruction pointer = 0x20:0xffffffff803aab56 > stack pointer = 0x28:0xfffffe085fb35a90 > frame pointer = 0x28:0xfffffe085fb3faa0 > code segment = base 0x0, limit 0xfffff, type 0x1b > stack pointer = 0x28:0xfffffe085fb44a90 > frame pointer = 0x28:0xfffffe085fb44aa0 > code segment = base 0x0, limit 0xfffff, type 0x1b > = DPL 0, pres 1, long 1, def32 0, gran 1 > fault virtual address = 0x28 > = DPL 0, pres 1, long 1, def32 0, gran 1 > processor eflags = interrupt enabled, instruction pointer = 0x20:6 > frame pointer = 0x28:0xfffffe085fb30aa0 > code segment = base 0x0, limit 0xfffff, type 0x1b > code segment = base 0x0, limit 0xfffff, type 0x1b > frame pointer = 0x28:0xfffffe085fb35aa0 > code segment = base 0x0, limit 0xfffff, type 0x1b > resume, IOPL = 0 > stack pointer = 0x28:0xfffffe085fb26a90 > = DPL 0, pres 1, long 1, def32 0, gran 1 > = DPL 0, pres 1, long 1, def32 0, gran 1 > processor eflags = fault code = supervisor read data, page not > frame pointer = 0x28:0xfffffe085fb26aa0 > instruction pointer = 0x20:0xffffffff803aab56 > processor eflags = interrupt enabled, code segment = base b > = DPL 0, pres 1, long 1, def32 0, gran 1 > processor eflags = interrupt enabled, resume, IOPL = 0 > current process = 0 (zio_write_intr_2) > [ thread pid 0 tid 100500 ] > Stopped at vdev_geom_io_done+0x36: movq 0x28(%rbx),%rsi > db> where > Tracing pid 0 tid 100500 td 0xfffff8000aae6000 > vdev_geom_io_done() at vdev_geom_io_done+0x36/frame 0xfffffe085fb30aa0 > zio_vdev_io_done() at zio_vdev_io_done+0x176/frame 0xfffffe085fb30ad0 > zio_execute() at zio_execute+0xac/frame 0xfffffe085fb30b20 > taskqueue_run_locked() at taskqueue_run_locked+0x127/frame 0xfffffe085fb30b80 > taskqueue_thread_loop() at taskqueue_thread_loop+0xc8/frame 0xfffffe085fb30bb0 > fork_exit() at fork_exit+0x85/frame 0xfffffe085fb30bf0 > fork_trampoline() at fork_trampoline+0xe/frame 0xfffffe085fb30bf0 > --- trap 0, rip = 0, rsp = 0, rbp = 0 --- > db> > -- Andriy Gapon
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?f2289f19-fe07-bb5a-3082-7ebe2d48856f>