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 57908C433ED for ; Thu, 22 Apr 2021 09:48:04 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 0EB8860238 for ; Thu, 22 Apr 2021 09:48:03 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234773AbhDVJsh (ORCPT ); Thu, 22 Apr 2021 05:48:37 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:59124 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230270AbhDVJsg (ORCPT ); Thu, 22 Apr 2021 05:48:36 -0400 Received: from mail-wm1-x32e.google.com (mail-wm1-x32e.google.com [IPv6:2a00:1450:4864:20::32e]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 25CE5C06138B for ; Thu, 22 Apr 2021 02:48:02 -0700 (PDT) Received: by mail-wm1-x32e.google.com with SMTP id q123-20020a1c43810000b029012c7d852459so3900237wma.0 for ; Thu, 22 Apr 2021 02:48:02 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tigera.io; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=e0wB+8LWoSHa2GesXosjoVr98ClHI2C+EzkIcTmgClI=; b=WwS3aZBqFszFrbR1qs6xGYxOyqDpPkFY2r3EF63TXkGOWh65REBH5gHGdw/I2aXQsC 0+FU/fRKQzsDoNmCujV4Y+q3EFmIyvhtnZXg5NRaeCs6puMWImxLCcPxhUAgpH4HVTPC WXMFNyXTtRkJ/RtqyEgjO441hqsFI9yOZjqME= 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=e0wB+8LWoSHa2GesXosjoVr98ClHI2C+EzkIcTmgClI=; b=H7WqMAebleWytqzMv8Nj0EWnbtpAo7wnhyLexc+DbqjyYnfLnF+yfYsmMpdjyLylci xF9K4BUn5Zy8QsGw2usR2hVLfKsdTYtWeFyjqqKxo14tWgH/K7clu2BmkAjVewu4KIeA nDEqBjd7nrNdXtdjmQv7cIoLbfYN1k0lpL0P4IvS0KnuF9uV1eNhAkqfy36U8EPPxmPe ZhZJl0qiirUSH5br+uy6LYjarG+M6JKo40Q+wyTdEZEk3evnTLYPR8qFMeBRp9OMkOAo bkxJm3fy0dhjI38wlxBxZxvyMciUUAH3ZfcYZ/uqXFMaCcUYoKSvun/KOJARFpbflEmW 58rQ== X-Gm-Message-State: AOAM532H96/zXOqP48UWJimwINTqKrBQfDZKSfnHBTemq5YEgKhzfJ3l 8QoQDHptJ2U93hjmU6mubrOEAVmk7lmG3lrgEnnArA== X-Google-Smtp-Source: ABdhPJxDtSxcLvikHxQEhHxlbbW6PsL6kkqYQSnRdfqxv0h5SdqoKOlPazhs9irT5B/Zj/3Qw+9dRgEn12X8kEBoDUA= X-Received: by 2002:a1c:a78b:: with SMTP id q133mr2939987wme.68.1619084880811; Thu, 22 Apr 2021 02:48:00 -0700 (PDT) MIME-Version: 1.0 References: <20210420193740.124285-1-memxor@gmail.com> <20210420193740.124285-3-memxor@gmail.com> <9b0aab2c-9b92-0bcb-2064-f66dd39e7552@iogearbox.net> <20210421230858.ruwqw5jvsy7cjioy@apollo> <21c55619-e26d-d901-076e-20f55302c2fd@iogearbox.net> <20210421233054.sgs5lemcuycx4vjb@apollo> In-Reply-To: From: Shaun Crampton Date: Thu, 22 Apr 2021 10:47:50 +0100 Message-ID: Subject: Re: [PATCH bpf-next v3 2/3] libbpf: add low level TC-BPF API To: Daniel Borkmann Cc: Kumar Kartikeya Dwivedi , bpf@vger.kernel.org, =?UTF-8?B?VG9rZSBIw7hpbGFuZC1Kw7hyZ2Vuc2Vu?= , Alexei Starovoitov , Andrii Nakryiko , Martin KaFai Lau , Song Liu , Yonghong Song , John Fastabend , KP Singh , "David S. Miller" , Jakub Kicinski , Jesper Dangaard Brouer , netdev@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: bpf@vger.kernel.org > Nope, just get it from the prog itself. Looks like the API returns the prog ID, so from that we can look up the prog and then get its tag? If so that meets our needs. Alternatively, if the API allows for atomic replacement of a BPF program with another, that'd also work for us. The use case is that our daemon is restarted and it doesn't know what BPF program was previously loaded. We want to make sure we end up with the latest version loaded, either by doing a seamless replace with the latest version or by checking if the loaded version matches the latest.