From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alexei Starovoitov Subject: Re: [PATCH bpf-next v8 09/10] tools/bpf: add a test for bpf_get_stack with raw tracepoint prog Date: Sat, 28 Apr 2018 12:06:23 -0700 Message-ID: <20180428190622.7cxrsqmxwn33cscf@ast-mbp> References: <20180428070205.1059628-1-yhs@fb.com> <20180428070205.1059628-10-yhs@fb.com> <20180428165643.qnfvcc34pgnwgn2e@ast-mbp> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: Yonghong Song , Alexei Starovoitov , Daniel Borkmann , netdev , kernel-team@fb.com To: Y Song Return-path: Received: from mail-pf0-f195.google.com ([209.85.192.195]:41075 "EHLO mail-pf0-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751151AbeD1TG1 (ORCPT ); Sat, 28 Apr 2018 15:06:27 -0400 Received: by mail-pf0-f195.google.com with SMTP id v63so3851707pfk.8 for ; Sat, 28 Apr 2018 12:06:27 -0700 (PDT) Content-Disposition: inline In-Reply-To: Sender: netdev-owner@vger.kernel.org List-ID: On Sat, Apr 28, 2018 at 11:17:30AM -0700, Y Song wrote: > On Sat, Apr 28, 2018 at 9:56 AM, Alexei Starovoitov > wrote: > > On Sat, Apr 28, 2018 at 12:02:04AM -0700, Yonghong Song wrote: > >> The test attached a raw_tracepoint program to sched/sched_switch. > >> It tested to get stack for user space, kernel space and user > >> space with build_id request. It also tested to get user > >> and kernel stack into the same buffer with back-to-back > >> bpf_get_stack helper calls. > >> > >> Whenever the kernel stack is available, the user space > >> application will check to ensure that the kernel function > >> for raw_tracepoint ___bpf_prog_run is part of the stack. > >> > >> Signed-off-by: Yonghong Song > > ... > >> +static int get_stack_print_output(void *data, int size) > >> +{ > >> + bool good_kern_stack = false, good_user_stack = false; > >> + const char *expected_func = "___bpf_prog_run"; > > > > so the test works with interpreter only? > > I guess that's ok for now, but needs to fixed for > > configs with CONFIG_BPF_JIT_ALWAYS_ON=y > > I did not test CONFIG_BPF_JIT_ALWAYS_ON=y. > I can have a followup patch for this if the patch set does not need respin. I was thinking to apply the set and do the fix in the follow up, but testing it with jit_enable=1 I don't see it's failing, so something is wrong with the test. Also get_stack_raw_tp_action() keeps spawning new 'dd' in the background which is not killed after test stops. Please fix both issues in respin.