From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from SA9PR02CU001.outbound.protection.outlook.com (mail-southcentralusazon11013001.outbound.protection.outlook.com [40.93.196.1]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 0B8523E1235 for ; Sat, 18 Jul 2026 17:15:59 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.93.196.1 ARC-Seal:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784394964; cv=fail; b=GmdMWVzsU4IpHYqdLuK15soPn86Tg5HSI5fArsxGvSExxl1BAhcmvVrfLXb8OOyabNqDSKzuHgTxwHZvXcchLRWkxK4s750C33IqTJoq9cTKGSFHpZGrgfPCgZpcTMN99I1iUsaIrbOHkJSBF3fXgQRoNKOl38SQhw95zVOwK/0= ARC-Message-Signature:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784394964; c=relaxed/simple; bh=tw9yuT8Q7OHCdNDVjXrMUSRDxLaU/LjTBpmehiGzNWQ=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=E3EO87p5YZZhtRiLe8+K8dCRIQAn5UY2qIJ3XVQGQ6/qsHPTvA75Dl7oI5P7nTm3uWfUjkl/DETSBbOCWBMe+V8MYoP21dH+vXRdl9o3l3uLwZZLQG9mSDvIM9Mr7gfG3BmfXoQeYpOpz/MEgHNB8ZbrzWqeYgrIgWilX4r2Hcs= ARC-Authentication-Results:i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com; spf=fail smtp.mailfrom=nvidia.com; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b=QgB0kqVZ; arc=fail smtp.client-ip=40.93.196.1 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=nvidia.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b="QgB0kqVZ" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=TQytgZz5Ssr/jdmoIhEZoDMcGJxAF9CSduoCx03xsncUepUtL//9J4Xr8AmLDL6MQ5b4M4XZHajQLLY3KG7/gCe4306NgLbytz4d3xMPnusPCWO7mmFGiMp4sDDGd0xRFlpHnbZueZCM0Nlej4nDuXmLuZnXOvUdww5tMyssw5lIkQ4dr/8N4ilVP+dLo9qtZgm3ry0T+4u8H2qxvk39z4zeYKrNmsG7JIASw2NGGvDCFRuWsJhOdooR2ihdIwGWjMWFm30gn6D4f7+Ar88frYOoT4RRwDFr6h6C9cL+s8Bbw2B5NwGVlDHa/OkZ0AWlL917oHsh3FB04/QauzBQmw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=J2qBpkye6XHSr2zjnd6iY19pNjAqmS180DIWeVgRTk0=; b=bzz1GbWVrG0+dLHr+vULAmsiJircWmAVzkJKOCP8KJYA1Y6VETOeYhlCBJT39H4Hz8g3i9r9aSyha5eSpKMnXmsiHGLsVwLy8wvVhwTo2qIRjZoqslIbfO+qnCuZVvVM1Q6W1y9YcgaSfFMK/6qoYkZjeSuq7TYPuEdX/cEAv6AKEg6w6oeqfAhnoPnAtCuDT4yAmjlH6JXlxuX/eyl1MLSAniG2aLx5pITjqlEpwB5qS8uOkczDpJ/fYYQ9znQVTh2I/K73PMt5bVOVCVvaWFxoGr+7+1GEOm89JJm6avDkKjfakddM41zahN70MisXVNL8hKK4wghcNSohnghglg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=J2qBpkye6XHSr2zjnd6iY19pNjAqmS180DIWeVgRTk0=; b=QgB0kqVZQa/5GX7IuubE9SS1CcpyptnVgvEihiZj7CpS/Pt+wxoBNc0Ma/FAnHfmia+hqC2v2d6LMkJjscteZ8qzT+xohhLU9x5eGBm78Dn3gh4cvuw98xUqZP3x6xfnEbvLB3daIqVvn5IdbMxxwj04DJsSST15kJdAY8IzYexTWhIAW9oBZnPOZLXh0va21T5q0+erKdEEUWAF3rMcaj/Pz8v00UKDdlmhV2yb7DqOz3w1PcEysGF9tNj5dwoHFaLe+hlq+4eRYpjHKRdy4cROqw0WiqfDoWRJKlI4clFwBOdtCjkoC+GW6s5B57eIW8H8bkzwAZX7nnRDkmQWng== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; Received: from DS0PR12MB6486.namprd12.prod.outlook.com (2603:10b6:8:c5::21) by SN7PR12MB7276.namprd12.prod.outlook.com (2603:10b6:806:2af::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.223.13; Sat, 18 Jul 2026 17:15:56 +0000 Received: from DS0PR12MB6486.namprd12.prod.outlook.com ([fe80::88a9:f314:c95f:8b33]) by DS0PR12MB6486.namprd12.prod.outlook.com ([fe80::88a9:f314:c95f:8b33%6]) with mapi id 15.21.0223.012; Sat, 18 Jul 2026 17:15:56 +0000 From: Joel Fernandes To: linux-kernel@vger.kernel.org Cc: Joel Fernandes Subject: [PATCH v1 6/6] scftorture: Make invoker threads actually wait for all threads to start Date: Sat, 18 Jul 2026 13:15:37 -0400 Message-Id: <20260718171539.3781595-7-joelagnelf@nvidia.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260718171539.3781595-1-joelagnelf@nvidia.com> References: <20260718171539.3781595-1-joelagnelf@nvidia.com> Content-Transfer-Encoding: 8bit Content-Type: text/plain X-ClientProxiedBy: MN0P220CA0027.NAMP220.PROD.OUTLOOK.COM (2603:10b6:208:52e::8) To DS0PR12MB6486.namprd12.prod.outlook.com (2603:10b6:8:c5::21) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS0PR12MB6486:EE_|SN7PR12MB7276:EE_ X-MS-Office365-Filtering-Correlation-Id: 38e02be7-242b-4c20-0090-08dee4f03a96 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|23010399003|376014|1800799024|18002099003|22082099003|10067099003|56012099006|5023799004|11063799006|6133799003; X-Microsoft-Antispam-Message-Info: QzBDQw/sZJkZyVHLb/L7qWTWURJEt5fZLvXEjTVyy/5yWWTAVPQb2QkhygdNFcoCOFTaEXJ3RJ09/O23ZVEWH082ZLaB+NBhCWsJPt7DFIr1D670w2SvPTVhbJST0VSVkl/H5UlZJ6aj6qVD7ZifdiHw3AcPKaPB16vrbIm9yx0wvyYLuAROuAnrMvbo9ANjdpAJhhzFPVWbBHct1iHyjs1Rd8mqXwZG/SPwJHYoBBxjkJqbQE99m26xlFhnAad65etgqlChK/4Kg8FTkCo4mmyBf4d03zKTkCgfM+bJuHQLTRkrWhre5dPVXKBaE3u1U7IEYvkm+d8tJKo41jbI7m7J5bUj+aUNfiZUQVcj7L+hfLLE6lyR020jfX4ER4R+zKk58RrZEbxiQBU9wd6EamB1jQ7JVt7KjYXxao6LSM9MBcdS0QaaRcPuXJIO7cqjgTS1ny3PzTC/OVSDUO9GRdTdIZjP0Hf6Fa9RHheWxIer4satJ3zrf2VnwcnpiR5O3DCtsOIWLhsSM078cKUoMeskJyn+UgsiqQnfUsp+oC2zSxd7vzjggtrJ0BE2duvx+jWr4T5VfZ6kXOPCpJmwJg8Z0AnLTh3+ozC3UkyuioWW9PgLtKIhZbo9epkcsp0CoWw8dJx4h+UTNxjWRmD20tSXEBx3dxh1F6fORJOR5gE= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS0PR12MB6486.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(366016)(23010399003)(376014)(1800799024)(18002099003)(22082099003)(10067099003)(56012099006)(5023799004)(11063799006)(6133799003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?6C2DNHxhEwveuaRtDB/RqosQnXI8LADw1McOPJFsn/m+C8y6tY/1tKMKrvBv?= =?us-ascii?Q?h5NDVqjGfcOsHDqHu5T9f38wrchiLGEmb2nNSRbPsY65lULRgEam/GH2X7VW?= =?us-ascii?Q?48h70JhzMpnPU8RyYrKP29epEOR995S8jLlFKi1Qd0WLmv/46mwIofiSMehN?= =?us-ascii?Q?pgPt6WZ/Lm+IHqwXDiCPc0q/8R8S999R9d3fhZ0v42KjnFFCbBkwTw25PHom?= =?us-ascii?Q?fo60K7UJmudt4dsJ6ly3WmrtMShQWtSq7mlkUfmD74FZ3sJJ6bT+5N+dNL2x?= =?us-ascii?Q?qzo29vmOyefnCuovCIn9HFKrk/Bs1TSy5xvk5VqPXls6SHZy3LZefNILS7DI?= =?us-ascii?Q?nJQqKV9AU02vLosXnJHn79Ox51maBDJ2HGMbo2osrf1Rq275Yy2O/Er5IoFC?= =?us-ascii?Q?3SlehLzbPK6Fynhn4hWaBGQRuwgSnDv5BMAkDNTlJLGhv3kti7bFncxiMZCy?= =?us-ascii?Q?7MX6CzcWpKYzmQVw4Vmuh5kpJ7hP0KllwpEl6CHBvvMaOWagKd3ixLZIQDvt?= =?us-ascii?Q?tKczEtlBLXyPescQ3F6GafFc6+t8pgce5hAWzGsk+pDpvK3NXdLpDivmSnGH?= =?us-ascii?Q?zOGzuat772uiCUsY3w4oHToYmf56U8MniheqDi6k0O88SfGX5xEO12CWs99s?= =?us-ascii?Q?zgSWD/Yfw8BAQtpab4iczsM0FwuRvirlIbMnXGLuuc2R4Vg/n7vw+C8KWoSl?= =?us-ascii?Q?HAVJ2IGlDaXu9+5Y/ImI1pOHvzn3zi5+UlzBk9D/HibEZxwab4kqQsiqpOaL?= =?us-ascii?Q?KWOweQ1OKvDU2shGb89ahYdNM0YzCsZJ/6O10UZBFAvc7GeN+L3TTTq6b7Zl?= =?us-ascii?Q?/zRIgYk3nBHhjNNK5J8bU+WsCS0+ZIsFSJlAIOGFabsaErvNTqDoc4vH48eE?= =?us-ascii?Q?9KfYQ3YrnckYie9gQFNfGPNnLTEjKdnIUv9fdb3lwZBTeuSiOdB4rKjmUktQ?= =?us-ascii?Q?476ZBrOYov0k+wQAbWVMm1JIWBiZoNb4M93iiTSDgWvhPH1FsJMbYdLNOKPn?= =?us-ascii?Q?uITgtm0yMsP7exuWb1ilL+r2gMEARLopY6Fj/zcEr/MBIeYvE1PnJhhkwx2d?= =?us-ascii?Q?urHaFNmJ8/HndTamAHWPCaksHfuqINBKx/E46WQVe0Q2wrEILZiUYcFMLj38?= =?us-ascii?Q?Y+ImSpp3pIRhyNs8ayeDOjz+IXgr0B1i8D1w8Jk/hXVrenUKyyP9GTDlAD4+?= =?us-ascii?Q?E4O1ge2VSDEdIPCAxnuG8ev6uvL4CGH9xLChgMw2XUkA2fkOtdqUwCCm/eCL?= =?us-ascii?Q?3tPUiE7W/ZYn9DAqC08kgKiyWOz6sKVS7mvyfXhDT45PyselfiiS1waPzrmg?= =?us-ascii?Q?eC1UD4VtAStgSWO7T75G6HkvVEXM3IslpZzk//KW5Dsq4bBa9U3fwMWx3GRf?= =?us-ascii?Q?avgpsKcfLgWf/wlfcXJoVTIh6Li73X5WsxvfJwG23dReehufxyBK8VkGj4C2?= =?us-ascii?Q?ImebMjgRrBemGDsVX9jQ48HNttujXPPBEOY38U8nmQbe6nBn767InUr62VaK?= =?us-ascii?Q?cNdgjCWy/3mBeAoSZZ1mQtDCHDQ1bCg0b61zjPTEvRKV4wDUl6yFDeDFRryi?= =?us-ascii?Q?daHvkkdTY14s0L1NrItKfOpq4xSy2/asmwmt+O3APg8ktWREyhz0umvFvGoQ?= =?us-ascii?Q?w/PZXhqp4cnOy0CURXWTSTQQiOaVteiIuCxDvwaNZh1MRjMLWewP8jo/SBwR?= =?us-ascii?Q?3Sx4P45JGkxVaB1/cWmObScrvxd1kd9HhVKlrfuyVFtqoyOfnymLH9GWQBdm?= =?us-ascii?Q?j4gAfYl7vA=3D=3D?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: 38e02be7-242b-4c20-0090-08dee4f03a96 X-MS-Exchange-CrossTenant-AuthSource: DS0PR12MB6486.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Jul 2026 17:15:56.0166 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: KEY7J+3mA3JmCkBwO9UE/zD9ACFdSeQ+o0I7WaKzNeTCT27BbW0cwChzWizLIdV556jXNXpO7QCZXd93YyHX0g== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR12MB7276 Each scftorture_invoker() thread decrements n_started, which is initialized to the number of threads, and is then supposed to wait until all of its siblings have also checked in before starting the test proper. However, the wait loop is guarded by !atomic_dec_return(&n_started), which is true only for the final thread to arrive, and by then n_started is already zero, so the final thread does not wait either. The side-effect (possibly positive) is that no thread ever waits and the start-synchronization barrier is dead code, with early threads beginning to hammer smp_call_function*() while later threads are still being spawned. Invert the test so that every thread other than the last spins until n_started reaches zero, making the threads start testing together as intended. The existing torture_must_stop() check in the wait loop continues to bound the wait during shutdown. We can also drop the spinning entirely if the intent is to leave it as dead code, however for the current intent, this patches fixes the code. Signed-off-by: Joel Fernandes --- kernel/scftorture.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel/scftorture.c b/kernel/scftorture.c index ffd6c83732ee..392df1b4d4ed 100644 --- a/kernel/scftorture.c +++ b/kernel/scftorture.c @@ -497,7 +497,7 @@ static int scftorture_invoker(void *arg) "%s: Wanted CPU %d, running on %d, nr_cpu_ids = %d\n", __func__, scfp->cpu, curcpu, nr_cpu_ids); - if (!atomic_dec_return(&n_started)) + if (atomic_dec_return(&n_started)) while (atomic_read_acquire(&n_started)) { if (torture_must_stop()) { VERBOSE_SCFTORTOUT("scftorture_invoker %d ended before starting", scfp->cpu); -- 2.34.1