Date: Tue, 29 Sep 2015 21:27:13 +0300 From: Andriy Gapon <avg@FreeBSD.org> To: Willem Jan Withagen <wjw@digiware.nl>, "freebsd-fs@freebsd.org" <freebsd-fs@FreeBSD.org> Subject: Re: ZFS files server crash: solaris assert: start < end in trim_map.c Message-ID: <560AD801.70307@FreeBSD.org> In-Reply-To: <560A81EE.7010604@digiware.nl> References: <560A81EE.7010604@digiware.nl>
next in thread | previous in thread | raw e-mail | index | archive | help
On 29/09/2015 15:19, Willem Jan Withagen wrote: > Hi, > > Just found this after a crash: > Architecture: amd64 > Architecture Version: 2 > Dump Length: 7031291904B (6705 MB) > Blocksize: 512 > Dumptime: Tue Sep 29 12:55:01 2015 > Hostname: zfs.digiware.nl > Magic: FreeBSD Kernel Dump > Version String: FreeBSD 10.2-STABLE #2 r287746M: Sun Sep 13 12:33:23 CEST 2015 > root@zfs.digiware.nl:/home/obj/amd64/usr/srcs/work10/src/sys/ZFS > Panic String: solaris assert: start < end, file: > /usr/srcs/work10/src/sys/modules/zfs/../../cddl/contrib/opensolaris/uts/common/fs/zfs/trim_map.c, > line: 219 This could be an oversight in a change of mine. Could you please open a bug report? > (kgdb) bt > #0 doadump (textdump=1) at pcpu.h:219 > #1 0xffffffff804f9d97 in kern_reboot (howto=260) at > /usr/srcs/work10/src/sys/kern/kern_shutdown.c:451 > #2 0xffffffff804fa195 in vpanic (fmt=<value optimized out>, ap=<value optimized > out>) at /usr/srcs/work10/src/sys/kern/kern_shutdown.c:758 > #3 0xffffffff804fa023 in panic (fmt=0x0) at > /usr/srcs/work10/src/sys/kern/kern_shutdown.c:687 > #4 0xffffffff8106a1fd in assfail (a=<value optimized out>, f=<value optimized > out>, l=<value optimized out>) > at > /usr/srcs/work10/src/sys/modules/opensolaris/../../cddl/compat/opensolaris/kern/opensolaris_cmn_err.c:81 > > #5 0xffffffff80e65161 in trim_map_segment_add (tm=0xfffff8001432ba00, > start=7704576, end=7704576, txg=0) > at > /usr/srcs/work10/src/sys/modules/zfs/../../cddl/contrib/opensolaris/uts/common/fs/zfs/trim_map.c:219 > > #6 0xffffffff80e6464f in trim_map_free_locked (tm=<value optimized out>, > start=<value optimized out>, end=<value optimized out>, txg=<value optimized out>) > at > /usr/srcs/work10/src/sys/modules/zfs/../../cddl/contrib/opensolaris/uts/common/fs/zfs/trim_map.c:319 > > #7 0xffffffff80e64588 in trim_map_free (vd=0xfffff8000ae3b800, offset=7704576, > size=<value optimized out>, txg=0) > at > /usr/srcs/work10/src/sys/modules/zfs/../../cddl/contrib/opensolaris/uts/common/fs/zfs/trim_map.c:337 > > #8 0xffffffff80db490c in arc_hdr_destroy (hdr=0xfffff800198ac5e8) at > /usr/srcs/work10/src/sys/modules/zfs/../../cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c:1825 > > #9 0xffffffff80db980a in l2arc_evict (dev=0xfffff8000aa2d480, distance=<value > optimized out>, all=0) > at > /usr/srcs/work10/src/sys/modules/zfs/../../cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c:5004 > > #10 0xffffffff80dba0da in l2arc_feed_thread (dummy=<value optimized out>) > at > /usr/srcs/work10/src/sys/modules/zfs/../../cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c:5581 > > #11 0xffffffff804c9855 in fork_exit (callout=0xffffffff80db9b80 > <l2arc_feed_thread>, arg=0x0, frame=0xfffffe023bbc4bc0) > at /usr/srcs/work10/src/sys/kern/kern_fork.c:1018 > #12 0xffffffff807773ee in fork_trampoline () at > /usr/srcs/work10/src/sys/amd64/amd64/exception.S:611 > #13 0x0000000000000000 in ?? () > > And the values there are: > #5 0xffffffff80e65161 in trim_map_segment_add (tm=0xfffff8001432ba00, > start=7704576, end=7704576, txg=0) > at > /usr/srcs/work10/src/sys/modules/zfs/../../cddl/contrib/opensolaris/uts/common/fs/zfs/trim_map.c:219 > > 219 VERIFY(start < end); > (kgdb) p start > $1 = 7704576 > (kgdb) p end > $2 = 7704576 > > Which suggests to me that the comparison might need to be '<=', but that will > probably not be this simple... -- Andriy Gapon
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?560AD801.70307>