From patchwork Wed Feb 15 08:32:27 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Shaopeng Tan X-Patchwork-Id: 57427 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:adf:eb09:0:0:0:0:0 with SMTP id s9csp75035wrn; Wed, 15 Feb 2023 00:42:03 -0800 (PST) X-Google-Smtp-Source: AK7set/fJtJzN1//BeRAvuhdtSqZoXZFWOxnC372lYHO9Fom/gAjmRgfV7p8YeFnWWE6gWqBa/Km X-Received: by 2002:a05:6a21:789c:b0:c6:b962:dd08 with SMTP id bf28-20020a056a21789c00b000c6b962dd08mr1984688pzc.13.1676450523079; Wed, 15 Feb 2023 00:42:03 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1676450523; cv=none; d=google.com; s=arc-20160816; b=qm25NepPofHL7tizhE5R8ZTjZvKEniiWzFGwL3BxpkXHF6CU1JmeJoIe1Wgj4syQCU nasmNxtvIc0PnUaZlnzTJhHd/VyIsYXiJodo4kXY20qWfwGjvUzk1x4Fo+JAUPY+A/43 eULQM0U6ZsRjTXjHOdw2UdY13CQ7qToANocQXsQg2ruj45KTZo74Zd1Pu5UUWQi8fAt5 fz1lFTrimlfCmRNM2PKP3NRnncTxVvzVf8+Oj+x1MyIi/wH2ltQ52WXCqU2aDkZnTCtY GfE7I4XOCyd9l5P604FOjkguGDu5T6QKz5rMmvHRnA249xXw/jqTPsboM/DJ/WGOeuF4 y80g== 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 :references:in-reply-to:message-id:date:subject:cc:to:from; bh=RjAUSPDbrjqL+ZLCB8tfzB84CWFLe7V4Zlb51S559KY=; b=VYrh8+UmFJ7kOACDcLyB2iw2AEvtQ/0GBx8E/fYUNubRidQZXPlAJyLBTWFjwss9TO hYFjImgVh3UB9ijI3/L1P1ujt8Azj1Hjty16oc9w/b/21QRoTlc9t1bDzF858/5wz6pG OvwiU9sGT37CavCn8ejL7/e8BN7CyV3loLBOK4yGWNErF4J0AIWmQtYDBm6Uc36LjVU5 y+SpceEEn+yyA0MHAciqgvu0ljeFmP4eAmZRHoRdJoadKAqIEk6+YeNPrMbda3wXudrL ZttYaPTj+dEjgqb3DCx2D7+oAIQ5x6Tiysg4AfYSVM/vQgAK+GyitkQlmvwyMQ+7wfsZ wOsQ== 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 w186-20020a6382c3000000b004fb8a4d2d48si5619490pgd.560.2023.02.15.00.41.50; Wed, 15 Feb 2023 00:42:03 -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 S233992AbjBOIgt (ORCPT + 99 others); Wed, 15 Feb 2023 03:36:49 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:36838 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233968AbjBOIgn (ORCPT ); Wed, 15 Feb 2023 03:36:43 -0500 Received: from esa1.hc1455-7.c3s2.iphmx.com (esa1.hc1455-7.c3s2.iphmx.com [207.54.90.47]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 29DDA23C79; Wed, 15 Feb 2023 00:36:41 -0800 (PST) X-IronPort-AV: E=McAfee;i="6500,9779,10621"; a="106636232" X-IronPort-AV: E=Sophos;i="5.97,299,1669042800"; d="scan'208";a="106636232" Received: from unknown (HELO oym-r3.gw.nic.fujitsu.com) ([210.162.30.91]) by esa1.hc1455-7.c3s2.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 15 Feb 2023 17:36:40 +0900 Received: from oym-m4.gw.nic.fujitsu.com (oym-nat-oym-m4.gw.nic.fujitsu.com [192.168.87.61]) by oym-r3.gw.nic.fujitsu.com (Postfix) with ESMTP id B85CDD647A; Wed, 15 Feb 2023 17:36:37 +0900 (JST) Received: from yto-om3.fujitsu.com (yto-om3.o.css.fujitsu.com [10.128.89.164]) by oym-m4.gw.nic.fujitsu.com (Postfix) with ESMTP id C0C64D6540; Wed, 15 Feb 2023 17:36:36 +0900 (JST) Received: from cn-r05-10.example.com (n3235113.np.ts.nmh.cs.fujitsu.co.jp [10.123.235.113]) by yto-om3.fujitsu.com (Postfix) with ESMTP id 83BE7400C0298; Wed, 15 Feb 2023 17:36:36 +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, Shuah Khan Subject: [PATCH v8 3/6] selftests/resctrl: Flush stdout file buffer before executing fork() Date: Wed, 15 Feb 2023 17:32:27 +0900 Message-Id: <20230215083230.3155897-4-tan.shaopeng@jp.fujitsu.com> X-Mailer: git-send-email 2.27.0 In-Reply-To: <20230215083230.3155897-1-tan.shaopeng@jp.fujitsu.com> References: <20230215083230.3155897-1-tan.shaopeng@jp.fujitsu.com> 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?1757885783466141225?= X-GMAIL-MSGID: =?utf-8?q?1757885783466141225?= When a process has buffered output, a child process created by fork() will also copy buffered output. When using kselftest framework, the output (resctrl test result message) will be printed multiple times. Add fflush() to flush out the buffered output before executing fork(). Reviewed-by: Shuah Khan Reviewed-by: Reinette Chatre Signed-off-by: Shaopeng Tan --- tools/testing/selftests/resctrl/cat_test.c | 1 + tools/testing/selftests/resctrl/resctrl_val.c | 1 + tools/testing/selftests/resctrl/resctrlfs.c | 1 + 3 files changed, 3 insertions(+) diff --git a/tools/testing/selftests/resctrl/cat_test.c b/tools/testing/selftests/resctrl/cat_test.c index 1c5e90c63254..6a8306b0a109 100644 --- a/tools/testing/selftests/resctrl/cat_test.c +++ b/tools/testing/selftests/resctrl/cat_test.c @@ -167,6 +167,7 @@ int cat_perf_miss_val(int cpu_no, int n, char *cache_type) return errno; } + fflush(stdout); bm_pid = fork(); /* Set param values for child thread which will be allocated bitmask diff --git a/tools/testing/selftests/resctrl/resctrl_val.c b/tools/testing/selftests/resctrl/resctrl_val.c index b32b96356ec7..6948843bf995 100644 --- a/tools/testing/selftests/resctrl/resctrl_val.c +++ b/tools/testing/selftests/resctrl/resctrl_val.c @@ -629,6 +629,7 @@ int resctrl_val(char **benchmark_cmd, struct resctrl_val_param *param) * Fork to start benchmark, save child's pid so that it can be killed * when needed */ + fflush(stdout); bm_pid = fork(); if (bm_pid == -1) { perror("# Unable to fork"); diff --git a/tools/testing/selftests/resctrl/resctrlfs.c b/tools/testing/selftests/resctrl/resctrlfs.c index 8546bc9f1786..d95688298469 100644 --- a/tools/testing/selftests/resctrl/resctrlfs.c +++ b/tools/testing/selftests/resctrl/resctrlfs.c @@ -678,6 +678,7 @@ int filter_dmesg(void) perror("pipe"); return ret; } + fflush(stdout); pid = fork(); if (pid == 0) { close(pipefds[0]);