From patchwork Tue Sep 29 08:47:48 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Song Liu X-Patchwork-Id: 289433 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=-7.6 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI, SPF_HELO_NONE, SPF_PASS, USER_AGENT_GIT 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 84B33C4346E for ; Tue, 29 Sep 2020 08:48:06 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 34BF3206A2 for ; Tue, 29 Sep 2020 08:48:04 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=fb.com header.i=@fb.com header.b="GULg01tb" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727915AbgI2IsD (ORCPT ); Tue, 29 Sep 2020 04:48:03 -0400 Received: from mx0b-00082601.pphosted.com ([67.231.153.30]:51396 "EHLO mx0b-00082601.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726064AbgI2Ir7 (ORCPT ); Tue, 29 Sep 2020 04:47:59 -0400 Received: from pps.filterd (m0148460.ppops.net [127.0.0.1]) by mx0a-00082601.pphosted.com (8.16.0.42/8.16.0.42) with SMTP id 08T8dkV7030472 for ; Tue, 29 Sep 2020 01:47:58 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fb.com; h=from : to : cc : subject : date : message-id : mime-version : content-transfer-encoding : content-type; s=facebook; bh=MvNShYh0XkJBtZGp+NAVoGeK3HTwl3VwHI+goioSK5A=; b=GULg01tbkZDn7RjoXFtxSSw6ZTmyoryBMUcmOmg42mzoKqTR73YVrjAXP4z1fK56Oo29 OuM7CylqeLr+UKinQtSu24it0wP0zwJf+XFCFXblM10SxiKBikVz+uz6amo2A/o8GM8z zlkcecJF+Wn7SWYYTOollVL/au3LkMQOP9s= Received: from mail.thefacebook.com ([163.114.132.120]) by mx0a-00082601.pphosted.com with ESMTP id 33t35n3ww7-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NOT) for ; Tue, 29 Sep 2020 01:47:58 -0700 Received: from intmgw002.03.ash8.facebook.com (2620:10d:c085:208::f) by mail.thefacebook.com (2620:10d:c085:21d::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1979.3; Tue, 29 Sep 2020 01:47:56 -0700 Received: by devbig006.ftw2.facebook.com (Postfix, from userid 4523) id 4BA5C62E5765; Tue, 29 Sep 2020 01:47:55 -0700 (PDT) From: Song Liu To: , CC: , , , , , Song Liu Subject: [PATCH bpf-next 0/2] introduce BPF_F_SHARE_PE Date: Tue, 29 Sep 2020 01:47:48 -0700 Message-ID: <20200929084750.419168-1-songliubraving@fb.com> X-Mailer: git-send-email 2.24.1 MIME-Version: 1.0 X-FB-Internal: Safe X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.235, 18.0.687 definitions=2020-09-29_01:2020-09-29,2020-09-29 signatures=0 X-Proofpoint-Spam-Details: rule=fb_default_notspam policy=fb_default score=0 mlxlogscore=674 mlxscore=0 lowpriorityscore=0 suspectscore=0 impostorscore=0 malwarescore=0 phishscore=0 clxscore=1015 bulkscore=0 priorityscore=1501 spamscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2006250000 definitions=main-2009290080 X-FB-Internal: deliver Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org This set introduces BPF_F_SHARE_PE to perf event array for better sharing of perf event. By default, perf event array removes the perf event when the map fd used to add the event is closed. With BPF_F_SHARE_PE set, however, the perf event will stay in the array until it is removed, or the map is closed. Song Liu (2): bpf: introduce BPF_F_SHARE_PE for perf event array selftests/bpf: add tests for BPF_F_SHARE_PE include/uapi/linux/bpf.h | 3 + kernel/bpf/arraymap.c | 31 ++++++++- tools/include/uapi/linux/bpf.h | 3 + .../bpf/prog_tests/perf_event_share.c | 68 +++++++++++++++++++ .../bpf/progs/test_perf_event_share.c | 44 ++++++++++++ 5 files changed, 147 insertions(+), 2 deletions(-) create mode 100644 tools/testing/selftests/bpf/prog_tests/perf_event_share.c create mode 100644 tools/testing/selftests/bpf/progs/test_perf_event_share.c --- 2.24.1