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.1 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=ham 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 4D922C433E0 for ; Wed, 29 Jul 2020 21:36:16 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 1DBB720809 for ; Wed, 29 Jul 2020 21:36:16 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1596058576; bh=cg9ZkTZgwoi1MOIboVnw0S2lL2mefCcWKqgPPQms7I8=; h=References:In-Reply-To:From:Date:Subject:To:Cc:List-ID:From; b=UZwo7Sy3KzvSTeJ+iN25syuBDq8T+A3U9tTWabJAiiwXnqZPr0GdCTZ/PnSO97vKS 7lVe9WAAIDOl4Rxwp8TjntQgOD9Llz3PnhMqeR6nRmDO8lW6e5C8Vz4WbLqqE2l6dR 5ja/3FtehNQEr08Y+j+XULf3sw1sBcLbw1zpBBIs= Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727789AbgG2VgP (ORCPT ); Wed, 29 Jul 2020 17:36:15 -0400 Received: from mail.kernel.org ([198.145.29.99]:41408 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727775AbgG2VgK (ORCPT ); Wed, 29 Jul 2020 17:36:10 -0400 Received: from mail-lf1-f51.google.com (mail-lf1-f51.google.com [209.85.167.51]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id AF96D2053B; Wed, 29 Jul 2020 21:36:09 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1596058570; bh=cg9ZkTZgwoi1MOIboVnw0S2lL2mefCcWKqgPPQms7I8=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=s+8zrJ6GCoYrHRRNEnj+nXaGs51Od6Yqdr5H0hw9DdwoavNKwuJX0mpGEJCGnRJXZ Jv9bLbTh2oVt04Asq4aA6/H4txSsYLqMZSKE90UkqJbUhec6WjSw5WHUvzfM1mPJt1 mBsZDWMTWmcBdcLdnxld6s3LWpADe/vCHYqVX0Iw= Received: by mail-lf1-f51.google.com with SMTP id h8so13813024lfp.9; Wed, 29 Jul 2020 14:36:09 -0700 (PDT) X-Gm-Message-State: AOAM533hHk/EaHH0n641ahPfGJ4G5cV8HwRgUI5NT4HZJoLgEEuO0yXC R/Tpelwd3I+NidPaS6w68AuS9+AV2GJeOI0iZ+Q= X-Google-Smtp-Source: ABdhPJz2VCnfb8b3Z6VNqZbccAEguD7qJX1yhonk8p/4wUGbLeRBaXomq2CAJ5g+0ueEmbVFLQkrWqaSGhfFZfBJ0gU= X-Received: by 2002:a19:c501:: with SMTP id w1mr94378lfe.172.1596058568103; Wed, 29 Jul 2020 14:36:08 -0700 (PDT) MIME-Version: 1.0 References: <159603940602.4454.2991262810036844039.stgit@john-Precision-5820-Tower> <159603981285.4454.14040533307191666685.stgit@john-Precision-5820-Tower> In-Reply-To: <159603981285.4454.14040533307191666685.stgit@john-Precision-5820-Tower> From: Song Liu Date: Wed, 29 Jul 2020 14:35:56 -0700 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [bpf PATCH v2 3/5] bpf, selftests: Add tests for ctx access in sock_ops with single register To: John Fastabend Cc: Martin KaFai Lau , Daniel Borkmann , Alexei Starovoitov , Networking , bpf Content-Type: text/plain; charset="UTF-8" Sender: bpf-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: bpf@vger.kernel.org On Wed, Jul 29, 2020 at 9:24 AM John Fastabend wrote: > [...] > > Signed-off-by: John Fastabend Acked-by: Song Liu > --- > .../testing/selftests/bpf/progs/test_tcpbpf_kern.c | 13 +++++++++++++ > 1 file changed, 13 insertions(+) > > diff --git a/tools/testing/selftests/bpf/progs/test_tcpbpf_kern.c b/tools/testing/selftests/bpf/progs/test_tcpbpf_kern.c > index 1f1966e..f8b13682 100644 > --- a/tools/testing/selftests/bpf/progs/test_tcpbpf_kern.c > +++ b/tools/testing/selftests/bpf/progs/test_tcpbpf_kern.c > @@ -54,6 +54,7 @@ SEC("sockops") > int bpf_testcb(struct bpf_sock_ops *skops) > { > char header[sizeof(struct ipv6hdr) + sizeof(struct tcphdr)]; > + struct bpf_sock_ops *reuse = skops; > struct tcphdr *thdr; > int good_call_rv = 0; > int bad_call_rv = 0; > @@ -62,6 +63,18 @@ int bpf_testcb(struct bpf_sock_ops *skops) > int v = 0; > int op; > > + /* Test reading fields in bpf_sock_ops using single register */ > + asm volatile ( > + "%[reuse] = *(u32 *)(%[reuse] +96)" > + : [reuse] "+r"(reuse) > + :); > + > + asm volatile ( > + "%[op] = *(u32 *)(%[skops] +96)" > + : [op] "+r"(op) > + : [skops] "r"(skops) > + :); > + Shall we add a separate test for this? It does seem to fix in bpf_testcb(). > op = (int) skops->op; > > update_event_map(op); >