From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-10.3 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,MAILING_LIST_MULTI, NICE_REPLY_A,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_SANE_1 autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 6A9EEC433B4 for ; Wed, 21 Apr 2021 21:38:58 +0000 (UTC) Received: from lists.ozlabs.org (lists.ozlabs.org [112.213.38.117]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 22DD9613ED for ; Wed, 21 Apr 2021 21:38:57 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 22DD9613ED Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=csgroup.eu Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=linuxppc-dev-bounces+linuxppc-dev=archiver.kernel.org@lists.ozlabs.org Received: from boromir.ozlabs.org (localhost [IPv6:::1]) by lists.ozlabs.org (Postfix) with ESMTP id 4FQYpR4jHBz30Hh for ; Thu, 22 Apr 2021 07:38:55 +1000 (AEST) Authentication-Results: lists.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=csgroup.eu (client-ip=93.17.236.30; helo=pegase1.c-s.fr; envelope-from=christophe.leroy@csgroup.eu; receiver=) Received: from pegase1.c-s.fr (pegase1.c-s.fr [93.17.236.30]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by lists.ozlabs.org (Postfix) with ESMTPS id 4FQLWd276hz3c2N for ; Wed, 21 Apr 2021 23:10:18 +1000 (AEST) Received: from localhost (mailhub1-int [192.168.12.234]) by localhost (Postfix) with ESMTP id 4FQLWV02G6z9vBLd; Wed, 21 Apr 2021 15:10:14 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at c-s.fr Received: from pegase1.c-s.fr ([192.168.12.234]) by localhost (pegase1.c-s.fr [192.168.12.234]) (amavisd-new, port 10024) with ESMTP id 3N9b8eVAXEqi; Wed, 21 Apr 2021 15:10:13 +0200 (CEST) Received: from messagerie.si.c-s.fr (messagerie.si.c-s.fr [192.168.25.192]) by pegase1.c-s.fr (Postfix) with ESMTP id 4FQLWT5ptNz9vBLc; Wed, 21 Apr 2021 15:10:13 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by messagerie.si.c-s.fr (Postfix) with ESMTP id 04BB08B82B; Wed, 21 Apr 2021 15:10:15 +0200 (CEST) X-Virus-Scanned: amavisd-new at c-s.fr Received: from messagerie.si.c-s.fr ([127.0.0.1]) by localhost (messagerie.si.c-s.fr [127.0.0.1]) (amavisd-new, port 10023) with ESMTP id yvkEbdNGcAw4; Wed, 21 Apr 2021 15:10:14 +0200 (CEST) Received: from [192.168.4.90] (unknown [192.168.4.90]) by messagerie.si.c-s.fr (Postfix) with ESMTP id D3C3C8B825; Wed, 21 Apr 2021 15:10:11 +0200 (CEST) Subject: Re: [PATCH bpf-next 1/2] bpf: Remove bpf_jit_enable=2 debugging mode To: Alexei Starovoitov References: <20210415093250.3391257-1-Jianlin.Lv@arm.com> <9c4a78d2-f73c-832a-e6e2-4b4daa729e07@iogearbox.net> <0dea05ba-9467-0d84-4515-b8766f60318e@csgroup.eu> From: Christophe Leroy Message-ID: <7dc31256-eb1d-dc93-5e55-2de27475e0c6@csgroup.eu> Date: Wed, 21 Apr 2021 15:10:10 +0200 User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.9.1 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: fr Content-Transfer-Encoding: 8bit X-Mailman-Approved-At: Thu, 22 Apr 2021 07:38:35 +1000 X-BeenThere: linuxppc-dev@lists.ozlabs.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Ian Rogers , Song Liu , "open list:DOCUMENTATION" , Zi Shen Lim , Alexei Starovoitov , Russell King , "David S. Miller" , Paul Mackerras , Sandipan Das , "H. Peter Anvin" , sparclinux@vger.kernel.org, Shubham Bansal , Mahesh Bandewar , Will Deacon , linux-riscv , linux-s390 , Ilya Leoshkevich , paulburton@kernel.org, Jonathan Corbet , Mauro Carvalho Chehab , Masahiro Yamada , X86 ML , John Fastabend , Andrii Nakryiko , Christian Borntraeger , Quentin Monnet , Dmitry Vyukov , Catalin Marinas , "Naveen N . Rao" , Jakub Kicinski , Tobias Klauser , grantseltzer@gmail.com, Xi Wang , Albert Ou , Kees Cook , Vasily Gorbik , Luke Nelson , Heiko Carstens , KP Singh , iecedge@gmail.com, Simon Horman , Borislav Petkov , Alexander Viro , Paul Walmsley , Jianlin Lv , Nicolas Dichtel , Ingo Molnar , linux-arm-kernel , Wang YanQing , tsbogend@alpha.franken.de, Daniel Borkmann , Hideaki YOSHIFUJI , Network Development , David Ahern , linux-mips@vger.kernel.org, LKML , Yonghong Song , =?UTF-8?B?QmrDtnJuIFTDtnBlbA==?= , Palmer Dabbelt , Thomas Gleixner , bpf , ppc-dev , Martin KaFai Lau Errors-To: linuxppc-dev-bounces+linuxppc-dev=archiver.kernel.org@lists.ozlabs.org Sender: "Linuxppc-dev" Le 20/04/2021 à 05:28, Alexei Starovoitov a écrit : > On Sat, Apr 17, 2021 at 1:16 AM Christophe Leroy > wrote: >> >> >> >> Le 16/04/2021 à 01:49, Alexei Starovoitov a écrit : >>> On Thu, Apr 15, 2021 at 8:41 AM Quentin Monnet wrote: >>>> >>>> 2021-04-15 16:37 UTC+0200 ~ Daniel Borkmann >>>>> On 4/15/21 11:32 AM, Jianlin Lv wrote: >>>>>> For debugging JITs, dumping the JITed image to kernel log is discouraged, >>>>>> "bpftool prog dump jited" is much better way to examine JITed dumps. >>>>>> This patch get rid of the code related to bpf_jit_enable=2 mode and >>>>>> update the proc handler of bpf_jit_enable, also added auxiliary >>>>>> information to explain how to use bpf_jit_disasm tool after this change. >>>>>> >>>>>> Signed-off-by: Jianlin Lv >>>> >>>> Hello, >>>> >>>> For what it's worth, I have already seen people dump the JIT image in >>>> kernel logs in Qemu VMs running with just a busybox, not for kernel >>>> development, but in a context where buiding/using bpftool was not >>>> possible. >>> >>> If building/using bpftool is not possible then majority of selftests won't >>> be exercised. I don't think such environment is suitable for any kind >>> of bpf development. Much so for JIT debugging. >>> While bpf_jit_enable=2 is nothing but the debugging tool for JIT developers. >>> I'd rather nuke that code instead of carrying it from kernel to kernel. >>> >> >> When I implemented JIT for PPC32, it was extremely helpfull. >> >> As far as I understand, for the time being bpftool is not usable in my environment because it >> doesn't support cross compilation when the target's endianess differs from the building host >> endianess, see discussion at >> https://lore.kernel.org/bpf/21e66a09-514f-f426-b9e2-13baab0b938b@csgroup.eu/ >> >> That's right that selftests can't be exercised because they don't build. >> >> The question might be candid as I didn't investigate much about the replacement of "bpf_jit_enable=2 >> debugging mode" by bpftool, how do we use bpftool exactly for that ? Especially when using the BPF >> test module ? > > the kernel developers can add any amount of printk and dumps to debug > their code, > but such debugging aid should not be part of the production kernel. > That sysctl was two things at once: debugging tool for kernel devs and > introspection for users. > bpftool jit dump solves the 2nd part. It provides JIT introspection to users. > Debugging of the kernel can be done with any amount of auxiliary code > including calling print_hex_dump() during jiting. > I get the following message when trying the command suggested in the patch message: root@vgoip:~# ./bpftool prog dump jited Error: No libbfd support Christophe