Received: by 2002:a05:6358:11c7:b0:104:8066:f915 with SMTP id i7csp2045217rwl; Thu, 13 Apr 2023 00:27:35 -0700 (PDT) X-Google-Smtp-Source: AKy350aSh/X6JOiRrTU/7bVwlV/rvH7xgQFfKbMjm5X9m+kfIPLRYIj4vymaICw6xN4EoqxyiB0b X-Received: by 2002:a17:906:4c86:b0:931:c2f0:9437 with SMTP id q6-20020a1709064c8600b00931c2f09437mr1765177eju.8.1681370855033; Thu, 13 Apr 2023 00:27:35 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1681370855; cv=none; d=google.com; s=arc-20160816; b=uSXCtC52ppyrLjxkkP8KZ9GMojGuxCLjPb5KQWZ64Qe0PkZA4MRiGBz5oPUfAY3kXk CP86ia6n17owlBrJvCjSfR3X2cOCc+Yh9cvgQSmIdCqUssyhvgtyBL86rkpsWoCCyZ/l oiSHbwzyQ6+2FLuHjgw/AL9SxR+MLSsgyVSoOBg99YTBi1wh13h8B4QQqT02DgaOiPtW cOjnBf2yVmTn3Dc7UuvkcDxo5CSwXvwVKcts0WiZqrUXLj8obNNHXTTk4R7+VSIu80rY zEykwNf6otfu6TrdBxk9OtYdUXWuDvSZQ0jP7GIw3RwoG6wFvCQgYq3FH/sg3ngfEehY XDYg== 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=z9EN6EGd1MyzSHaTq+/3nqK06YP72xXEZjHitcANOYU=; b=Kz5j/HJw+U2sHiHuhV26cVw8nLHtZg5/6wSsX6A54D8XUJn6Rys/RY/lJ5nJHi4yxx iZ2Kx3UnT8MUo/e1vJXFTSoPFzN779P3GI7QkYAKLB4CZyVOKxYOH8CQvPp3i4GEA867 0cNPJQg25M8nwRJdVD0aeoDosXTC5r86Li0BRTfzcIQsaGUlf3g4h2rHF/4ZU40n8pee 2j77KnmeGpvvhThxchvpX7cPRM0h4ExzNlK2N9kI26M1yGWcEcVyo+cQh391XyZMDtNY 5s2fNK0DE0zXfhMKhDgKjNa2lhbjExf+rLbCHpWszgQepjY8RgbTrFEGEspBAEWBSKDH j68A== 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 Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id v25-20020a17090651d900b0094a80bd0a19si1087770ejk.636.2023.04.13.00.27.10; Thu, 13 Apr 2023 00:27:35 -0700 (PDT) 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 S229861AbjDMHXK (ORCPT + 99 others); Thu, 13 Apr 2023 03:23:10 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:38402 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229847AbjDMHXH (ORCPT ); Thu, 13 Apr 2023 03:23:07 -0400 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 8262A4C3C; Thu, 13 Apr 2023 00:23:06 -0700 (PDT) X-IronPort-AV: E=McAfee;i="6600,9927,10678"; a="91996438" X-IronPort-AV: E=Sophos;i="5.98,339,1673881200"; d="scan'208";a="91996438" Received: from unknown (HELO yto-r1.gw.nic.fujitsu.com) ([218.44.52.217]) by esa7.hc1455-7.c3s2.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 13 Apr 2023 16:23:03 +0900 Received: from yto-m2.gw.nic.fujitsu.com (yto-nat-yto-m2.gw.nic.fujitsu.com [192.168.83.65]) by yto-r1.gw.nic.fujitsu.com (Postfix) with ESMTP id 7DCBCD66A1; Thu, 13 Apr 2023 16:23:01 +0900 (JST) Received: from yto-om3.fujitsu.com (yto-om3.o.css.fujitsu.com [10.128.89.164]) by yto-m2.gw.nic.fujitsu.com (Postfix) with ESMTP id C6F9FD35F7; Thu, 13 Apr 2023 16:23:00 +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 8BBF840007204; Thu, 13 Apr 2023 16:23:00 +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 v9 3/6] selftests/resctrl: Flush stdout file buffer before executing fork() Date: Thu, 13 Apr 2023 16:22:56 +0900 Message-Id: <20230413072259.2089348-4-tan.shaopeng@jp.fujitsu.com> X-Mailer: git-send-email 2.27.0 In-Reply-To: <20230413072259.2089348-1-tan.shaopeng@jp.fujitsu.com> References: <20230413072259.2089348-1-tan.shaopeng@jp.fujitsu.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit 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 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 08070d4fa735..38c10a8c1814 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 00864242d76c..e632657995c7 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 b31b1d9e41d1..fb00245dee92 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]); -- 2.27.0