Received: by 2002:a05:7412:31a9:b0:e2:908c:2ebd with SMTP id et41csp4778061rdb; Fri, 15 Sep 2023 11:57:03 -0700 (PDT) X-Google-Smtp-Source: AGHT+IHvnqn25YRKpECs0lm9FYv+GLn8jH8PaLgXvTZKSDhK7Ebf1Aoc8c7OhJPPLqnrFzX5sUYy X-Received: by 2002:a05:6a20:1592:b0:153:7515:9919 with SMTP id h18-20020a056a20159200b0015375159919mr3109836pzj.21.1694804223180; Fri, 15 Sep 2023 11:57:03 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1694804223; cv=none; d=google.com; s=arc-20160816; b=TbYUfQTYiucDDPUxGZQmxtj2HrMc5PlVv8W7LLS8STioePanELkxRriDGSlMQJm4Po e3VcfZLbRj4Z/RZAwTLoaA/fJ63S2brxKsUXckhxT87kWXA9Ztx06tO1yutDMzifQAN+ 2idz5QUfQjUUINFy5Uoj72yTUC8MXnO1nTec1S1M3umX5PWiIZhm/LbMb3kP2LYNgsiI 81HF5FaHf/JrHLgtOu9soMgeL3uNSgy0PqD5L22ncM1kSzLYwBlIyxSsZkiygmUqIF1v lSVloPuN3Vr7lSFoXw0IeUPw6Nl/jSy56Hx+Ogo3CegvbpzraodBELWrp07Rb57asDD4 VvZw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:cc:to:subject :message-id:date:from:in-reply-to:references:mime-version :dkim-signature; bh=K0bvV0lS/2rkOpCVyMIWA7y2gWbDIjEZJpDVOU8Ykh0=; fh=kw0/5p0dU10QbiTy42x+TAMlkDuTes3k/3m5aJhZzdM=; b=Tvdh7huJnYmsEFH0zotB/CDmFq2JKuktHP4NccUrvCdrCj8slqd9xhlXkbtoPc/5FP /mmstBOhHaaJcZLSZd1TX8UdfLFAi+HAQIh9j8cHng+WTf5Fpr95KtsHGBvitHctPAau nt+mlsBWB7P9G5oPJeMEu9UhiQN6S08SlAL6rk2R496rxh8LwtVQQjs1ccnls3XxZr8m hHfhTfmzDPH/AgMDjzMPbEzpbWSae+324+h5/JT4VB0T+2NuK1gc6FtDE4a5Cwaj+z8r gItQrrb1M1plsR6oEF/9XuUMNv0QPpNQDfVGXTcAjo0it0QUDsC4nswG/cBEJqrm7jya cbNQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20230601 header.b=naZ8bGRn; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.36 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Return-Path: Received: from pete.vger.email (pete.vger.email. [23.128.96.36]) by mx.google.com with ESMTPS id 5-20020a630d45000000b0055be9543340si3606516pgn.872.2023.09.15.11.57.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 15 Sep 2023 11:57:03 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.36 as permitted sender) client-ip=23.128.96.36; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20230601 header.b=naZ8bGRn; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.36 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by pete.vger.email (Postfix) with ESMTP id 7F3B5808BE77; Fri, 15 Sep 2023 09:23:35 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at pete.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232548AbjIOQWv (ORCPT + 99 others); Fri, 15 Sep 2023 12:22:51 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:58988 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229445AbjIOQWS (ORCPT ); Fri, 15 Sep 2023 12:22:18 -0400 Received: from mail-pj1-x102f.google.com (mail-pj1-x102f.google.com [IPv6:2607:f8b0:4864:20::102f]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 3045C268E for ; Fri, 15 Sep 2023 09:22:03 -0700 (PDT) Received: by mail-pj1-x102f.google.com with SMTP id 98e67ed59e1d1-274928c74b0so910830a91.3 for ; Fri, 15 Sep 2023 09:22:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1694794922; x=1695399722; darn=vger.kernel.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=K0bvV0lS/2rkOpCVyMIWA7y2gWbDIjEZJpDVOU8Ykh0=; b=naZ8bGRn5kOtwUE3wvTswyBTJYOjtXYTFCFh5a6ZyYqsyjXCpiTEekTXqURc45gKNW NE8UMcobj6AHulSDAXF8rTqunyV8YG2S6gno1rKFVJRlX+T1HYEtK0s2daeXTS3EGdbB nJqYHORSMz5bXEj5funhuVvE1qzJSsqJzd9xhu8wXmvD/RWsyZzY4r27LBEDdP1DChQ3 VTYr3MjRhdn50xIWC8Pf+OoW35jZkxoB4oRbqMNTxjKfC8tT7kMcHqN7r7XV1ez3b76i rtHb4SiyhnZjjOk9cVQi/JNctU6nQREpVUCfHmQ3hOlaR+5KKozQLvVpBUMlv1uzApm9 h1tA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1694794922; x=1695399722; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=K0bvV0lS/2rkOpCVyMIWA7y2gWbDIjEZJpDVOU8Ykh0=; b=Kr18ViX2UEXhoey6vYZQecJTBkKtPkEDk0m1kETgvlTo64oKYmjthcpfYCp/RghRm0 OLoegMQEI1Kz7zryRLv62oJuUPlYlZapdF8hSD2Am99gezGbWefUPwBp5HdJRQJnHFkp mUqmFBBOgr3dfyLJHK4f/hoLQi+TcuZd7BOLiVnDWVOlEGQICp7/Bbfd09GHSCtGwdTe 0fOMk5AuQhOOwrHQyY1O5jg5FJMEu7KmHHstxILuFm5vNNJ6vS68c1JZLFWvIUdqU2cM 8AOc8hlTgsTaC7DnEElEHqQDeKh+1jG8aIB85TIxKd3EFkr5+1Vi0Jprb8M6qCB0eWHS A9Gw== X-Gm-Message-State: AOJu0YxxT6gysE194ZkxvEDnDPrJDhAvKUSdXSULfe1qFATFVD/XEtOl TQmsGElV1jY8PsMrNo3EL0zeqaFUfmAmc+hmBXoM2w== X-Received: by 2002:a17:90b:4398:b0:262:fb5d:147b with SMTP id in24-20020a17090b439800b00262fb5d147bmr1970432pjb.19.1694794922471; Fri, 15 Sep 2023 09:22:02 -0700 (PDT) MIME-Version: 1.0 References: <20230915083914.65538-1-larysa.zaremba@intel.com> In-Reply-To: <20230915083914.65538-1-larysa.zaremba@intel.com> From: Stanislav Fomichev Date: Fri, 15 Sep 2023 09:21:51 -0700 Message-ID: Subject: Re: [PATCH bpf-next v2] bpf: Allow to use kfunc XDP hints and frags together To: Larysa Zaremba Cc: bpf@vger.kernel.org, Alexei Starovoitov , Daniel Borkmann , Andrii Nakryiko , Martin KaFai Lau , Song Liu , Yonghong Song , John Fastabend , KP Singh , Hao Luo , Jiri Olsa , linux-kernel@vger.kernel.org, Maciej Fijalkowski Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spam-Status: No, score=-8.4 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_IN_DEF_DKIM_WL autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on pete.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (pete.vger.email [0.0.0.0]); Fri, 15 Sep 2023 09:23:35 -0700 (PDT) On Fri, Sep 15, 2023 at 1:45=E2=80=AFAM Larysa Zaremba wrote: > > There is no fundamental reason, why multi-buffer XDP and XDP kfunc RX hin= ts > cannot coexist in a single program. > > Allow those features to be used together by modifying the flags condition > for dev-bound-only programs, segments are still prohibited for fully > offloaded programs, hence additional check. > > Suggested-by: Stanislav Fomichev > Link: https://lore.kernel.org/bpf/CAKH8qBuzgtJj=3DOKMdsxEkyML36VsAuZpcrsX= cyqjdKXSJCBq=3DQ@mail.gmail.com/ > Reviewed-by: Maciej Fijalkowski > Signed-off-by: Larysa Zaremba Acked-by: Stanislav Fomichev Thank you! > --- > kernel/bpf/offload.c | 9 ++++++++- > 1 file changed, 8 insertions(+), 1 deletion(-) > > diff --git a/kernel/bpf/offload.c b/kernel/bpf/offload.c > index ee35f33a96d1..9d8e508c9b86 100644 > --- a/kernel/bpf/offload.c > +++ b/kernel/bpf/offload.c > @@ -232,7 +232,14 @@ int bpf_prog_dev_bound_init(struct bpf_prog *prog, u= nion bpf_attr *attr) > attr->prog_type !=3D BPF_PROG_TYPE_XDP) > return -EINVAL; > > - if (attr->prog_flags & ~BPF_F_XDP_DEV_BOUND_ONLY) > + if (attr->prog_flags & ~(BPF_F_XDP_DEV_BOUND_ONLY | BPF_F_XDP_HAS= _FRAGS)) > + return -EINVAL; > + > + /* Frags are allowed only if program is dev-bound-only, but not > + * if it is requesting bpf offload. > + */ > + if (attr->prog_flags & BPF_F_XDP_HAS_FRAGS && > + !(attr->prog_flags & BPF_F_XDP_DEV_BOUND_ONLY)) > return -EINVAL; > > if (attr->prog_type =3D=3D BPF_PROG_TYPE_SCHED_CLS && > -- > 2.41.0 >