Received: by 2002:ac0:a5a6:0:0:0:0:0 with SMTP id m35-v6csp635801imm; Wed, 26 Sep 2018 04:35:36 -0700 (PDT) X-Google-Smtp-Source: ACcGV63VF8G0b8Hk2/aP5APlvN0DEVjv4c+g2N9RwHnd5o7um06vT7G4Shhxuu4kXbIb15oMi1yd X-Received: by 2002:a17:902:6e01:: with SMTP id u1-v6mr5855459plk.13.1537961736865; Wed, 26 Sep 2018 04:35:36 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1537961736; cv=none; d=google.com; s=arc-20160816; b=mxGsK8E2q6q+6zeA9RKV98CK4T/11Pk4HEN8J3ltsaCjyKtozONEAs0xT+q5Qc2q2j +zpwIB6qWRpIGOP+PDtry4LVImhBMRc1BiY7ax/U9mYS1atHvbMM6Kfe3pGHSAHzcJDt ekXGh7DjFPlQd0zauqlk0T95EWXgfqzIDFszD2e5OlDHAnLX1arp2J1knkKI1IJsxw6n mL5ky03T9qhA9/NaaFF3F6/lDbTUXtvOQYh0R31JZufyT8hLH6w9cpxvaElQK1avAIQx FpFY7+veO427Xgx2brvwdPlBWvPhXfMPKKfdmKPhDEY80J8tEX2+KhARsNVGSXVkmBva 1/Cw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:spamdiagnosticmetadata :spamdiagnosticoutput:mime-version:message-id:date:subject:cc:to :from:dkim-signature:dkim-signature; bh=02iaS4sIx2z3FLNb2E9gVORzLEKYv+Y553T9d9BaGy8=; b=rykrtCp6qcZ7dS/S+A5nUwlHLWW+XsLqeayHQvuhnLJ8JwO4shupVXYb7fmQDZUCmM fgKURXFpCF4LwSUYmQNVvjunNEz6kL+YrfGM2VT6PTfNcpbjM2m2SzpaRjVDQHQgocv0 VWnZ5BGKTaMbOSx6TbWSIg/OuhbQVYMEXU2vrbPqeAfLEtGBV29uuoUlwRczaMsjdI4Q R9bVqmixTR3miKRboVg23JbmnNxkdg4PoOBkH8ChSjK9irP6ZqNlOFJJtl5njhdhJ86w phIdBWdP4AYwWYoShNDhh11Zl6Igqgrl3KJtTqG548Eorc0D9PGSEBGSQWpVevJzWO6W VWkg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@fb.com header.s=facebook header.b=jHrsBGL3; dkim=pass header.i=@fb.onmicrosoft.com header.s=selector1-fb-com header.b=VJ0fMl+n; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=fb.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id c24-v6si5053877pls.211.2018.09.26.04.35.21; Wed, 26 Sep 2018 04:35:36 -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; dkim=pass header.i=@fb.com header.s=facebook header.b=jHrsBGL3; dkim=pass header.i=@fb.onmicrosoft.com header.s=selector1-fb-com header.b=VJ0fMl+n; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=fb.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727760AbeIZRq3 (ORCPT + 99 others); Wed, 26 Sep 2018 13:46:29 -0400 Received: from mx0b-00082601.pphosted.com ([67.231.153.30]:33796 "EHLO mx0a-00082601.pphosted.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1726841AbeIZRq3 (ORCPT ); Wed, 26 Sep 2018 13:46:29 -0400 Received: from pps.filterd (m0089730.ppops.net [127.0.0.1]) by m0089730.ppops.net (8.16.0.22/8.16.0.22) with SMTP id w8QBXtDG019791; Wed, 26 Sep 2018 04:33:55 -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-type; s=facebook; bh=02iaS4sIx2z3FLNb2E9gVORzLEKYv+Y553T9d9BaGy8=; b=jHrsBGL3ADKoah/yNW2i0EcqmqDmEjJMAvn3wxreEC/CE+PMTyLRIhu79Vwr4vzPNNxG srmGtoAPI8jm/WucBPTT1bZJxEPMRbmZpdpl8kYfLZx2vJdSk0+KDXyCobsDKUT9yz09 vXSOPDGIeLA7T7TdvDYU3SOPSMLLXb3P7jM= Received: from mail.thefacebook.com ([199.201.64.23]) by m0089730.ppops.net with ESMTP id 2mr7s008cw-1 (version=TLSv1 cipher=ECDHE-RSA-AES256-SHA bits=256 verify=NOT); Wed, 26 Sep 2018 04:33:55 -0700 Received: from NAM01-BY2-obe.outbound.protection.outlook.com (192.168.54.28) by o365-in.thefacebook.com (192.168.16.16) with Microsoft SMTP Server (TLS) id 14.3.361.1; Wed, 26 Sep 2018 04:33:51 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fb.onmicrosoft.com; s=selector1-fb-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=02iaS4sIx2z3FLNb2E9gVORzLEKYv+Y553T9d9BaGy8=; b=VJ0fMl+nFAz1X4yyskZQUwMOd/etXMvLkFBEM55/tDj6TQLQDx9JQkGOFKs5LNsnweefI+tHWoXgHFpEa8d6XtKBoGlGUMWCvNLbKa84mnhfgb3cnEyK1cMfGg5de1yDIgMrm/4uu0zP5wUGTlm5fUicCFg26B3lAQdUdInsiJY= Received: from castle.thefacebook.com (2620:10d:c092:200::1:15cb) by BLUPR15MB0162.namprd15.prod.outlook.com (2a01:111:e400:5249::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1164.20; Wed, 26 Sep 2018 11:33:47 +0000 From: Roman Gushchin To: CC: Song Liu , , , Roman Gushchin Subject: [PATCH v3 bpf-next 00/10] bpf: per-cpu cgroup local storage Date: Wed, 26 Sep 2018 12:33:16 +0100 Message-ID: <20180926113326.29069-1-guro@fb.com> X-Mailer: git-send-email 2.17.1 MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [2620:10d:c092:200::1:15cb] X-ClientProxiedBy: AM6P193CA0005.EURP193.PROD.OUTLOOK.COM (2603:10a6:209:3e::18) To BLUPR15MB0162.namprd15.prod.outlook.com (2a01:111:e400:5249::12) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: b0449a8f-40da-4c1e-e31f-08d623a3ed27 X-Microsoft-Antispam: BCL:0;PCL:0;RULEID:(7020095)(4652040)(8989299)(4534165)(4627221)(201703031133081)(201702281549075)(8990200)(5600074)(711020)(2017052603328)(7153060)(7193020);SRVR:BLUPR15MB0162; X-Microsoft-Exchange-Diagnostics: 1;BLUPR15MB0162;3:e1jZqL/xjh3rnSWRUheQs9UTfaIMD8IebSwLslBYSkIT5P+IRToo2OMhpAzDVuhkRWLMeAkDIldjMWZDFaC4iFg8QPLtrYnURbhCOr5gT0sYO5pBRjC+zQ2Hk+SS6uhd8KMBwCD9Q4dVP7Q2fn9UyUliF9pdmhYHBWciXpczUf+ZymjETRgSmwEogkiRX04P+Irv1+XAnxPBIbR+Xi0p4guGdZMcUA8SJ5DhTW8B4kd5hPLOzrTLWMvsYHil0Qmz;25:hHzKm1wxfaahsZAgxVA4w/Hvxtz2q1f7GXJeVpQvs+tL4XzTVHYafwRpX1N9U1JjgCMgiG3HyU7a/Vhdd9QsPGrc2rn+4AqdQl35oK9ovYqJlaOlxjnTW9lJ/dkicpqLiejR3oemtAezSzv88m15cjlF+1hMcYEINj52x9N0/gY4AWdbXsS9qER2nrC2NRS+N1EnGdPMkSNAwNeR1Jg++isg84mXpybbYCOrFVj+W8kNpun9tumHtmWE9wUqrV5z9IN8CiazeCuP1gTGlMj7yGZmzSNiYOT3/ERjH6Kr4Y89ywl6u5myCCjjuuVPf9b6vtT9tj5b9+llfNlrMgKh6ovz6u8fjXCw1GC0ESTmYmY=;31:UOF2u9nfbzT06VQIFqqtiX7gEzhM2aO7j6eGRPOV4N2K1Bp4SQm4JWqZP7z+Qk1mCpgh+SvHK3JLyRImiRn/dv7qccz3FLHu2nS+6xYm3TVWcCZenbumlrZoFn6+9MDsJLnBhOZWOKyGBzXa9RaxtJYq1JVY3hr/wr30G1FbbIltkYSOpMRdUm0u08J6vfoDU5kXX9+No9Y8Cf1tMklDFpmX9zQYBJ6qNFmXoo0Oxi8= X-MS-TrafficTypeDiagnostic: BLUPR15MB0162: X-Microsoft-Exchange-Diagnostics: 1;BLUPR15MB0162;20:+LTa8o6SpSEiVAvkxlbPDvCEIFZPQWGl7FabbpObrYM927XwzMfDyiZYV2odHeeKfIF0YhJp4Gc5JT4+ByqF+Nz37Tv7zmpf8N14zlEpHMrQ0L9TwDoK5RlLHByL47U1ctL78blencb5NAVqGRzARlB9hQD8tLIvQYSgwhJ1cJ8COKMdRgNr0zoVvWsAXeCiZs3mW8MwvN7new5Qnxup4aqsgYD4X+1Ml/YJLHOjJm3D6uIjLP0EziHacBo04cKTufAkamuc9nFAAtAewxr/P1mBQ1hav2i3h/LSsee72MAWwjecXjwhQwYt9/Vv68HMdbftkekbpHmz/NNwpfv9tW5/ejCmJkbEvsL9F65wjqxIRAsozod4Uf8OIFDdIclTjb0IRYCMeymHj4nY+UKDGn46apmEI2iwvnNa6C8tDFh5MDH0BilhALgFvNjSmqedoZUgxFRDKwyruStrAC6WRsGGcLFp9UhEzSvE1MeTYSK90WEHGGXYVFEihn5hq9YT;4:HO5ZG+M9f17ZjKi3nBfiMN1iihqGd9XLBSb3do5dh663fkAiQz8g7yACx7JlpsC8ql+dX7iNPlrX6T6rNxr3ksGtZGenEkmKkSwvC/h5ARfbwLsTMo8Nz2fm4Z/byxsCuRYq1AzHltm26v5aX2amWDadU60ivtH0ynOu9w0k+mn2DslHqXabGO7FXlV5JpLq5RgZtyBP1xyrxrLf4b64Jg1yl173espb+s42qUxCk7ptad4l+N5txf2aJnfTy5BtpGwraLsQkKCN8i9Nv96AXQ== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(823302057)(3002001)(10201501046)(3231355)(11241501184)(944501410)(52105095)(93006095)(93001095)(149066)(150057)(6041310)(20161123562045)(20161123564045)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123558120)(201708071742011)(7699051);SRVR:BLUPR15MB0162;BCL:0;PCL:0;RULEID:;SRVR:BLUPR15MB0162; X-Forefront-PRVS: 08076ABC99 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(346002)(376002)(136003)(366004)(396003)(39860400002)(199004)(189003)(16526019)(478600001)(8936002)(46003)(186003)(36756003)(52116002)(51416003)(52396003)(97736004)(2616005)(4326008)(7736002)(50226002)(305945005)(476003)(2906002)(450100002)(486006)(106356001)(6512007)(2351001)(48376002)(69596002)(6116002)(50466002)(1076002)(53416004)(47776003)(105586002)(53936002)(6506007)(8676002)(16586007)(386003)(54906003)(25786009)(6486002)(2361001)(81166006)(316002)(81156014)(86362001)(14444005)(5024004)(5660300001)(6916009)(6666003)(34290500001)(68736007)(42262002);DIR:OUT;SFP:1102;SCL:1;SRVR:BLUPR15MB0162;H:castle.thefacebook.com;FPR:;SPF:None;LANG:en;PTR:InfoNoRecords;A:1;MX:1; Received-SPF: None (protection.outlook.com: fb.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;BLUPR15MB0162;23:VwX2pYvRTu3Zc6KQt3eRY6PW2cr0rWeNuaQIPTROr?= =?us-ascii?Q?HMf7tG/Su8IhX3oF4mJRfBmbWzDTxGuOAnTKygLfEaL0fjsTu/Kx/LhB2a3Q?= =?us-ascii?Q?nAQ4aS/7wDCKqTH6NEGIbj7Ez2XNHkDrBQM6zKU4LNfCdbMvmQ7ecOw78ymQ?= =?us-ascii?Q?PsyqBdYO1eZf7H6nf0aYSIWLKTWVEx0/brwNWc4t/zxACBh1pzLzSU2CVrE9?= =?us-ascii?Q?XJNt7m1fH5kijxyaJlzy30fpG6pYQwQqQjoDnrGZ9wRo0V4/HmiZTQ4yo/nI?= =?us-ascii?Q?yYHv2mXmOzeGwQYB9RLMvgOwY5XHgxXNUMKXDQybLY1CSufeoUOEcsw0ibAw?= =?us-ascii?Q?BIC5oZan43w+54ZUj7czhW1aflJyg+YOeTBO/dyjZlSRN2DaSwMnqnWcY6be?= =?us-ascii?Q?XmnXgF3ng4KgcD2r81UrxwqKoXA3DPdF9TrUF0SoLfqfKd0Cpq8FMmKDdF3c?= =?us-ascii?Q?FKxY2LrdW976wGplMcDbS+pA53sSvVKfV/ydruJ32Q0BGaodaT9M93CFrYCO?= =?us-ascii?Q?m5naGcPsYHiPeN38C0/W4l6rD+/fH9JM6Bkxs9KIe0oWnBl8pEYyB3sfE1GQ?= =?us-ascii?Q?vZHYVMmOts4VHZ9HvRh5CCGz71h3kFfCaRGeM1XFBZBRjsieW33Zx6Vp5qfY?= =?us-ascii?Q?/BvuK8nb9mPsbcfr2yDFM0LntPvk8Q/PBsoUyb7kDP/s3H3SDTnS3BYdkRBy?= =?us-ascii?Q?/R1uvSpI/jymrHVjIn3VTjoJhljNDKaCi/2edxwlsQpeVWBXyOjOTt+pkg8U?= =?us-ascii?Q?Ff1QAyCtqEH6jI+BSf2aCxSoZzsf840r18dT+o7ELP5oqPOR4GyZ8JGg1ejL?= =?us-ascii?Q?CcZaNtrmrHg4rMGOFrtYVPvVpKnbNq9r6/oadYTbj2EZWcyfTBANo2yXYINo?= =?us-ascii?Q?D2/OdTuStBVi+DhoOQnO+DNapGxkkDNUQGXbpljPltv/JdhK1FR28j/1ixfz?= =?us-ascii?Q?ep0bXmNQ2jfwzjP22H0uvJqBko6T/Sw0ECZ0oMtyY4O6/ncdNcq8m0gW84mk?= =?us-ascii?Q?4cvlOtCuMyyuU/WCJNOjNnzdRfvjnOOxGZYx0f2k6PDZWjYBJbpGJD4r8etz?= =?us-ascii?Q?Q9NRGmBImkmcBtIEZnBNGz+5fCk2awduQfM/FR9fZ8pzQ/5jFjRzfMqjLRXX?= =?us-ascii?Q?mu/oXAv8AGSPvAeqMO/gN2wqHvF0ITKlvgZHWxsG8KVNKkXi5bKM0l8jvdpa?= =?us-ascii?Q?ZDbujxEzFQQqhh6ffo0IQdYFwD/x/1UwE3h/Tjteh9Mhpw2xkzuc6Fc9MZkh?= =?us-ascii?Q?M/AJINGG+nIvelFmlLsid9ksErlh/5WsxoKoECLVMINqMlO9C8kLek83y+cH?= =?us-ascii?Q?1nLLkqX95nkGRjrnhco8EI=3D?= X-Microsoft-Antispam-Message-Info: WvGEdsZkEV345mOZri+kBcAcvDkGFEhQqJ7RloLcAskoYO/oMNhwKgzaa03BKu6kBIML8xnliTya6pbYtB5iGVmPNHOUQLRNgT6kDuvApKUoG1BlYX8oBW3LttIllwQlkOUhQX602EpPQRI+nPpNEpn9reDoI7qH2NerHxUOGDEg4iVVXKYRoP5KtzcaiP9Y5J8KrkgtlPCROMnfRtIRRABM4v3z5IrVAQBcoL6JgFzlxLOvfNu6w9xB3OwMrtsrMDHn3o5e08OJyHOi1dO129UOpq6Zwqo42eZgpoy2dHtzthtRS1swB91ep5xyQuvSGA7o4+zBKfF67QbLSz/+1lnQzbxbdownxjgGbFm5GGg= X-Microsoft-Exchange-Diagnostics: 1;BLUPR15MB0162;6:cCHJXThrP/4ZsdizpK8eL3mAt9TPUYC3ie9ewiG6HdxLIh2ks42DFyCOAnY+Oyn34pEv1VVlD6plfd3HOogxThtvKFjAqoXS2e8n62eJh3UYOPAyVGq3LtCfT6lDudSvUrTc3qAMt09oo9msZKKWfPcfwYSs58OV+O8U1hMw3MVdeaZAN2dXU176WYjHctV1ubdpaxVceBzRgdAL9ErpLYaw7uDukOh7slf20aoeSC8ZFkPo/lTpA0KkGJZUHtXWIkS99sZGn352DzPitbdUgfgiG9Lj0gjRlfWFukoPRDjpCv2PwUuBXWqcyDjqmH8rxC1WqZoZ3jWoQS4HWuvMPoI1QJtJRLhv5BdH5XoOvAe1OAunfpRxbnr/aUs2f3rHXxObCAejKbIKno3SCNFktDV8GRbIFTzMNhRP15AQ2xW8cyvijH4cpONb2Xp795SS9+cI8TI0pDeXRuMCS7jNjQ==;5:LM/cH9gFL/m+Skg6WvKqIkenGZDoU1R1sEAtjajtk1QHj68uWweph4XSbRZN4z9AQG3+GyR4UocJe3xf51hYZ3cUykshP2FdfmcC1saIItY2hvWMOk3j+pvwE9jb4OkRtY9Qmyjk49vLExZMM1ozhznAikjbqRzbrryt3yKKSD0=;7:sUP6AOHdCrE8MDJZazyahoh04GO8W0x7l2gvuEZP769QpNewTt/8Rm8nZdSQz2Z0wt8upGkHrnxAOdGMZDL3zOqYWA7JzYfL9ZZAmUA4qzjhcoJ7NBkmd3kkGBRj979NJoPM04AExrqxGn4QVxqy5onEx/X+bqtZ2NkwUfmKkXSnV5fopJGBEu/YaRR7oqpAuZkSOZEyzXekHv5gwEIEWnlEKjmqZTRU1EYYTKS+cZNTl75Zluz5X96yCvlyi2Bx SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;BLUPR15MB0162;20:M0GT1w4wkBe6WfBZeSp4NaVDkhpotdbygWY6AUyTP76yHbEWHi5Si1d7w9TgBWPtpy0FsA7XuLDzwTX1dLYijktgN0haxIi67yNz27V9a3daK2CX/wzXv8dLR/neMTfoIYcIs1OQLHCa6serpNqSMrMG9Jq5oATweyGxQ/azrOQ= X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Sep 2018 11:33:47.7533 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: b0449a8f-40da-4c1e-e31f-08d623a3ed27 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 8ae927fe-1255-47a7-a2af-5f3a069daaa2 X-MS-Exchange-Transport-CrossTenantHeadersStamped: BLUPR15MB0162 X-OriginatorOrg: fb.com X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:,, definitions=2018-09-26_06:,, signatures=0 X-Proofpoint-Spam-Reason: safe X-FB-Internal: Safe Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This patchset implements per-cpu cgroup local storage and provides an example how per-cpu and shared cgroup local storage can be used for efficient accounting of network traffic. v3->v2: 1) incorporated Song's feedback 2) rebased on top of current bpf-next v2->v1: 1) added a selftest implementing network counters 2) added a missing free() in cgroup local storage selftest Roman Gushchin (10): bpf: extend cgroup bpf core to allow multiple cgroup storage types bpf: rework cgroup storage pointer passing bpf: introduce per-cpu cgroup local storage bpf: don't allow create maps of per-cpu cgroup local storages bpf: sync include/uapi/linux/bpf.h to tools/include/uapi/linux/bpf.h bpftool: add support for PERCPU_CGROUP_STORAGE maps selftests/bpf: add verifier per-cpu cgroup storage tests selftests/bpf: extend the storage test to test per-cpu cgroup storage samples/bpf: extend test_cgrp2_attach2 test to use per-cpu cgroup storage selftests/bpf: cgroup local storage-based network counters include/linux/bpf-cgroup.h | 55 ++++-- include/linux/bpf.h | 12 +- include/linux/bpf_types.h | 1 + include/uapi/linux/bpf.h | 1 + kernel/bpf/cgroup.c | 74 +++++--- kernel/bpf/helpers.c | 25 ++- kernel/bpf/local_storage.c | 167 +++++++++++++++--- kernel/bpf/map_in_map.c | 3 +- kernel/bpf/syscall.c | 20 ++- kernel/bpf/verifier.c | 23 ++- net/bpf/test_run.c | 20 ++- samples/bpf/test_cgrp2_attach2.c | 19 +- tools/bpf/bpftool/map.c | 4 +- tools/include/uapi/linux/bpf.h | 1 + tools/testing/selftests/bpf/Makefile | 6 +- tools/testing/selftests/bpf/netcnt_common.h | 23 +++ tools/testing/selftests/bpf/netcnt_prog.c | 71 ++++++++ .../selftests/bpf/test_cgroup_storage.c | 60 ++++++- tools/testing/selftests/bpf/test_netcnt.c | 153 ++++++++++++++++ tools/testing/selftests/bpf/test_verifier.c | 139 ++++++++++++++- 20 files changed, 778 insertions(+), 99 deletions(-) create mode 100644 tools/testing/selftests/bpf/netcnt_common.h create mode 100644 tools/testing/selftests/bpf/netcnt_prog.c create mode 100644 tools/testing/selftests/bpf/test_netcnt.c -- 2.17.1