Received: by 2002:a05:6358:9144:b0:117:f937:c515 with SMTP id r4csp8897151rwr; Thu, 11 May 2023 07:32:35 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ4WlGZUr7d022TjvW4hFXhu7n2rZygM4zk00FDR68cw3AjsgzAkfwzBOOymtL6sKGlenIbg X-Received: by 2002:a17:90a:fa5:b0:24d:f992:5286 with SMTP id 34-20020a17090a0fa500b0024df9925286mr10106096pjz.36.1683815554822; Thu, 11 May 2023 07:32:34 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1683815554; cv=none; d=google.com; s=arc-20160816; b=ulAjOVYnSciSgVfSDDOJyeZanjskYVqxOE5AR9j4zNQRvop104fg7Bklmq9iWgfmBl 5KV+wv7bJAXhoY6jRF08+4+TXOB9MwpVcgHLmlwrDsWooXaTzGdMQiscfkW14JE0brk5 TMzjGACU5cDWX6jtYbSwu0hh2qa7gqonrUBHM7CINT9et6M1pVuuov+zvq5Souycvu/j MDA6IqRHHAj3u7hs9LP31lUoW0oSRL46ux8k9urGxU+wkJRhW9nkMxFaicXEVgUTxOME BGAEboODcpZIJKROxdvP52NpbVnOlMUCEa7MkGcldTaFWjcCY9ZPv98lEofXvzpLmAR/ GorA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:in-reply-to:from :references:cc:to:content-language:subject:user-agent:mime-version :date:message-id; bh=1u+d4r2R4N/KIO20EYyZMJiKVyVixABxD1J+5vx6zFI=; b=rAofc0Y4T/hteukZ4aJQi1w4+8A4Y/PWG6NzEkftZjrmcxoELv05YdfasagTplDaBf X8josWDxe17x7BQttF1zq1N9T4Rxx+kFjOF7Uq6L5JsBFBOWMcnEdtyrN/pbAUgt0GHS rzzB4SEWXTp7q4EzaWG5SIBeMFQpN+NBvYjg5icC11cxe0TVKRFQ/lLDZJeRnC2v0SvD cJXWB8X1WXhA22YO6Olerhbyfbi/SfWSs+bCrzuFCPSEZtSevtgVwlL+HRid2EFfoFtJ vmLaFoBAuONceEUnDInmJhYvEK2or8CDGQBVTY6Sdw3afXVFNDFc9SoPVTKlU/NM9/sY 1HrA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id 142-20020a630094000000b0053063a32dacsi3422684pga.826.2023.05.11.07.32.22; Thu, 11 May 2023 07:32:34 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S238419AbjEKOWh (ORCPT + 99 others); Thu, 11 May 2023 10:22:37 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:40842 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S238421AbjEKOW2 (ORCPT ); Thu, 11 May 2023 10:22:28 -0400 Received: from dggsgout11.his.huawei.com (unknown [45.249.212.51]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 156E6106E6; Thu, 11 May 2023 07:22:15 -0700 (PDT) Received: from mail02.huawei.com (unknown [172.30.67.153]) by dggsgout11.his.huawei.com (SkyGuard) with ESMTP id 4QHDcK4bL0z4f3l8W; Thu, 11 May 2023 22:22:09 +0800 (CST) Received: from [10.67.111.192] (unknown [10.67.111.192]) by APP4 (Coremail) with SMTP id gCh0CgCneK8R+lxkCyLsJA--.46604S2; Thu, 11 May 2023 22:22:10 +0800 (CST) Message-ID: <7d5cc151-e6c3-73a9-59c0-c4e5821cec1c@huaweicloud.com> Date: Thu, 11 May 2023 22:22:09 +0800 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.9.0 Subject: Re: [PATCH bpf-next v2] arm64,bpf: Support struct arguments in the BPF trampoline Content-Language: en-US To: Florent Revest , bpf@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org Cc: ast@kernel.org, daniel@iogearbox.net, andrii@kernel.org, kpsingh@kernel.org, mark.rutland@arm.com, zlim.lnx@gmail.com, yhs@meta.com, Yonghong Song References: <20230511140507.514888-1-revest@chromium.org> From: Xu Kuohai In-Reply-To: <20230511140507.514888-1-revest@chromium.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-CM-TRANSID: gCh0CgCneK8R+lxkCyLsJA--.46604S2 X-Coremail-Antispam: 1UD129KBjvdXoW7Jr13uFWxWr17CF1rWr4kJFb_yoW3WFbE9F ZrtF97G398t3W3tr129r43Zr93CFW7GF13KF4ftryIv34kZrWDCa4vk3sxtw48tFW2qFnx A3Z8tryIqrW3WjkaLaAFLSUrUUUUUb8apTn2vfkv8UJUUUU8Yxn0WfASr-VFAUDa7-sFnT 9fnUUIcSsGvfJTRUUUbIxYFVCjjxCrM7AC8VAFwI0_Gr0_Xr1l1xkIjI8I6I8E6xAIw20E Y4v20xvaj40_Wr0E3s1l1IIY67AEw4v_Jr0_Jr4l8cAvFVAK0II2c7xJM28CjxkF64kEwV A0rcxSw2x7M28EF7xvwVC0I7IYx2IY67AKxVW7JVWDJwA2z4x0Y4vE2Ix0cI8IcVCY1x02 67AKxVW8Jr0_Cr1UM28EF7xvwVC2z280aVAFwI0_GcCE3s1l84ACjcxK6I8E87Iv6xkF7I 0E14v26rxl6s0DM2AIxVAIcxkEcVAq07x20xvEncxIr21l5I8CrVACY4xI64kE6c02F40E x7xfMcIj6xIIjxv20xvE14v26r1j6r18McIj6I8E87Iv67AKxVWUJVW8JwAm72CE4IkC6x 0Yz7v_Jr0_Gr1lF7xvr2IY64vIr41lFIxGxcIEc7CjxVA2Y2ka0xkIwI1lc7I2V7IY0VAS 07AlzVAYIcxG8wCF04k20xvY0x0EwIxGrwCFx2IqxVCFs4IE7xkEbVWUJVW8JwC20s026c 02F40E14v26r1j6r18MI8I3I0E7480Y4vE14v26r106r1rMI8E67AF67kF1VAFwI0_Jw0_ GFylIxkGc2Ij64vIr41lIxAIcVC0I7IYx2IY67AKxVWUJVWUCwCI42IY6xIIjxv20xvEc7 CjxVAFwI0_Gr0_Cr1lIxAIcVCF04k26cxKx2IYs7xG6rW3Jr0E3s1lIxAIcVC2z280aVAF wI0_Jr0_Gr1lIxAIcVC2z280aVCY1x0267AKxVW8JVW8JrUvcSsGvfC2KfnxnUUI43ZEXa 7IU1zuWJUUUUU== X-CM-SenderInfo: 50xn30hkdlqx5xdzvxpfor3voofrz/ X-CFilter-Loop: Reflected X-Spam-Status: No, score=-4.0 required=5.0 tests=BAYES_00,KHOP_HELO_FCRDNS, MAY_BE_FORGED,NICE_REPLY_A,SPF_HELO_NONE,SPF_NONE,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 5/11/2023 10:05 PM, Florent Revest wrote: > This extends the BPF trampoline JIT to support attachment to functions > that take small structures (up to 128bit) as argument. This is trivially > achieved by saving/restoring a number of "argument registers" rather > than a number of arguments. > > The AAPCS64 section 6.8.2 describes the parameter passing ABI. > "Composite types" (like C structs) below 16 bytes (as enforced by the > BPF verifier) are provided as part of the 8 argument registers as > explained in the section C.12. > > Signed-off-by: Florent Revest > Acked-by: Yonghong Song > --- > > Diff since v1: The stack layout comment now says "arg reg" instead of "arg". > LGTM. Thanks for updating the description.