Received: by 10.192.165.148 with SMTP id m20csp988140imm; Wed, 25 Apr 2018 10:43:17 -0700 (PDT) X-Google-Smtp-Source: AB8JxZroxrJPHSkZFxb1TKJR4VQq65kBh4sObn2nwdv7Q4lVA8TOPtHo/NfaUUVXF+3Esh/KJk9P X-Received: by 2002:a17:902:bc08:: with SMTP id n8-v6mr6615157pls.97.1524678197932; Wed, 25 Apr 2018 10:43:17 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1524678197; cv=none; d=google.com; s=arc-20160816; b=EBN3l44kSqJTsu+dPlqW+GLpTZ3pwePKAAt7L2aGxlbSZnnfUS1ExU5c9zOz7iCjdm sYdQoFWux529l3rRLJSLW8uDR1drcVhvSCmE3kFdLeMKdzR+o3QKZ8X9AP13+Ns8L0KY 7JsVMLFtKBTrrpsKxl3LwiQFe8yOj29E/Sl+lHEFlGvQU2AXH0i4qfJqXFZ//1gxlk8Z 1baTzSFft3mdcN1qcpk9JUhQ79d3MjWGru5DoJ7QCI7fj/dNoIupJf6KWXPLvM1UYWBV X5dRRqFLoEGhOHZt0+ckbCp3LmUz5nXoMqm9BfgYo7I/AXv6cWEKMJpVi/wilXYf6kci zZ6g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:references:in-reply-to:message-id:date :subject:cc:to:from:arc-authentication-results; bh=+FV0h/zNfVHQ7aSEFep/9tUcN3CuZ1rulC2foQJY/7o=; b=RBRT9KNzEqnVOjzwg+bs91x40pR+ajXqhhsjvgBXGKQw+KHqrPY3TGgPVwSL5AOmot a8NGjr/9D9Vi0qwBAT4V+o9PHFEHKYsvsbEzLs9jW4+BXrYajRDVmGV+d3FkuPS+vRHp ZR+lKlqKzMWCeoKdt9v7JmWebte0KgOFKkT4s9hNMTsHt4L2b+65QuobH013ZQSo/4Bn Nmtk60BrZ7F76R4fAjJmZOuxd1jN9lnBcQvnyLNkg592kf95+WgVJzPda2HopDUI/s4R v7tKf0MHbt/fvIdhqjXdjJfZsbEkSgWwwPpInlfq+LaMyweCI0gACTxtejKhv/qj9JDZ aBog== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id x17si16018189pfm.330.2018.04.25.10.43.03; Wed, 25 Apr 2018 10:43:17 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756068AbeDYRlS (ORCPT + 99 others); Wed, 25 Apr 2018 13:41:18 -0400 Received: from mx3-rdu2.redhat.com ([66.187.233.73]:60774 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1755086AbeDYRlL (ORCPT ); Wed, 25 Apr 2018 13:41:11 -0400 Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.rdu2.redhat.com [10.11.54.5]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 027F68DC3B; Wed, 25 Apr 2018 17:41:11 +0000 (UTC) Received: from krava.brq.redhat.com (unknown [10.43.17.29]) by smtp.corp.redhat.com (Postfix) with ESMTP id 03DA31C723; Wed, 25 Apr 2018 17:41:09 +0000 (UTC) From: Jiri Olsa To: Alexei Starovoitov , Daniel Borkmann Cc: lkml , netdev@vger.kernel.org, Quentin Monnet Subject: [PATCH 1/3] bpf: Add gpl_compatible flag to struct bpf_prog_info Date: Wed, 25 Apr 2018 19:41:06 +0200 Message-Id: <20180425174108.6586-2-jolsa@kernel.org> In-Reply-To: <20180425174108.6586-1-jolsa@kernel.org> References: <20180425174108.6586-1-jolsa@kernel.org> X-Scanned-By: MIMEDefang 2.79 on 10.11.54.5 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.11.55.2]); Wed, 25 Apr 2018 17:41:11 +0000 (UTC) X-Greylist: inspected by milter-greylist-4.5.16 (mx1.redhat.com [10.11.55.2]); Wed, 25 Apr 2018 17:41:11 +0000 (UTC) for IP:'10.11.54.5' DOMAIN:'int-mx05.intmail.prod.int.rdu2.redhat.com' HELO:'smtp.corp.redhat.com' FROM:'jolsa@kernel.org' RCPT:'' Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Adding gpl_compatible flag to struct bpf_prog_info so it can be dumped via bpf_prog_get_info_by_fd and displayed via bpftool progs dump. Alexei noticed 4-byte hole in struct bpf_prog_info, so we put the u32 flags field in there, and we can keep adding bit fields in there without breaking user space. Signed-off-by: Jiri Olsa --- include/uapi/linux/bpf.h | 1 + kernel/bpf/syscall.c | 1 + 2 files changed, 2 insertions(+) diff --git a/include/uapi/linux/bpf.h b/include/uapi/linux/bpf.h index e6679393b687..da8801860c7d 100644 --- a/include/uapi/linux/bpf.h +++ b/include/uapi/linux/bpf.h @@ -1060,6 +1060,7 @@ struct bpf_prog_info { __aligned_u64 map_ids; char name[BPF_OBJ_NAME_LEN]; __u32 ifindex; + __u32 gpl_compatible:1; __u64 netns_dev; __u64 netns_ino; } __attribute__((aligned(8))); diff --git a/kernel/bpf/syscall.c b/kernel/bpf/syscall.c index fe23dc5a3ec4..7bb4ff1c770a 100644 --- a/kernel/bpf/syscall.c +++ b/kernel/bpf/syscall.c @@ -1914,6 +1914,7 @@ static int bpf_prog_get_info_by_fd(struct bpf_prog *prog, info.load_time = prog->aux->load_time; info.created_by_uid = from_kuid_munged(current_user_ns(), prog->aux->user->uid); + info.gpl_compatible = prog->gpl_compatible; memcpy(info.tag, prog->tag, sizeof(prog->tag)); memcpy(info.name, prog->aux->name, sizeof(prog->aux->name)); -- 2.13.6