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=-6.8 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=ham 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 266DEC433FF for ; Tue, 13 Aug 2019 12:05:34 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id BDCC320840 for ; Tue, 13 Aug 2019 12:05:33 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=btinternet.com header.i=@btinternet.com header.b="B9E40Vta" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727144AbfHMMFd (ORCPT ); Tue, 13 Aug 2019 08:05:33 -0400 Received: from mailomta19-sa.btinternet.com ([213.120.69.25]:28240 "EHLO sa-prd-fep-047.btinternet.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1726705AbfHMMFd (ORCPT ); Tue, 13 Aug 2019 08:05:33 -0400 Received: from sa-prd-rgout-003.btmx-prd.synchronoss.net ([10.2.38.6]) by sa-prd-fep-047.btinternet.com with ESMTP id <20190813120531.KHQR5166.sa-prd-fep-047.btinternet.com@sa-prd-rgout-003.btmx-prd.synchronoss.net>; Tue, 13 Aug 2019 13:05:31 +0100 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=btinternet.com; s=btmx201904; t=1565697931; bh=eoarB1+vqoiXgmbv9YxvwcyX1jR9HuITa1K3sqFNjMY=; h=Message-ID:Subject:From:To:Cc:Date:In-Reply-To:References:MIME-Version; b=B9E40VtaQBXpPbw3/r8mlZ+smRxbuTQer/jtZ3Pdz4rQ4imTusHCUoa6zqjAZRAbZynVqfP1wCCM7gP2bOkkNhf0OLAtrfEqfaWZlizXcK/hIweDAzDWvAPlNUE0mtCSkvjnPaHcKLr3PbDsbYH3se5WzmmPo4JtAOjCNlxzBEeyWs1t5jgtSWVsCZei85Dp0m/JCnX7EFMqrsBLVjyTWHujCyg8MtLI5g3ad98o3P0cDrA8/XnHDX9wYs/0XnB7HhkrvBRB2U1XTzjbcM3K+LCaZT0jGdqeXDddIcWCgwWHRN6FjcltRkjyhBZi6v+vsH0plPg7BnMLt3nOPSFKDw== Authentication-Results: btinternet.com; auth=pass (PLAIN) smtp.auth=richard_c_haines@btinternet.com X-Originating-IP: [86.134.6.173] X-OWM-Source-IP: 86.134.6.173 (GB) X-OWM-Env-Sender: richard_c_haines@btinternet.com X-VadeSecure-score: verdict=clean score=0/300, class=clean X-RazorGate-Vade: gggruggvucftvghtrhhoucdtuddrgeduvddruddviedggeegucetufdoteggodetrfdotffvucfrrhhofhhilhgvmecuueftkffvkffujffvgffngfevqffopdfqfgfvnecuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenucfjughrpefkuffhvfffjghftggfggfgsehtjeertddtreejnecuhfhrohhmpeftihgthhgrrhguucfjrghinhgvshcuoehrihgthhgrrhgupggtpghhrghinhgvshessghtihhnthgvrhhnvghtrdgtohhmqeenucfkphepkeeirddufeegrdeirddujeefnecurfgrrhgrmhephhgvlhhopehlohgtrghlhhhoshhtrdhlohgtrghlughomhgrihhnpdhinhgvthepkeeirddufeegrdeirddujeefpdhmrghilhhfrhhomhepoehrihgthhgrrhgupggtpghhrghinhgvshessghtihhnthgvrhhnvghtrdgtohhmqecuuefqffgjpeekuefkvffokffogfdprhgtphhtthhopeeophgruhhlsehprghulhdqmhhoohhrvgdrtghomheqpdhrtghpthhtohepoehrihgthhgrrhgupggtpghhrghinhgvsheshhhothhmrghilhdrtghomheqpdhrtghpthhtohepoehsvghlihhnuhigsehvghgvrhdrkhgvrhhnvghlrdhorhhgqeenucevlhhushhtvghrufhiiigvpedt X-RazorGate-Vade-Verdict: clean 0 X-RazorGate-Vade-Classification: clean Received: from localhost.localdomain (86.134.6.173) by sa-prd-rgout-003.btmx-prd.synchronoss.net (5.8.335.01) (authenticated as richard_c_haines@btinternet.com) id 5D3F910201BACC21; Tue, 13 Aug 2019 13:05:31 +0100 Message-ID: <874a00ab0ab23c21fdecda2f54656662cffbad49.camel@btinternet.com> Subject: Re: [PATCH V2 1/2] selinux-testsuite: Add BPF tests From: Richard Haines To: Paul Moore Cc: selinux@vger.kernel.org Date: Tue, 13 Aug 2019 13:05:29 +0100 In-Reply-To: References: <20190801111232.5589-1-richard_c_haines@btinternet.com> <5a668ff82b2d3786ec0b816f78fc058012ee470f.camel@btinternet.com> <644be7b7811eb9d19a55af7a13602961d138cf47.camel@btinternet.com> Content-Type: text/plain; charset="UTF-8" User-Agent: Evolution 3.32.4 (3.32.4-1.fc30) MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Sender: selinux-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: selinux@vger.kernel.org On Mon, 2019-08-12 at 18:48 -0400, Paul Moore wrote: > On Sun, Aug 11, 2019 at 11:33 AM Richard Haines > wrote: > > On Fri, 2019-08-09 at 17:55 +0100, Richard Haines wrote: > > > On Fri, 2019-08-09 at 11:22 -0400, Paul Moore wrote: > > > > On Thu, Aug 1, 2019 at 7:12 AM Richard Haines > > > > wrote: > > > > > This adds basic BPF tests for map and prog functions. > > > > > > > > > > The check-syntax script has been modified to exclude files > > > > > listed > > > > > in tools/chk_c_exclude. This is because of macros in > > > > > bpf_common.c > > > > > that get horribly reformatted by check-syntax. > > > > > > > > > > Signed-off-by: Richard Haines < > > > > > richard_c_haines@btinternet.com> > > > > > --- > > > > > V2 Change - Split BPF code into bpf_common.c for others to > > > > > use. > > > > > > > > > > README.md | 4 +- > > > > > defconfig | 5 +++ > > > > > policy/Makefile | 4 ++ > > > > > policy/test_bpf.te | 77 ++++++++++++++++++++++++++++++++ > > > > > tests/Makefile | 4 ++ > > > > > tests/bpf/.gitignore | 2 + > > > > > tests/bpf/Makefile | 12 +++++ > > > > > tests/bpf/bpf_common.c | 99 > > > > > ++++++++++++++++++++++++++++++++++++++++++ > > > > > tests/bpf/bpf_test.c | 83 > > > > > +++++++++++++++++++++++++++++++++++ > > > > > tests/bpf/test | 57 ++++++++++++++++++++++++ > > > > > tools/check-syntax | 2 +- > > > > > tools/chk_c_exclude | 1 + > > > > > 12 files changed, 348 insertions(+), 2 deletions(-) > > > > > create mode 100644 policy/test_bpf.te > > > > > create mode 100644 tests/bpf/.gitignore > > > > > create mode 100644 tests/bpf/Makefile > > > > > create mode 100644 tests/bpf/bpf_common.c > > > > > create mode 100644 tests/bpf/bpf_test.c > > > > > create mode 100755 tests/bpf/test > > > > > create mode 100644 tools/chk_c_exclude > > > > > > > > ... > > > > > > > > > diff --git a/tools/check-syntax b/tools/check-syntax > > > > > index 7f9768d..5b7c211 100755 > > > > > --- a/tools/check-syntax > > > > > +++ b/tools/check-syntax > > > > > @@ -11,7 +11,7 @@ > > > > > # > > > > > > > > > > CHK_C_LIST="$(find tests/ -name "*.c") $(find tests/ -name > > > > > "*.h")" > > > > > -CHK_C_EXCLUDE="" > > > > > +CHK_C_EXCLUDE="$(cat tools/chk_c_exclude)" > > > > > > > > > > CHK_PERL_LIST="$(find tests/ -name "*.pl") $(find tests/ > > > > > -name > > > > > "test")" > > > > > CHK_PERL_EXCLUDE="" > > > > > diff --git a/tools/chk_c_exclude b/tools/chk_c_exclude > > > > > new file mode 100644 > > > > > index 0000000..20facbf > > > > > --- /dev/null > > > > > +++ b/tools/chk_c_exclude > > > > > @@ -0,0 +1 @@ > > > > > +tests/bpf/bpf_common.c > > > > > > > > Why are we excluding bpf_common.c from the style checks? > > > > > > Because check-syntax reformats a macro and it is not neat and > > > tidy > > > said Mr Neat to Mr Tidy > > I was in the middle of writing a response that pushed the Mr Neat and > Mr Tidy joke to the straining point and I decided I couldn't take it > anymore ... and if I can endure my own response, how could I expect > anyone else to do it? ;) > > Regardless, the problem is that style is horribly subjective, and I > really hate getting bogged down in those sorts of arguments (witness > the recent on-list discussion of comment styles) so I added the > "check-syntax" tool to settle those arguments. You run the code > through the tool, and that's your answer. Period. (I suppose it > might be "full stop" for Mr Neat and/or Mr Tidy.) Does that mean I > always like the output of the tool? No, sometimes it makes a mess of > things[1], but I'd rather have that then on-list arguments about > style. > > [1] In the past I've fixed the really bad check-syntax output by > tweaking the input code ever so slightly. > > > Just a thought - The patches run the fdreceive with bpf support > > before > > the core bpf test. I could resubmit the patches to test core bpf > > first > > ?? (and allow Mr Messy to format the macros in bpf_common.c) > > That gets to another thing that bothers me slightly ... I didn't > mention it earlier because of the test failure, the style issue, and > lack of time, but I'm not sure what I feel about splitting the BPF > tests up like that. Duplicating code isn't a great solution either. > Thoughts? > I can only think of two options: 1) If BPF, build tests/fdreceive and tests/binder services with bpf_common services, then in tests/bpf run the appropriate tests (by setting $fdr_basedir = "$basedir/../fdreceive/"; etc.). 2) For fdreceive I would only need to replicate and modify the client, therefore putting this code and test under the main bpf is not a problem. For binder I would probably need to copy 90% of the code, unless I can find an easier test (although with binder, you have to do a bit just to get going). Option 1 seems best.