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=-5.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS autolearn=no 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 44CD0C2B9F7 for ; Fri, 28 May 2021 18:35:46 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 1CFF1613B5 for ; Fri, 28 May 2021 18:35:46 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229481AbhE1ShU (ORCPT ); Fri, 28 May 2021 14:37:20 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:60306 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229463AbhE1ShT (ORCPT ); Fri, 28 May 2021 14:37:19 -0400 Received: from mail-ej1-x632.google.com (mail-ej1-x632.google.com [IPv6:2a00:1450:4864:20::632]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 7E884C061574 for ; Fri, 28 May 2021 11:35:44 -0700 (PDT) Received: by mail-ej1-x632.google.com with SMTP id h24so2794927ejy.2 for ; Fri, 28 May 2021 11:35:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=riotgames.com; s=riotgames; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=k4phGkqZLrTLpTp6AX2enjIvUtsj3fvnR6PgYnPVTb0=; b=XBkZ9CGQi9H3QWI+tVUEwrOZ4XSlxodsNqg/e3YvvtQ8rjwJTPtoUMKCBxcn4GUOZV 0GZ+R/fC3IJIcQ9qiHFOrYdsVv/gNdqDapvgO/P707CCwLFiBly1Tc5CN3QHi9uqjCF9 pr1b59je/sFjLjkIHoW5zL2AAcQiTyiC5vnyc= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=k4phGkqZLrTLpTp6AX2enjIvUtsj3fvnR6PgYnPVTb0=; b=KMsO/vlTiA/m4osgJ6Bk11rgREN8OKgZK83/bYAN8vbWLNHi1YhEVIx/6Ot1l1uRB1 fFR+4NfPHxClcc9VUZrPEp0PPQr+uhkaPz2Diyb2Vf4J9islEmxPwV5a0E1/g+AZsRG5 e5i2gQF665MU4FjmEeGBlyEQV3AvrwgFf4CjRo1fTEQekEuCZ6vwVLeWr/XxVaSrk2iZ 2q5DrqtO12Ynq1K9vk4c2uddWv4OwvDOR3HgSEOCicP4erDFT9hx0/xRwDwcyASbX3Ps 1PMGH+6hV3loQdx1sC5zbCSXGNJgooFmxTmNLo3Q6Fi+ZcZgewAKhBURohn8g+gw0za1 0x3Q== X-Gm-Message-State: AOAM533xyNbVvQPg78RjY2GZmdwXckCLisY8pBPzIa48CfMPsOVLyqx9 V5MtNH9rUMHiZNHI7O1aTbjxt5+Qww8USTItDDUMNA== X-Google-Smtp-Source: ABdhPJytf53oNyCn37Vpebb5ATs6HUvuk+jrF8MJj0IIWEBLGWWD5pubK24EeloScSm30RK8YLlicfw/twOtXFfCIKs= X-Received: by 2002:a17:906:3785:: with SMTP id n5mr10487401ejc.127.1622226943091; Fri, 28 May 2021 11:35:43 -0700 (PDT) MIME-Version: 1.0 References: <20210527201341.7128-1-zeffron@riotgames.com> <20210527201341.7128-4-zeffron@riotgames.com> In-Reply-To: From: Zvi Effron Date: Fri, 28 May 2021 11:35:31 -0700 Message-ID: Subject: Re: [PATCH bpf-next v2 3/3] selftests/bpf: Add test for xdp_md context in BPF_PROG_TEST_RUN To: Andrii Nakryiko Cc: bpf , Alexei Starovoitov , "David S. Miller" , Daniel Borkmann , Jesper Dangaard Brouer , Cody Haas , Lisa Watanabe Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: bpf@vger.kernel.org On Thu, May 27, 2021 at 6:28 PM Andrii Nakryiko wrote: > > On Thu, May 27, 2021 at 1:14 PM Zvi Effron wrote: > > > > + /* Data past the end of the kernel's struct xdp_md must be 0 */ > > + bad_ctx[sizeof(bad_ctx) - 1] = 1; > > + tattr.ctx_in = bad_ctx; > > + tattr.ctx_size_in = sizeof(bad_ctx); > > + err = bpf_prog_test_run_opts(prog_fd, &tattr); > > + ASSERT_ERR(err, "bpf_prog_test_run(test2)"); > > + ASSERT_EQ(errno, 22, "test2-errno"); > > by the time you are checking errno it might get overwritten. If you > want to check errno, you have to remember it right after the function > returns > I just noticed that the CHECK macro (which the ASSERT macro wraps) already saves/restores errno. Is this not behavior that can be relied on?