[Gluster-devel] Update on mgmt_v3-locks.t failure in netbsd

Niels de Vos ndevos at redhat.com
Tue Apr 28 07:30:22 UTC 2015


On Tue, Apr 28, 2015 at 12:15:11PM +0530, Atin Mukherjee wrote:
> I see netbsd regression doesn't execute peer probe from any other tests
> apart from mgmt_v3-locks.t, if it had that would have also failed. So
> the conclusion is peer probe doesn't work in netbsd. Glusterd crashes
> with following bt when peer probe is executed:
> 
> #0  __uatomic_add_return (len=8, val=1, addr=<optimized out>) at
> /usr/pkg/include/urcu/uatomic.h:233
> 233             __asm__ __volatile__("ud2");
> (gdb) bt
> #0  __uatomic_add_return (len=8, val=1, addr=<optimized out>) at
> /usr/pkg/include/urcu/uatomic.h:233
> #1  glusterd_peerinfo_new (state=state at entry=GD_FRIEND_STATE_DEFAULT,
> uuid=uuid at entry=0x0,
>     hostname=<optimized out>, hostname at entry=0xb8b040e0 "127.1.1.2",
> port=port at entry=24007)
>     at glusterd-peer-utils.c:308
> #2  0xb91e0068 in glusterd_friend_add (hoststr=hoststr at entry=0xb8b040e0
> "127.1.1.2", port=port at entry=24007,
>     state=state at entry=GD_FRIEND_STATE_DEFAULT, uuid=uuid at entry=0x0,
> friend=friend at entry=0xb89fff30,
>     restore=restore at entry=_gf_false, args=args at entry=0xb89fff38) at
> glusterd-handler.c:3212
> #3  0xb91e2927 in glusterd_probe_begin (req=req at entry=0xb8f40040,
> hoststr=0xb8b040e0 "127.1.1.2", port=24007,
>     dict=0xb9c013b0, op_errno=op_errno at entry=0xb89fff9c) at
> glusterd-handler.c:3320
> #4  0xb91e2de2 in __glusterd_handle_cli_probe (req=0xb8f40040) at
> glusterd-handler.c:1078
> #5  0xb91dc932 in glusterd_big_locked_handler (req=req at entry=0xb8f40040,
>     actor_fn=actor_fn at entry=0xb91e294d <__glusterd_handle_cli_probe>) at
> glusterd-handler.c:83
> #6  0xb91dc9e8 in glusterd_handle_cli_probe (req=0xb8f40040) at
> glusterd-handler.c:1105
> #7  0xbb787c82 in synctask_wrap (old_task=0xb8f66000) at syncop.c:375
> #8  0xbb39c630 in ?? () from /usr/lib/libc.so.12
> 
> http://review.gluster.org/#/c/10147/ is the cause for it. I will
> continue to investigate on this, however I am not able to understand
> what this line __asm__ __volatile__("ud2") indicating. Any experts :) ?

IIRC, the Linux kernel executes this when a BUG() statement is hit and
logging or a kernel panic should happen.

You probably need someone that understands userspace-rcu to get an
understanding of when/how "ud2" is used there.

HTH,
Niels
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 181 bytes
Desc: not available
URL: <http://www.gluster.org/pipermail/gluster-devel/attachments/20150428/62a5aaf7/attachment.sig>


More information about the Gluster-devel mailing list