Re: Yet more softlockups.

From: David Ahern
Date: Fri Jul 12 2013 - 13:40:21 EST


On 7/12/13 11:18 AM, Dave Jones wrote:
On Fri, Jul 12, 2013 at 11:12:13AM -0600, David Ahern wrote:
> On 7/12/13 9:45 AM, Dave Jones wrote:
> > Here's a fun trick:
> >
> > trinity -c perf_event_open -C4 -q -l off
> >
> > Within about a minute, that brings any of my boxes to its knees.
> > The softlockup detector starts going nuts, and then the box wedges solid.
>
> I tried that in a VM running latest Linus tree. I see trinity children
> getting nuked regularly from oom.

Weird. I'm curious what the backtrace looks like in those cases.
Where is it trying to allocate memory ?
(Though that isn't usually too helpful in most cases, but in absense of
anything else..)

(gdb) bt
#0 0x000000313b27f3e0 in malloc () from /lib64/libc.so.6
#1 0x0000000000404405 in _get_address (null_allowed=null_allowed@entry=1 '\001') at generic-sanitise.c:151
#2 0x00000000004044ca in get_address () at generic-sanitise.c:182
#3 0x00000000004052a0 in fill_arg (childno=<optimized out>, call=call@entry=298, argnum=argnum@entry=1) at generic-sanitise.c:415
#4 0x000000000040548d in generic_sanitise (childno=childno@entry=0) at generic-sanitise.c:615
#5 0x0000000000405620 in mkcall (childno=childno@entry=0) at syscall.c:131
#6 0x0000000000407d85 in child_process () at child.c:219
#7 0x00000000004073ad in fork_children () at main.c:103
#8 main_loop () at main.c:308
#9 do_main_loop () at main.c:342
#10 0x000000000040253a in main (argc=<optimized out>, argv=<optimized out>) at trinity.c:180


In _get_address, case 8 must be happening a lot and I don't see a free when that address comes from malloc. Perhaps all of the rand() calls are breaking down in the VM. If I change that case from malloc to something static - like page_rand - memory stays flat.

David
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/