From patchwork Tue Nov 7 23:07:59 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Ankur Arora X-Patchwork-Id: 13449432 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id EB8CCC4332F for ; Tue, 7 Nov 2023 23:09:30 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id DE104440185; Tue, 7 Nov 2023 18:09:28 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id D41FE440182; Tue, 7 Nov 2023 18:09:28 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id A34C3440185; Tue, 7 Nov 2023 18:09:28 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 87D7B440182 for ; Tue, 7 Nov 2023 18:09:28 -0500 (EST) Received: from smtpin18.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id 70D9D1A036C for ; Tue, 7 Nov 2023 23:09:28 +0000 (UTC) X-FDA: 81432701616.18.CE720A5 Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) by imf11.hostedemail.com (Postfix) with ESMTP id 318154000A for ; Tue, 7 Nov 2023 23:09:24 +0000 (UTC) Authentication-Results: imf11.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2023-03-30 header.b=UgXWHP0y; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=puqIH41N; dmarc=pass (policy=none) header.from=oracle.com; arc=pass ("microsoft.com:s=arcselector9901:i=1"); spf=pass (imf11.hostedemail.com: domain of ankur.a.arora@oracle.com designates 205.220.177.32 as permitted sender) smtp.mailfrom=ankur.a.arora@oracle.com ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1699398565; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=lIOadZtTWRLNr2aNmC4m8NpdsjcflN9hHPdlsn5woq4=; b=CZOe4dcfWgY3JAyFEZUvZxHt1G8UH+t5eXy4i2im23FtEg7HZdb7acAoXp+jSDjHtdsRkw NQEQh8+wZG+HDvuhBoLy0+nzV83jH3tKdBUbcsCJufCBMQbWsjaZMyfEfDD7c/baWd+zcL LlhjAaWJltxHaJDwcuTxSk+lC9eB3e0= ARC-Authentication-Results: i=2; imf11.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2023-03-30 header.b=UgXWHP0y; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=puqIH41N; dmarc=pass (policy=none) header.from=oracle.com; arc=pass ("microsoft.com:s=arcselector9901:i=1"); spf=pass (imf11.hostedemail.com: domain of ankur.a.arora@oracle.com designates 205.220.177.32 as permitted sender) smtp.mailfrom=ankur.a.arora@oracle.com ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1699398565; a=rsa-sha256; cv=pass; b=A7tPCBLchDnL/LL+C6UzvJWCalUsdIuLiH/HS6Sc3KvawvHJxIijlG7ZDlRSbO+1lPzLOe 2j3h/IbqX4fchyFHg7FGsKztpHuC7bMF6dxc5fjTq5SHrA9YKTNbHlaPfJROr0HCvfoKdN wERrEs31TKC2eiJx6sFWnzPN6kqpwSo= Received: from pps.filterd (m0333520.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 3A7LK0GE022798; Tue, 7 Nov 2023 23:08:50 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : content-type : content-transfer-encoding : mime-version; s=corp-2023-03-30; bh=lIOadZtTWRLNr2aNmC4m8NpdsjcflN9hHPdlsn5woq4=; b=UgXWHP0y0kZM/7NQwTPK+YrW9Owr8tnZPTLvm0y7R3/RN6UZVUCOpVZrsEtKTXzeDKtK EXCepl04MYwjl3Gpn7oTvhD4Qs8w+L6JUZyQYWKGpijyLaH9O+VaKFNIXhqbqFuvWoDE uIUHwj7FfCXOUPTNtg5o5n0H5kNFdOj2GqA4rXMsveiatw8F90HeBJulKx/d/ISkXZzh x1Y8pZlrdi7HaTbIPQv196JwkvDGN6BQBgospe1aZEIFCaQnbLDK7kkZl5lwIYtrqt+w 5uBVnkH1y0Uyv8bMkiJzJpuF8U+eaPjc3WE9gfSVJDm4U/q/xkULbmmOnaEz6b9fADhN Zw== Received: from phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta02.appoci.oracle.com [147.154.114.232]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3u7w2006em-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 07 Nov 2023 23:08:49 +0000 Received: from pps.filterd (phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 3A7N2CNk000410; Tue, 7 Nov 2023 23:08:48 GMT Received: from nam11-bn8-obe.outbound.protection.outlook.com (mail-bn8nam11lp2168.outbound.protection.outlook.com [104.47.58.168]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3u7w1wvd3c-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 07 Nov 2023 23:08:48 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=WYuNM/pWdvh12JCBhLjXgpYhNV7qO0vZ/c1awW0l6WEtWMgQ9JqswI1NIA1Aiy4QlZkOq+CQIw91sh/q6wRVPpekJ8fsdeA9i1c6nN886S4RoKHME8swPYMHRcwbA7i7A3WWbYlOXpqL8VlwI6dkWKREErBbFFqjcUk+wQKzolH1a80HOFSBkxvYeBaKsuPVsxke9+WDM3bknCWUhKjyTGaQ6NZvYFDwOZR8LlYl9hqI+fd5wUGUAkclctaqZajldeJAs1dqw27Cg8YJFsp77WEX2iuGELcVcevhL4Nh7U/gkcS18hR9kLIE/nlMTMTQ5cXK0zLZwSGilr+EO3EC7A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=lIOadZtTWRLNr2aNmC4m8NpdsjcflN9hHPdlsn5woq4=; b=mLTqBH9oQ0/O8rqJOJB9onSrscXeKoeNpqnFJs4pfKHNyqk0DixmW70m4mrbrJNdDj4QwhlAaFDB+8sT0z9TALHR3tlVkD6gKeUZMOVXIvC0OfiuPAiYa75oyw7OOr3USKBqheoFwL7pCPtXFd5UewXiG0zGsrTvMnxStyDoRfCjoL90UZbwRW2PUwHFpdmbcLJrYK9B2AVd4TOqcAQ5hG+S8H9U5Zaeafr5+QqiGNcxL/xBe1SwHX5qu/MLcYBMfEw+NNvDWVEYs2YBcJhMK38alsILJYyY6hqT9yJUYY7dcE+luVy5rb9mG5zrtEQSwFd5OdiFRGukGQi0S8voqw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=lIOadZtTWRLNr2aNmC4m8NpdsjcflN9hHPdlsn5woq4=; b=puqIH41NBNOxKhVwKzINAqeusfd5ls+8Y4fovNjEY8XGbOXsognridAVhX6wM9SkTtyrJ8Z54c9lQLKHpqD+hAN1aiamtNHJ2PLhFcRwGbc5o21I7rLIVXTO0rp2VcMagnLi7aazsu+Ci+xOKiFB+vYd/eUjfPAacQkKMGNPFro= Received: from DM8PR10MB5416.namprd10.prod.outlook.com (2603:10b6:8:3f::19) by MW4PR10MB5704.namprd10.prod.outlook.com (2603:10b6:303:18e::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6954.27; Tue, 7 Nov 2023 23:08:45 +0000 Received: from DM8PR10MB5416.namprd10.prod.outlook.com ([fe80::c72:c098:4fc2:629b]) by DM8PR10MB5416.namprd10.prod.outlook.com ([fe80::c72:c098:4fc2:629b%4]) with mapi id 15.20.6954.028; Tue, 7 Nov 2023 23:08:45 +0000 From: Ankur Arora To: linux-kernel@vger.kernel.org Cc: tglx@linutronix.de, peterz@infradead.org, torvalds@linux-foundation.org, paulmck@kernel.org, linux-mm@kvack.org, x86@kernel.org, akpm@linux-foundation.org, luto@kernel.org, bp@alien8.de, dave.hansen@linux.intel.com, hpa@zytor.com, mingo@redhat.com, juri.lelli@redhat.com, vincent.guittot@linaro.org, willy@infradead.org, mgorman@suse.de, jon.grimm@amd.com, bharata@amd.com, raghavendra.kt@amd.com, boris.ostrovsky@oracle.com, konrad.wilk@oracle.com, jgross@suse.com, andrew.cooper3@citrix.com, mingo@kernel.org, bristot@kernel.org, mathieu.desnoyers@efficios.com, geert@linux-m68k.org, glaubitz@physik.fu-berlin.de, anton.ivanov@cambridgegreys.com, mattst88@gmail.com, krypton@ulrich-teichert.org, rostedt@goodmis.org, David.Laight@ACULAB.COM, richard@nod.at, mjguzik@gmail.com, Ankur Arora , Darren Hart , Davidlohr Bueso , =?utf-8?q?Andr=C3=A9_Almeida?= Subject: [RFC PATCH 63/86] treewide: futex: remove cond_resched() Date: Tue, 7 Nov 2023 15:07:59 -0800 Message-Id: <20231107230822.371443-7-ankur.a.arora@oracle.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20231107230822.371443-1-ankur.a.arora@oracle.com> References: <20231107215742.363031-1-ankur.a.arora@oracle.com> <20231107230822.371443-1-ankur.a.arora@oracle.com> X-ClientProxiedBy: SJ0PR13CA0192.namprd13.prod.outlook.com (2603:10b6:a03:2c3::17) To DM8PR10MB5416.namprd10.prod.outlook.com (2603:10b6:8:3f::19) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM8PR10MB5416:EE_|MW4PR10MB5704:EE_ X-MS-Office365-Filtering-Correlation-Id: 4b33aafc-5aeb-416d-c392-08dbdfe67e31 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: i5Q0RifJMw1D/et2XhuKBMDSCy0iu3enlJqfq7GTFoy8vrQVsb3wgEtc9RUokGd5m+nWpg46wFLRV7H1jkTP50WM+1uCdxccRZCPUAxRlNcGEexvXu0PloV9B1AZ5McJHQ/7Fg3q9NqadX0M/wc7y+hyAbyENabTbRULjXmFNfD/y/+NGI1kZQ73ZjioJZqD9y6MLEg7ssK6cQhirqm56GiF24jqoY5CxV+fuE1YPVzrdx0okPQfiy5pTMrw6TQ67XDTteXJaodo08+c4Kqt4nTCvB3siObFfT9X5G5efHaMJyq2RsIl57DqVO4WimUJ/ftNV2K7D1nVLZVk35o7QvlpMdGFcSyq9LT9Eok2mgWUnULmjZfTglV7vPSurIOKnQdFsGq9rgNpdve84MEWRuAhcxGXp11LR38y7hK2lKRZXiUWpxLol72o1ZlihATPGamQdy5Eg7APR3UvHLiypimrWGNIA+EQu7K4d/S1q+orX8lAL0H+98VUtaJh3JnKjdCBa+ttVS39WE/e99zT/1kFLkeHZiW1oT1Xh+/8EK4= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM8PR10MB5416.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(366004)(396003)(136003)(346002)(39860400002)(230922051799003)(1800799009)(186009)(451199024)(64100799003)(478600001)(41300700001)(6506007)(2616005)(966005)(6486002)(6512007)(7416002)(6666004)(7406005)(8676002)(316002)(4326008)(8936002)(5660300002)(83380400001)(1076003)(26005)(66476007)(54906003)(66946007)(66556008)(6916009)(38100700002)(2906002)(86362001)(103116003)(36756003)(66899024);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?YklF81w6EoohXYfWLJUzBEHNklkd?= =?utf-8?q?sYyo8FpjMjYe/mcBufiQk2AdhwoFlPgPqJkqpuM5knSfvIvjaopswg2MmeaNfmUCH?= =?utf-8?q?LTZmMGcnDCqXRoR5dJ9PZBdj1uNQT7dmOOBtG9ereGjByoREBdcYq2YCQGBBOjcbZ?= =?utf-8?q?YakUXSsFav2dc3NLKwPB0uRxSjUnG+FwbEMxe2EqluttV06BIHQ1FLbOpmGbf3Liu?= =?utf-8?q?xrkxfetFugxdl1X/APgGPGcDqahN5B3XmZzoI9bnTdJzXP1l492AQqFNMvJ11UDBL?= =?utf-8?q?ZM4Z1tqOAusNPWH24faK5pH+6wXNud6cAdRTFNp7CLVm32bZ2wnJljIzhllWJXslP?= =?utf-8?q?7GcUjVWGnhFG/Yfw4nTTk9s/+b3MKAfxHJyNQxr0pb2feZGiV0XqP6rY2Pgpj9mDa?= =?utf-8?q?shXp4B3hGqRkHQzc0yskvGQZGtSqBJnS0nc8b/HzfqgXnMeKinWsh3mumzQefuh7V?= =?utf-8?q?jZMifOy09Wi+2D8DlxyeQTDteYx9zY5GcP+Fn0Mj9QlI/+voKyHSBCSPm+G6p5JMs?= =?utf-8?q?9xFB+Ken158LYej4Z91Wl4FarqJJfY1MwUNgTLdmK+hj8oRjnwyTN16aRmEPbmHkJ?= =?utf-8?q?DxGO5ILV4gQj4Wg0uZOMaZdYhi3mcMpJd5EPP5taZvH3UtYGFveLzr3/lXo3l3ei/?= =?utf-8?q?vdxXsXrW4MdVgS48QAo6ipommJelLNYJJ2LZiRGgYSjR/KIJeOOLa2F8Nesbvsbwz?= =?utf-8?q?Z5VbJ8ynZAxokeoo+xafD/mYmlsicZOs8UHL1aEfEOeD3BvTnvjYqHaw2flcKIGl9?= =?utf-8?q?k78+XjSo5iBjUwRAIU4G9TY5fpBtEI8dJIRrxNU74y8wHxnSyaX5GjOrKO1cHAso/?= =?utf-8?q?Ao8KNOyfFvt9NVtjO0cZidyEyR1w6Ao2IJTQjHltsTvCAieXKFLyQTVTYbOCkEXcT?= =?utf-8?q?YeUX+fIs2NnUd7QvP0m8lII1XCTWBx1fWzB09KrEa0TT4RfV14eeT9swhJCqbo/LB?= =?utf-8?q?FFbUNZ7a99JdzpSO9kUWDnkDwhEjGFb1iVmQNtfYpoNSGhxqZmtts50Vz3HJr0her?= =?utf-8?q?+jcdN7JVCx7Sx/ybUiNAPLg2SePUFXorxHmZMeSQajyLWJ2EbJz6wMOth4p+MZwa2?= =?utf-8?q?04ZyyFJtau9f7opKuragxq5yfigZf1CFPsAIUyQVqmcfum5jVHXl+rzdZpDnH/QGI?= =?utf-8?q?0zy4K2zxlvo3xRf4JX1fZZgfO2BH+glS00eKxqeak6hDh8P2lvHWOWtTuOlShsFIG?= =?utf-8?q?0osmKNSvRGPlRU/Ho/jz/4+TNuR2dfzGkoV8/hQkAh8omBrD2Hy31DDlqbattZn9f?= =?utf-8?q?TPWUaCsA0waExW2E9LzQ2WBZJtMhVZlv9ApqRkVnIsFS3TO2p0seBiyGbBWtysUmR?= =?utf-8?q?yHfEkJn1cEWBJscKwpKEqW7g1k2vJ8/L1n+HSh3phqedxiJfDYpQyUw4pH7xwSq87?= =?utf-8?q?mOqa/UEyCdTCyHu7w/esLitkR0KUCZoEK9hw7IEHmbECRKVGKT76cjLFRSy4+yruZ?= =?utf-8?q?voXKz5mrzeSRnYbNdmIQqfW32KtS9N6le34MB+mst+jkqlBqXxduCgaZSN6gcpLAC?= =?utf-8?q?jaJmnAxMBBZRKMtTmk1J/bGIp0TlBJYH1Q=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?utf-8?q?lJMxzMo6zFIF5rzK?= =?utf-8?q?8os5+gb9JpULJoGFCksmmevPjQPkf0tfMWi6Psl1bsbXB8MWnEc7aYYuH9ss76SsK?= =?utf-8?q?OhW3r6zILm6qMlgltanNe+kla+N+QLMQ/EB/5EztEwmi91ZFx9k0u1FJFgHxFetb4?= =?utf-8?q?8rVJ9L67ICOxgvLaDW4XnOSN3vi0yyaAo2LlgrNxqfzGFMw3sjcQqw52e5PGlNTZE?= =?utf-8?q?/3kLelZW6hzU02SEGogtH4upz+9znCXV4/9hqJ7yQiE2wrSRq+8N4i7wLlbDqRMr5?= =?utf-8?q?V1jPEgCYXYDJXW2vIotJ/ii23zTnucfChf08jJS3kUD8IvkEx6zPPgb4ZBid0cMU6?= =?utf-8?q?j9t/lHeepuT2Fxq1yXneeSOcrCkhIwA91gkzN/uHMwZCb0FBDSCLpazDYtfimVD/x?= =?utf-8?q?WSCenKAL8NrcuuXLNLqDUgalBbGVaeLdwPoi0G9swUI2wKcq/JfgvM+HTOyv3ztXP?= =?utf-8?q?uOzD4bik6mmKUZSRJFNlHK3jbqWLhDDSdjoi6D4WKKW+Dhs/VPzzZDmyr3yxy/PtJ?= =?utf-8?q?sFuYMlL5CwooUBZBJRrqlxv09U4iTuVUxnONirimfmkv3af8a7byTbWZGf9aCIGE1?= =?utf-8?q?3NFgIEGU8apXbJ0jrRExKN7Gw6mu4iK+xF+dlxee+aavaYVMEdzSRzwWO5YuvyIgt?= =?utf-8?q?b4ZVYEPB1NnMmWmpjlVTN5m5nk0VconWr9jgsmParilQtero9YxBk+MRuN4S4I1kC?= =?utf-8?q?zsSyKIdwafcXFllAKcKyzzAkh3jN//9QCOE6DgKdVg5Ma6xrLvlmV3QaN6xWFEpOk?= =?utf-8?q?HotgQC2KlSnB7dhDZGKVQM6dU6i34QOklebnsHyyNJdlAzfVLwzFbm3DC/Lfz/hIS?= =?utf-8?q?p8erB9zzkUlnR1Yf0rmqRRJ/ZzqbofJhjBufw6ySC3RacbzpAbpnKB5GR4cWkAOsB?= =?utf-8?q?952k5ncSryvmwQrlyL+drTMnjEdyV8uSOQVYH2NXloKP4vFfIRwyOp+iwFyyAKyLg?= =?utf-8?q?lkgMbQjHlcoIzG/w7u7ap5yTtJzTH8jeG+6VV2ImDvbZ2Y+RrNdUk7GM8RbnKyLW3?= =?utf-8?q?hvBxjeT8CI8NgH3KQroBq46DYV3Li0B1/LdWirkVgstd2/AhW4YCo/j3cDpcPgcIp?= =?utf-8?q?HY4F6Usx0zdbGcluWHdRFks3/Spl0o/krlslQ4snL45g3pz6f21/boKXIv57YIG+s?= =?utf-8?q?f7cThuy+sLQ9dGxqvf7PvUR7Li++Kyp/xtwjlXCR5GjSRMDHcBK8thwO+VDBVU7Vp?= =?utf-8?q?092XCNp7lOWEgrlbZ6d9DG7meJ2G4OBB0urNnhEMoXfUhDb8yYJNbV6raKw4LDyWf?= =?utf-8?q?llXuSBAII8yIh8BrzD1k+q9GB+77llugNb24MBilkhdMI0e5HZQLIRV0QLQVirCRt?= =?utf-8?q?+YTeM7FZZ/0M0IEL7Gk+JuPZwRcyLB/SVx2XwBWFXiRDFZrKlfzVGsHO3LzaDFqBK?= =?utf-8?q?0SZTLUdC7KBQzbHBJrkGpEvVv9bxkp4Z9FfHRIwXIZk02yJAXPM/9Slh0xuSrWoME?= =?utf-8?q?mOG/LofQmnuvmPp3uYj+QY1zPs+qr/vctkf1F4Li9XpeozaNnaBgbVAKVLaFxvovQ?= =?utf-8?q?wppjubUHXwCed04PC0Ex81X39HAIUGRq5NmK1mJc/EnDMg=3D=3D?= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4b33aafc-5aeb-416d-c392-08dbdfe67e31 X-MS-Exchange-CrossTenant-AuthSource: DM8PR10MB5416.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Nov 2023 23:08:45.7545 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: monkbzwXD2gNPdbJF92yyDG6RjY4SRYNv0cnshy4YT86nh6J1yHN6+vAEHZ5bqRx4luPJ6yXvHaIwp9XKNPM15CG66Wh7EHlaxb2tJbPt9A= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR10MB5704 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.272,Aquarius:18.0.987,Hydra:6.0.619,FMLib:17.11.176.26 definitions=2023-11-07_13,2023-11-07_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 malwarescore=0 mlxscore=0 suspectscore=0 mlxlogscore=999 adultscore=0 spamscore=0 bulkscore=0 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2311060000 definitions=main-2311070189 X-Proofpoint-ORIG-GUID: 8Ak1VclO6a76SH60slzBE_htoxKTnSkp X-Proofpoint-GUID: 8Ak1VclO6a76SH60slzBE_htoxKTnSkp X-Rspam-User: X-Stat-Signature: 9hq9em69grz5uurjcyi5398yu6rjsc5h X-Rspamd-Server: rspam07 X-Rspamd-Queue-Id: 318154000A X-HE-Tag: 1699398564-107453 X-HE-Meta: U2FsdGVkX1/uFojxKpLtM17y1DQ20KvuQgXzWppe4zaanERIMEu6UrGdHfPqfCpMk1Bd4++zjZT8GAV73okXG2JE8/RPwx5MM0iXnuw/zrwpCCSQq75ERzNM6Gw7wjsLrwwjamNVHe2N2oliQSarIBzQOLZ5gAAcZuzelOzMk7biB45lhnDcnkc0l322AAJ+VAk9l/JFoLDyXPFTUjudZvQITNNTPkVNRhDwaepFeU/wzXxTgwQyTGTfX5KXyrSpvxjpnursX6nyygDnu0l3jh0A1rYJQtRG+GIYVzkQ5JRjZJcqprrXbtZRYXkG+zR733qhl9IF2aiNVxnk1rshKVdjYCMnyfllZ3DgWgFTDR4TYEHeAVnQ71reDd7bFZL9iMkBAdl92XDC9APY1s/Y2pS8InYpFwMO0bg1wXm4Ilw4uOS1CcogVvB2qAu5YmqwBdd2TawMRn/zlFEngseECi/BsoudQHJBaBJ75+NmSC5+hQZLNE0MTUdV1yFaqcI0c+6TA7XRn3/VulwzazN8BiDn0kjU68SJL1UF+IJ61+YCh1A1SgT7KP7/U5vQZConKB9DdDis2BWGJn83sFjWuUPZKNo6HVyJJl9GsTlBmGLN5ttAafOtG+CWUolsOOopN4liAQu4TKh6eRLlWDIpTUaijTYQPv9MfzDe7zxVQM3eqX00xI34z0wdyQdSAYIzTpKTx0V636VrrkbokhlCXkXlfJ3JWKq/tppW7xtWwzPN9ZTcFdf82EYhHEao8ugAn0Vwe3N3UUIu3KJ5rfsplnXSV8zXG0t9ijArPJvK8wd1V0HNjnb5dLyPZm2qSd6omnU0HE/Zf4GhNq8HdVO/2SGjgo3NrUPSTRn5FP/rGeIFZ+l0RP2TrQZmpNa9Yot+n2TcbVF0SOD18GlJ4i3EmeBFkvNLC3/JfGx26ZjcdiXQOSecIxvbiHRcO7hK/iq2LHPAMgbjPXl/F1gvLLr ACBc9Crf P+vVgKX2duQah4pqrDOWnSNdg/McKqw5rQr3rcRzWQjEpP5jgjI/XE8fagBLdCjMvBLkHamcco04noRj2PF82FaS1/zrep5PaH706n74AunVMyrr46Qy9X7+dUuMkDFkeBPikxI5o3wjDc92B5VOw9nHwc+UK00LcXG5NK3o92y9OOoB1rt26VKH6Gvq/l6sCmPRIMghJg/cAClta8rHf0qdmtCVj76mdKdrU+vj6T2BxYLFWxUSii7c5dLZmjDdsM0sec1euS9rN4tT7UMB/+jcSS6JI3vYYlmDcy+6Xv6FDBArdRjM2ZTfoxWBTAOvo/6BbvLtrXAPLrHGwaLkxsFUU0l4O86/i1jbLwQE9Bh/mjQbp+u9i5aVA60EgzVcdPTBYziRpJVG1+F1A9JqIFnQ/VpsgG/qUlKmXWhb8RZW0X5e7LfgZHvgLL47IU/ggE5xmKX4m3zfkf/B7hUOAiztagJv0dzAUdH8SmkWkayDbO84PufUHc+mgUhfhZsf9k1QE1YnQfxjsj53oZnBg374GRTZgdHtpJqROfv5x6J/CBdmkVov8Fk2CdcgtpLMxrUI/9S+YdBAiSKLIcFwLjVMuIb8+PigPG2Od7r2YfUrFQvLcqcjTHSIWVdjHAKonmraZQXu+6aDiVOxak6TT0LZZK5QYyBS81QOokoZt3UH2PEcDwgejktRQAGqL86KizPA6368cRuWkbrLCVx44fA/niQNoTk+Ltsq8SQ3mwN6YTJw= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: There are broadly three sets of uses of cond_resched(): 1. Calls to cond_resched() out of the goodness of our heart, otherwise known as avoiding lockup splats. 2. Open coded variants of cond_resched_lock() which call cond_resched(). 3. Retry or error handling loops, where cond_resched() is used as a quick alternative to spinning in a tight-loop. When running under a full preemption model, the cond_resched() reduces to a NOP (not even a barrier) so removing it obviously cannot matter. But considering only voluntary preemption models (for say code that has been mostly tested under those), for set-1 and set-2 the scheduler can now preempt kernel tasks running beyond their time quanta anywhere they are preemptible() [1]. Which removes any need for these explicitly placed scheduling points. The cond_resched() calls in set-3 are a little more difficult. To start with, given it's NOP character under full preemption, it never actually saved us from a tight loop. With voluntary preemption, it's not a NOP, but it might as well be -- for most workloads the scheduler does not have an interminable supply of runnable tasks on the runqueue. So, cond_resched() is useful to not get softlockup splats, but not terribly good for error handling. Ideally, these should be replaced with some kind of timed or event wait. For now we use cond_resched_stall(), which tries to schedule if possible, and executes a cpu_relax() if not. Most cases here are from set-3. Replace with cond_resched_stall(). There were a few cases (__fixup_pi_state_owner() and futex_requeue()) where we had given up a spinlock or mutex and so, a resched, if any was needed, would have happened already. Replace with cpu_relax() in one case, with nothing in the other. [1] https://lore.kernel.org/lkml/20231107215742.363031-1-ankur.a.arora@oracle.com/ Cc: Thomas Gleixner Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Darren Hart Cc: Davidlohr Bueso Cc: "André Almeida" Signed-off-by: Ankur Arora --- kernel/futex/core.c | 6 +----- kernel/futex/pi.c | 6 +++--- kernel/futex/requeue.c | 1 - kernel/futex/waitwake.c | 2 +- 4 files changed, 5 insertions(+), 10 deletions(-) diff --git a/kernel/futex/core.c b/kernel/futex/core.c index f10587d1d481..4821931fb19d 100644 --- a/kernel/futex/core.c +++ b/kernel/futex/core.c @@ -724,7 +724,7 @@ static int handle_futex_death(u32 __user *uaddr, struct task_struct *curr, goto retry; case -EAGAIN: - cond_resched(); + cond_resched_stall(); goto retry; default: @@ -822,8 +822,6 @@ static void exit_robust_list(struct task_struct *curr) */ if (!--limit) break; - - cond_resched(); } if (pending) { @@ -922,8 +920,6 @@ static void compat_exit_robust_list(struct task_struct *curr) */ if (!--limit) break; - - cond_resched(); } if (pending) { void __user *uaddr = futex_uaddr(pending, futex_offset); diff --git a/kernel/futex/pi.c b/kernel/futex/pi.c index ce2889f12375..e3f6ca4cd875 100644 --- a/kernel/futex/pi.c +++ b/kernel/futex/pi.c @@ -809,7 +809,7 @@ static int __fixup_pi_state_owner(u32 __user *uaddr, struct futex_q *q, break; case -EAGAIN: - cond_resched(); + cpu_relax(); err = 0; break; @@ -981,7 +981,7 @@ int futex_lock_pi(u32 __user *uaddr, unsigned int flags, ktime_t *time, int tryl * this task might loop forever, aka. live lock. */ wait_for_owner_exiting(ret, exiting); - cond_resched(); + cond_resched_stall(); goto retry; default: goto out_unlock_put_key; @@ -1219,7 +1219,7 @@ int futex_unlock_pi(u32 __user *uaddr, unsigned int flags) return ret; pi_retry: - cond_resched(); + cond_resched_stall(); goto retry; pi_faulted: diff --git a/kernel/futex/requeue.c b/kernel/futex/requeue.c index cba8b1a6a4cc..9f916162ef6e 100644 --- a/kernel/futex/requeue.c +++ b/kernel/futex/requeue.c @@ -560,7 +560,6 @@ int futex_requeue(u32 __user *uaddr1, unsigned int flags, u32 __user *uaddr2, * this task might loop forever, aka. live lock. */ wait_for_owner_exiting(ret, exiting); - cond_resched(); goto retry; default: goto out_unlock; diff --git a/kernel/futex/waitwake.c b/kernel/futex/waitwake.c index ba01b9408203..801b1ec3625a 100644 --- a/kernel/futex/waitwake.c +++ b/kernel/futex/waitwake.c @@ -277,7 +277,7 @@ int futex_wake_op(u32 __user *uaddr1, unsigned int flags, u32 __user *uaddr2, return ret; } - cond_resched(); + cond_resched_stall(); if (!(flags & FLAGS_SHARED)) goto retry_private; goto retry;