Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754820AbbFLRRR (ORCPT ); Fri, 12 Jun 2015 13:17:17 -0400 Received: from mail-pd0-f175.google.com ([209.85.192.175]:33617 "EHLO mail-pd0-f175.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750733AbbFLRRO (ORCPT ); Fri, 12 Jun 2015 13:17:14 -0400 Message-ID: <557B141B.3000704@plumgrid.com> Date: Fri, 12 Jun 2015 10:17:15 -0700 From: Alexei Starovoitov User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:31.0) Gecko/20100101 Thunderbird/31.7.0 MIME-Version: 1.0 To: Daniel Wagner , Steven Rostedt , Tom Zanussi CC: "linux-kernel@vger.kernel.org" , Wang Nan Subject: Re: latency histogram with BPF References: <557937D8.90606@bmw-carit.de> <557A06D7.7030304@plumgrid.com> <557A783C.5080803@bmw-carit.de> <557AEDAD.2060507@bmw-carit.de> In-Reply-To: <557AEDAD.2060507@bmw-carit.de> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1477 Lines: 35 On 6/12/15 7:33 AM, Daniel Wagner wrote: > On 06/12/2015 08:12 AM, Daniel Wagner wrote: >> On 06/12/2015 12:08 AM, Alexei Starovoitov wrote: >>> On 6/11/15 12:25 AM, Daniel Wagner wrote: >>> If you have any suggestions on where to look, I'm all ears. >>> My stack traces look like: >>> Running with 10*40 (== 400) tasks. >>> [ 12.032571] kernel BUG at ../mm/slub.c:3413! > > I hit this as well. > > After looking and playing around for while I think I found the source of > the problem: The path from the BPF program into the hash table code is > triggering the crash. > > Attaching kprobes to trace_preempt_[on|off] works fine. Empty BPF > programs connected to the probes is no problem as well. So I changed the > BPF program to use only arrays instead of hash tables. No crash anymore. yes. I've tried that too. arrays work fine indeed. > I suspect the hash table code will call trace_preempt_[off|on] > eventually and that is not going to fly. The recursive calls into bpf programs are detected and prevented. That's ok. I've tested attaching kprobes to kmalloc/kfree and from the program do hash_map->update_elem->kmalloc which triggers recursive call into the same program. All works fine. There is something else here. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/