This is in a heavy multithreaded application:
Thread 1475 "pike" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7ffff574c700 (LWP 14689)]
ba_alloc (a=a@entry=0x55555575bf20 <object_allocator>)
at /var/src/roxen/81pike/src/block_allocator.c:267
267 p->h.used++;
(gdb) l
262
263 ptr = p->h.first;
264 PIKE_MEMPOOL_ALLOC(a, ptr, a->l.block_size);
265 PIKE_MEM_RW_RANGE(ptr, sizeof(struct ba_block_header));
266
267 p->h.used++;
268
269 #ifdef PIKE_DEBUG
270 ba_check_ptr(a, a->alloc, ptr, NULL, __LINE__);
271 #endif
(gdb) p p
$1 = (struct ba_page *) 0x555555d298c0
(gdb) p *p
$2 = {h = {first = 0x555555d35ae000, used = 681, flags = 0}}
(gdb) p ptr
$3 = (struct ba_block_header *) 0x555555d35ae000
(gdb) p *ptr
Cannot access memory at address 0x555555d35ae000
(gdb) where
#0 ba_alloc (a=a@entry=0x55555575bf20 <object_allocator>)
at /var/src/roxen/81pike/src/block_allocator.c:267
#1 0x000055555560156f in alloc_object ()
at /var/src/roxen/81pike/src/object.c:135
#2 low_clone (p=0x5555557d2f70) at /var/src/roxen/81pike/src/object.c:135
#3 0x0000555555601ad2 in debug_clone_object (p=<optimized out>,
args=args@entry=0) at /var/src/roxen/81pike/src/object.c:408
#4 0x000055555564b55c in f_mutex_trylock (args=1)
at /var/src/roxen/81pike/src/threads.c:2333
#5 0x0000555555585a9c in low_mega_apply (type=<optimized out>,
type@entry=APPLY_STACK, args=1, arg1=<optimized out>, arg1@entry=0x0,
arg2=arg2@entry=0x0) at /var/src/roxen/81pike/src/apply_low.h:225
#6 0x000055555558624e in jump_opcode_F_CALL_FUNCTION ()
at /var/src/roxen/81pike/src/interpret_functions.h:2422
#7 0x00007ffff6a4c55c in ?? ()
#8 0x00007ffff574bd41 in ?? ()
#9 0x0000000000000001 in ?? ()
#10 0x00007fffffffe03e in ?? ()
#11 0x00007fffffffe03f in ?? ()
#12 0x00007ffff574c700 in ?? ()
#13 0x00005555559af8e0 in ?? ()
#14 0x0000000000000000 in ?? ()
Any ideas?
I can still explore more structures, have the session still open.
--
Stephen.