Re: libzpool assert vs libc assert

From: Andriy Gapon <avg_at_freebsd.org>
Date: Mon, 01 Jun 2009 19:22:59 +0300
on 01/06/2009 19:12 Henri Hennebert said the following:
> Andriy Gapon wrote:
>> I propose the following patch for this issue.
>> It fixes mismatch between __assert extern declaration in zfs code and
>> actual
>> signature in libc code.
>> I also took liberty of dropping __STDC__ and __STDC_VERSION__ checks.
>> I think that
>> those checks are not needed with compilers that can be used to compile
>> FreeBSD.
>> Besides, both branches of __STDC_VERSION__ check were exactly the same.
>>
>> Henri,
>>
>> if you still experience that crash of zpool command, could you please
>> try the
>> patch and see if you have a nicer assert message and stacktrace now?
>> Sorry, that this is still not a fix for the real issue.
>>
> Here is the new bt after the patch

Henri,

thank you very much for testing!
It look like the patch did its job.

P.S. hopefully someone is looking into the cause of the assertion.

> Assertion failed: (mp->m_owner == NULL), function zmutex_destroy, file
> /usr/src/cddl/lib/libzpool/../../../cddl/contrib/opensolaris/lib/libzpool/common/kernel.c,
> line 112.
> 
> Program received signal SIGABRT, Aborted.
> [Switching to Thread 0x8018020b0 (LWP 100178)]
> 0x000000080121fadc in thr_kill () from /lib/libc.so.7
> (gdb) bt
> #0  0x000000080121fadc in thr_kill () from /lib/libc.so.7
> #1  0x00000008012af06b in abort () from /lib/libc.so.7
> #2  0x0000000801296fe5 in __assert () from /lib/libc.so.7
> #3  0x0000000800fef42e in zmutex_destroy (mp=0x8018b2cc0) at

-- 
Andriy Gapon
Received on Mon Jun 01 2009 - 14:23:03 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:49 UTC