From patchwork Mon Feb 13 06:24:22 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Shaopeng Tan X-Patchwork-Id: 5304 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:adf:eb09:0:0:0:0:0 with SMTP id s9csp2199859wrn; Sun, 12 Feb 2023 22:29:02 -0800 (PST) X-Google-Smtp-Source: AK7set9y5w+ZUtauMTb11tsshMr8UDAbpPaWwXxkWyLlmecdYwEmYziAGxU1OS0s5NOQMXFqCYCK X-Received: by 2002:a05:6a20:3d96:b0:bd:13ff:7b46 with SMTP id s22-20020a056a203d9600b000bd13ff7b46mr28582540pzi.33.1676269742015; Sun, 12 Feb 2023 22:29:02 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1676269741; cv=none; d=google.com; s=arc-20160816; b=so3q6g1RVZQ4NID7GX5+P6451ioHxRDSXsjrnNvZr3rEqq1V6fCdFWXHK/NKz5Iri+ sW/oKpCcn4KGv+pgV76oMPhttcbtVwnNFlHKArnXzV30iPu/PTGNW+/Cxmeclu3LHVd+ gLPRAw2XKW9fezJFdIhciRy4UOd1RoInvgXDvhl9WkPLfUbu5Z7QUqIvX8sqU5udgVvK FcqW9/Kpsm5gfWJTJOBtINcwy95welS2b7UKq6YERuUEEQquulwjhNIsCl2pXGUeHv2L u3YH4/JDY1PvW30MRVL42VwaCfkXbCA7uhDpUBSnQMghdYs9VocWhWk7vYmAqf5l0tj/ MP0w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from; bh=es7qhzHoWnPwU2U5OaCSN8Ir8g9z2n8dP7wZDBn+zU0=; b=sohUf6Li38nxuOIc89SPErLemj1NixPzHzrV7ADPlHHQyS64bnR5dvhCiHX5TkHsGV /9hN+GY6cyI/OOUiKmvpw6t9/jAiKIibbbtpLwq35DNJFOt1oKYZccO3MLWX6a5cG58J Y6fCDJiJrVjVhF/2OruVcFQ6VnzxqV5Zd7QDei0K5x3gDNyzck+yztDbLAAFfJc3THna enEDIHJGk855Gniy+A7fpc+tt0uu62/JEXh4Ycplz0ivgcLKLveXbLQRouifZaPydkWF t59jv7rFUEOlpgAh51DLcFDge2i5CEQsy2v+esdyHbohFT3wU7I0AX74H5j3AnxqMNjs 417w== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=fujitsu.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id j63-20020a638042000000b004e23a395322si11505999pgd.308.2023.02.12.22.28.48; Sun, 12 Feb 2023 22:29:01 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=fujitsu.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229748AbjBMG2f (ORCPT + 99 others); Mon, 13 Feb 2023 01:28:35 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:34702 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229472AbjBMG2d (ORCPT ); Mon, 13 Feb 2023 01:28:33 -0500 Received: from esa7.hc1455-7.c3s2.iphmx.com (esa7.hc1455-7.c3s2.iphmx.com [139.138.61.252]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 7455FEB56; Sun, 12 Feb 2023 22:28:31 -0800 (PST) X-IronPort-AV: E=McAfee;i="6500,9779,10619"; a="85180531" X-IronPort-AV: E=Sophos;i="5.97,293,1669042800"; d="scan'208";a="85180531" Received: from unknown (HELO oym-r1.gw.nic.fujitsu.com) ([210.162.30.89]) by esa7.hc1455-7.c3s2.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 13 Feb 2023 15:28:28 +0900 Received: from oym-m2.gw.nic.fujitsu.com (oym-nat-oym-m2.gw.nic.fujitsu.com [192.168.87.59]) by oym-r1.gw.nic.fujitsu.com (Postfix) with ESMTP id 1AAC1CC171; Mon, 13 Feb 2023 15:28:26 +0900 (JST) Received: from yto-om1.fujitsu.com (yto-om1.o.css.fujitsu.com [10.128.89.162]) by oym-m2.gw.nic.fujitsu.com (Postfix) with ESMTP id 3AA4BBF3FF; Mon, 13 Feb 2023 15:28:25 +0900 (JST) Received: from cn-r05-10.example.com (n3235113.np.ts.nmh.cs.fujitsu.co.jp [10.123.235.113]) by yto-om1.fujitsu.com (Postfix) with ESMTP id 0578040418617; Mon, 13 Feb 2023 15:28:25 +0900 (JST) From: Shaopeng Tan To: Fenghua Yu , Reinette Chatre , Shuah Khan Cc: linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, tan.shaopeng@jp.fujitsu.com Subject: [PATCH v7 0/6] Some improvements of resctrl selftest Date: Mon, 13 Feb 2023 15:24:22 +0900 Message-Id: <20230213062428.1721572-1-tan.shaopeng@jp.fujitsu.com> X-Mailer: git-send-email 2.27.0 MIME-Version: 1.0 X-TM-AS-GCONF: 00 X-Spam-Status: No, score=-4.2 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_MED, SPF_HELO_PASS,SPF_PASS autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1757696220853169657?= X-GMAIL-MSGID: =?utf-8?q?1757696220853169657?= Hello, The aim of this patch series is to improve the resctrl selftest. Without these fixes, some unnecessary processing will be executed and test results will be confusing. There is no behavior change in test themselves. [patch 1] Make write_schemata() run to set up shemata with 100% allocation on first run in MBM test. [patch 2] The MBA test result message is always output as "ok", make output message to be "not ok" if MBA check result is failed. [patch 3] When a child process is created by fork(), the buffer of the parent process is also copied. Flush the buffer before executing fork(). [patch 4] An error occurs whether in parents process or child process, the parents process always kills child process and runs umount_resctrlfs(), and the child process always waits to be killed by the parent process. [patch 5] If a signal received, to cleanup properly before exiting the parent process, commonize the signal handler registered for CMT/MBM/MBA tests and reuse it in CAT, also unregister the signal handler at the end of each test. [patch 6] Before exiting each test CMT/CAT/MBM/MBA, clear test result files function cat/cmt/mbm/mba_test_cleanup() are called twice. Delete once. This patch series is based on Linux v6.2-rc7. Difference from v6: [patch 4] - Separate patch 4 into patch 4 and patch 5. - Left the part that cleanup properly when an error occurs in CAT test. [patch 5] - Another part that cleanup properly when a signal is received in each test. - Only parent process call signal_handler_unregister() in CAT test. - Correct "Non-Vaule" to "Non-value" - Rename goto lables. Pervious versions of this series: [v1] https://lore.kernel.org/lkml/20220914015147.3071025-1-tan.shaopeng@jp.fujitsu.com/ [v2] https://lore.kernel.org/lkml/20221005013933.1486054-1-tan.shaopeng@jp.fujitsu.com/ [v3] https://lore.kernel.org/lkml/20221101094341.3383073-1-tan.shaopeng@jp.fujitsu.com/ [v4] https://lore.kernel.org/lkml/20221117010541.1014481-1-tan.shaopeng@jp.fujitsu.com/ [v5] https://lore.kernel.org/lkml/20230111075802.3556803-1-tan.shaopeng@jp.fujitsu.com/ [v6] https://lore.kernel.org/lkml/20230131054655.396270-1-tan.shaopeng@jp.fujitsu.com/ Shaopeng Tan (6): selftests/resctrl: Fix set up schemata with 100% allocation on first run in MBM test selftests/resctrl: Return MBA check result and make it to output message selftests/resctrl: Flush stdout file buffer before executing fork() selftests/resctrl: Cleanup properly when an error occurs in CAT test selftests/resctrl: Commonize the signal handler register/unregister for all tests selftests/resctrl: Remove duplicate codes that clear each test result file tools/testing/selftests/resctrl/cat_test.c | 29 ++++---- tools/testing/selftests/resctrl/cmt_test.c | 7 +- tools/testing/selftests/resctrl/fill_buf.c | 14 ---- tools/testing/selftests/resctrl/mba_test.c | 23 +++---- tools/testing/selftests/resctrl/mbm_test.c | 20 +++--- tools/testing/selftests/resctrl/resctrl.h | 2 + .../testing/selftests/resctrl/resctrl_tests.c | 4 -- tools/testing/selftests/resctrl/resctrl_val.c | 67 ++++++++++++++----- tools/testing/selftests/resctrl/resctrlfs.c | 5 +- 9 files changed, 96 insertions(+), 75 deletions(-)