From patchwork Tue Nov 7 21:57:41 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ankur Arora X-Patchwork-Id: 162777 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:aa0b:0:b0:403:3b70:6f57 with SMTP id k11csp544073vqo; Tue, 7 Nov 2023 14:06:41 -0800 (PST) X-Google-Smtp-Source: AGHT+IGgHrp+kxotkraXV1ffM2IJN5oGGrk/DMFg3YKNUuMWSDSxSSWBiWnAOkt5ch5fQYi35V8b X-Received: by 2002:a05:6808:648d:b0:3b2:ee29:ab04 with SMTP id fh13-20020a056808648d00b003b2ee29ab04mr332116oib.37.1699394800758; Tue, 07 Nov 2023 14:06:40 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1699394800; cv=pass; d=google.com; s=arc-20160816; b=IBIitkDk7DUV9Sx2pP+edpY6r/B7r7h0WzL3c99fon4a1N7MAKv99tXIQ94eF39lNb b5aZxM/BqddlM2eyec2gxQPNkVlo0vVn/hC2u6qer6XpDZSXT45OVOjmpKRmPFtWiC3U A+rvRadnN1rC1snmeCW24EPXlE2UIUYrY9SlZ9msK4oCoY4XIEsrs/o48N1Pbm7cGI9D wSvN11vRJ3QQc++PkAYYgxhY0HoSJEBCNcNnVCxtMp5ysYEteNgPc+AqyyHoj9EcGxw4 1nYQnFn0qwDUYHks3XgjpDzrxYgAbHQlOEDU7dImDj1Rls8JKWET7VMGssB1m+GlM/TL a3xA== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:content-transfer-encoding :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature:dkim-signature; bh=0hUBRwRW2iGU3GXAGJqaK60bN8ITrJKzrcDmJVHmBag=; fh=nHnEAWNp+qNKUfhTYdiVYwv41cALFixOy2SlfWaTsrM=; b=hM4AeblVxsUHz8yNYDgC8nnvHg12HywNpcwb50jgpN/6L73iauKWlW2Y/q0LlDJZNW 3RW+wnJWC96daNuAvEkhhSoSY5oJcF7CAlK3Biq6V9IGfCym/0KnaoqYj/KRw0xdYBqq yq1LzUcRtbBWDoesq/Ph9yxWqqjtEbDJ1+BINdxD9keX4OBS1gd1Heg1J8mBPo3/7Mke tfKmFEiRb2TJMBkV03ebimS0Fiq8/B1DeJYDBJAqXQsUxt2I98HzYc9v2d0z4OsMXVzy 0RFHbXTQ3l12WF/uNmBX2dtltShD/wC371+9gDLwMME8uZ0azdJaaEREWNZPNaBPDuVj 11qw== ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@oracle.com header.s=corp-2023-03-30 header.b=lskhLGUf; dkim=pass header.i=@oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b="B/5uxxSe"; arc=pass (i=1 spf=pass spfdomain=oracle.com dkim=pass dkdomain=oracle.com dmarc=pass fromdomain=oracle.com); spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:5 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=oracle.com Received: from groat.vger.email (groat.vger.email. [2620:137:e000::3:5]) by mx.google.com with ESMTPS id x3-20020a056a00188300b006b1fb740866si11786983pfh.189.2023.11.07.14.06.40 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 07 Nov 2023 14:06:40 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:5 as permitted sender) client-ip=2620:137:e000::3:5; Authentication-Results: mx.google.com; dkim=pass header.i=@oracle.com header.s=corp-2023-03-30 header.b=lskhLGUf; dkim=pass header.i=@oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b="B/5uxxSe"; arc=pass (i=1 spf=pass spfdomain=oracle.com dkim=pass dkdomain=oracle.com dmarc=pass fromdomain=oracle.com); spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:5 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=oracle.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by groat.vger.email (Postfix) with ESMTP id D7742806C355; Tue, 7 Nov 2023 14:06:19 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at groat.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1344166AbjKGWFL (ORCPT + 32 others); Tue, 7 Nov 2023 17:05:11 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:38804 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S235482AbjKGWE0 (ORCPT ); Tue, 7 Nov 2023 17:04:26 -0500 Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 9877F35BE for ; Tue, 7 Nov 2023 14:01:18 -0800 (PST) Received: from pps.filterd (m0246629.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 3A7LJQ9J014468; Tue, 7 Nov 2023 22:00:36 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-transfer-encoding : content-type : mime-version; s=corp-2023-03-30; bh=0hUBRwRW2iGU3GXAGJqaK60bN8ITrJKzrcDmJVHmBag=; b=lskhLGUffWpfgK1lx21kL1sxLfeOhBEyURzxBK6+qKMBkFZ7uRKkRZ3yQHFmz60yitq5 uG1wU8O1zHOqd1lLMNlrnxaL3rYWe9h8IEBiHHv/Ju2OkDU0ZHWaJb7Mgz/YHBpWofpt lXpT9QcUnaFdaLDVMd9KzGYpLpAxUruKKOk2eSWIV8VDg3dhmtudTLQxtuELDOXDdXBB pLXBS0uUVhZ8ogQlUft2GNKDBvstPJU0wLZTkkrSG8k0QaxFwGb+rVINvaqn9zGAsFjl Oqdb11gXDQNT27HPv/R86mUk4CbQmNxC9dpW5FnNT6ftYRjS3hexkR9EDrtGZtNKWTS8 zA== Received: from phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta03.appoci.oracle.com [138.1.37.129]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3u7w26r2fx-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 07 Nov 2023 22:00:36 +0000 Received: from pps.filterd (phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 3A7LIgB9011048; Tue, 7 Nov 2023 22:00:35 GMT Received: from nam10-dm6-obe.outbound.protection.outlook.com (mail-dm6nam10lp2101.outbound.protection.outlook.com [104.47.58.101]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3u7w1tsmn4-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 07 Nov 2023 22:00:35 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=luy5NM+gB9htA2S51dLXsSyOxxUWRY5ZdEfNDbusTiYQWspMjwSfOJApUZ95om2AiZETrRI4Gu0TJQB59Ny1kGodoo5bzphB0b01YggubBaCvWijB65c6eLHCatghM8CjtPQM+9q2srT72JyxKbpN/Yblta7wLRAhQd1wMl+3auVYx9YQHv6flzvrB7k9/M3HEWWvlKi0Bgr96krKyVj/aoB4krS8c4dyd0uitOwW9BubY1I1qDMU2Cp3T3zMgSedjQdSaRq747oBkSIZXopLAofAvvwvGCtRc3p7UuxAuzTrjKwsY0e0sI3fQewhwzBVoER7mzbABqCLwftgMFecw== 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=0hUBRwRW2iGU3GXAGJqaK60bN8ITrJKzrcDmJVHmBag=; b=kw1jTD7WceO/x4/Nf6uHeUYXtvrT6gsalNr2Qade/ThRoC6MkzIQDGwCqYxGz0miL4zG2Petc1OKuyszEHgrwflEszbsFsmNtw0mbDhDZTYyKWOLYUvgd44KvilIlBVIdZ/a69eiJ5QCiCKQ5L/Qceoxb/oZV5SoCZ/VgtwtjyISD1mrXwoXwR7m96qUIQaJWtmOdXWwdkeHGQRW+eOUI3ouHIfCwkWjCVixmKix1U+jNFFrw42N8AsbtD6F21jVZpUwQm6yVQ90Pdmwq1LYsrPNZgpN2Ky3LywONqt2mEDxL2qk09ts6uNKvOWaFAI0E5oYaf/eD9wfyvAzOj0l/w== 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=0hUBRwRW2iGU3GXAGJqaK60bN8ITrJKzrcDmJVHmBag=; b=B/5uxxSeefrsdnNIrPm9b0CJpepWUvxBcMCHZsf4tHNOl8jbrnUin4cT5BfxpHoH9hHqzikUxQUHLu+yBx2nb195O8UgHcacQozmqP+s/g8SwFU4j4orGtfQj74pZs4cLZ4M0Ueu7qHn7iyfFLTiqpGQilDNAiVQ+hmkYRg6UNI= Received: from CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) by BN0PR10MB5318.namprd10.prod.outlook.com (2603:10b6:408:126::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6954.29; Tue, 7 Nov 2023 22:00:31 +0000 Received: from CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::1ce3:4a8c:4c99:acea]) by CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::1ce3:4a8c:4c99:acea%7]) with mapi id 15.20.6954.028; Tue, 7 Nov 2023 22:00:31 +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 Subject: [RFC PATCH 55/86] xarray: add cond_resched_xas_rcu() and cond_resched_xas_lock_irq() Date: Tue, 7 Nov 2023 13:57:41 -0800 Message-Id: <20231107215742.363031-56-ankur.a.arora@oracle.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20231107215742.363031-1-ankur.a.arora@oracle.com> References: <20231107215742.363031-1-ankur.a.arora@oracle.com> X-ClientProxiedBy: MW4PR04CA0215.namprd04.prod.outlook.com (2603:10b6:303:87::10) To CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO6PR10MB5409:EE_|BN0PR10MB5318:EE_ X-MS-Office365-Filtering-Correlation-Id: 53d657a6-dc4e-47df-e6dc-08dbdfdcf59f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 8rrj5u4u/rvceF3TXWpQV311c6GzQug7CuQc3kCuB+3uaUDvUEomtGM5p0GJvc8NGZ6UjjmgVPk6DSW6FFlelDJyqf8Hvk9+ggRmtd/pzjwa6cuD75CVlDoWp2rkdFHw5B6VUE9cjhXkFdFKG2y2kEiG9RjskxVvEcS6k4Pg5xvv3ryixYHY8uMXkJsNw+8EUfyz7LClJrbm5iBb1cYK1S+WBatIbprhohQQQBfEjgT7hwR8H5cYbvqGQn67MlOhdaD1OvhHoj0bcYzYT3LbEkcd58klV6GUVrEH+BSO6WcaLfcG6/EVEooEUhSQ3/V5WU2PBp9yQBJqMiOGpZ34liGkrV8YId3fNmWov8jQrfHkT8gsmC7sYw8eupygE3DjfGzv7luQWW+27Y6gNz7ajR1zPn8l7kTjs9VoiqmAf/SWO4pyZgy3IN9Miv9IjUJjrc/2OrsTfoPCCjhud4ilxktorYznj71M1AMDixEZekdshNbl7gnJq7JIvVDToqGLO8gLWuA83e7Lj+sd2gydyqcFhaufo0+qUyKMCh0c/p9pMiPwIPgfn5maT7c+uHOG X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO6PR10MB5409.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(376002)(39860400002)(346002)(396003)(366004)(230922051799003)(451199024)(186009)(1800799009)(64100799003)(1076003)(26005)(38100700002)(83380400001)(5660300002)(107886003)(2616005)(6486002)(6506007)(478600001)(6666004)(6512007)(36756003)(316002)(6916009)(66946007)(66556008)(66476007)(8676002)(8936002)(4326008)(7416002)(86362001)(7406005)(2906002)(103116003)(41300700001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: YivaP7HeGSVQ4muUSS20d8fnljFdshr9WQhHIUfWRLT/Wbapn49BPn3JQ1825/nKER5oKrugjARhJd1YC043xp4aDluOlHO7s8ntCyL1IF9YpOIgOMwbS3IDpQ637l6VttwiswfUSynEUlcJyAC25l/GMkMX9cHgncR+/Q7eVE2xck04/znMTO5br/eqGiSGkIUSNAXfhkokXZwHhHg+sd+y82cITN+yr+Zvxci2aFE8e6ZhZrzYbD4kY3szSeiHfgj73LCpkb9+3J2LbAomDV3Pj//woTjrj3ii8J5mTJxVRBiRT+i/u6x7djdY/mJSoVDVkj5LGZp20x5pajnMQkUbE/48Hh3Wa9Bfdtcp42g9eC8z4cXJaNn8Xs44db06/DA88H9jeL6tUTQQsi1IFqhaTWOwWYAcN8FVy4in0qf31VjGHf3c6MaVAsfC6W44L84kS4xvxA3ducnTua2xZWFXPpdtHF8KzVYG3jc08X5pF6vdQfcR4BwC2zrQoqOP8ONEEl7qH1XDHnjKdopG/7YkqXsped9KxHi0ibvJfyqSB88bevChyYULCOXawLlWlf3pCNe2vICR3Oo0DuoLk+oqlyhhjwc/JSON25aNVfYlUygJvNR7jXAX2pFceUAYlhYZMJtTuuO5CbquzR0eMDrn36/K81JerdGMSKzUny4Z5AhmTnYuzVa+3NGSuqVu83fSPXh0uTGG1/vwioTkJyXCYR83kdsZj4bv45pKJqbzRaLoRMBCiA72GRxhGihljNuMi7zP/CZDBAmHPJDDWIwi2k1O07oLJKxQxC2h7BlWQvfxLl7eDcHG9XAAt92W/eVFop47GNMfB5YMkvphNzOLkKnSBKUY1KX2jG19ObEH9y9m8FAhV4f8gzocHd+yv7b8LbRz+lUkYOvQqZ1T+iJlbHukTJGsfXCjC1YuCBMQd9tDvTIavTWABudB4SNo0RwoWp0k2t1kCVF3LeuXbFzmlIHFYCGAr9L3aaOCOIxeGYZ6OD1635cgiy8ULeQRMgVuxfNCxrk5G4tc9wjcDwyBqOBj1xBTJCw8AcK71bfKvpqj0wpCWT+ibyjAFZKPu72I3qXWkTkeN3Ay5/DSuujmUNBNroScjZNbvpb/Skj024zgJMd5rFSMr1OQvtSVGwUjuBJ4dmKUWuo2fXL0Sg1tgJhh3pbqjXwkJlMSa7t9YrxaA0JjxfOOh/ciPKpIKIkPz7IBfe2TL75OYBz6gYJC2W2mX6jRvw36PnmKCViMiW/TxJAXmcPr5xcV8rH7JtlGydODklUwZcnfyB5hJ6sLIPgL0AQIPeG7k1tCuHbY1XgvAl1/c1MooQ7lXjd2SAniC0X6wfid9qaLj5/j2xOIntt+WN2J64RanV8vRegVheYcueTAlEvy+XL0oqsyfNSuue4eOdgWbFETlXEggBDTfkEmj7ARZMVJjpoyYEGf/oBGFUd5/z8RRwxvcm4Yg52fWGAwcsGiWre5sdH5eojJpz0qEQqni6tAzxgZcjyzHzuz3hLLilIxJlbSRCdvUtnWzkW7D2jmqF+sJIKeyrj++fAKkZTLa2mZGgyKjJiG2ej2IxroteCSX+GeDjxj9UwXQpw7dB9h/31v9pxZzA== X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: nMUxiEEecSICxI5sqD8B2ptg9SAYM/hEviWjQZgsCS8tT4MCagPbZsLSZWEPV1jQfyU0o4AwgAVkyPZXw+9mM96abvuc0VXgcteaBZ5pTudoklGSd6bXfbyVIoZqdNN2hp6O/RvcBmQ/HtKOmF3GWAhkqEC4ImvByAB2Ba4Ka6nQ+ZHNm8TUuxKY7spAYchv3wjbeRAZXJG8jCed2fgXDHQ++PqR2AmcWwoAca9DxSwgyqPasE6sUwJTyDPG7DQDlNEItKd4YAQXp7w5Hww/KdTYu0k7OwZ0In4lnTHmoydTTbo467HIe/70vZQHTExF0qbif3MlmrjJhWQV7ZXEWOOpsHTDviqb0FRGkpXsdfowHYwU+p/ATeWWgqJdZZYVm8MUjZ63oeTw1/EHRz2hLbJxvL+xtBcSJP1BXERQ+0IcARQx1SOjAdhsZcMKNvO9ivpkUMh6x0q9syQDgssBquiw98E7c331yVnj2xMzCU5xyWXmzs9Ul75vUQWSaiu2qK/BgsbFAnieyYIHBugX4M+g0/wlhqx/Lgj3Fk/ECnEEuBnbuHtUW2baBn45ck6TGBFc8INPuV7eBG2PRwozP/E583q/OOcBY5ICgFevG24RTvvIvkFtD3/3vB5xKXu9lLx9Y08QoqGl3eCApKL/w8y0zejuZU6PereSILp6OCbUq+yh8rh/aSIHmA86h2sO1dLSjeFZ/iM0RliIW/R+Ghm7xGiL+8+NivVOOq/LZKclLhl4VcgBXjl5/9oTnQGmTcoMwE1Exf5JdYmMuy3EBfaLwkrxfOLZHUyWkK4Ih3IiW43VxTiyWY9moL9t9avixzJRam0eL5XyDPm88QXDtZZJwjuEhwdtLObzz96fLVt1LiJ9ImNNDMR07YBp7ACnegbUKDXu145fzSJ/8oOIUlfbIyaS+KR0PsX1Na/9qKfkZekcyvNiLG0Fsc16k+Zkb7/fK1f5DE3cykK9wy+WP/DYzZgZew6KmFQYZUXHay6AePLbAsx5WFC/ar4F0MOLs/vMKG+sOzTCr/zwNqmWi2E6oG7dI3fMBwtqqb6tdmACA5FCpQCZuiwulo3m589F6+g6MwAlUvs8DERQOG1Hh19dcSVOIWS9k9h6UmTmP6S6iii/RwBqTdFisCOUXiGwVP4k7sEZ/uq36So+m7i9674sriPFTpHfHkVpC70JwxCeNrnQ+hdPZWAZoBTvd4INgKJ09WNrBqgxJTDC2ABZeYgiGfBF9jDfIi+OEPyP8fhXjLAtPrtd3XNmokc3fYsjVyfppjFzM6CLgQ1WwiLvYAMW4d6M1EcBYc+KPAYtvux/O/0/yGg37PAdnqRJM13PYjBSV2YIyzzfNPeDApSJYa422+jghoo0106ZfN5itrQPy8wivR0skf7sEE1J9Wat80YZhqAeVhYVwXccBeNZ6TA8nD3BmQKgQSkHQR99gJhWYLxUp/u19GyQKK3cnbhwpZJ1Rlj3aucEicNvl2/F2RuOWFOqsO9C6SbYH2tOu/HGfTxx0XvpX7NZHFzPnR+URlPImVlfNuzyqHoqbar3rg== X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 53d657a6-dc4e-47df-e6dc-08dbdfdcf59f X-MS-Exchange-CrossTenant-AuthSource: CO6PR10MB5409.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Nov 2023 22:00:31.1520 (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: nIfvH/0+LFB591xhEdpfMCALNE8/oNj6kl3Xy8MjC7DvPuben1k3rn+vIG6dxZAbcFGZpTEdUDtb/nmj5ruBt9pS4CxFiXf2xqNutMgolfQ= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN0PR10MB5318 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 spamscore=0 phishscore=0 suspectscore=0 malwarescore=0 mlxlogscore=956 bulkscore=0 mlxscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2311060000 definitions=main-2311070182 X-Proofpoint-GUID: pkkAQ8TpHc89A5zkhfNzngKdZPF-XpGk X-Proofpoint-ORIG-GUID: pkkAQ8TpHc89A5zkhfNzngKdZPF-XpGk Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (groat.vger.email [0.0.0.0]); Tue, 07 Nov 2023 14:06:19 -0800 (PST) X-Spam-Status: No, score=-0.9 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on groat.vger.email X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1781944602799357933 X-GMAIL-MSGID: 1781944602799357933 xarray code has a common open-coded pattern where we do a flush, release a lock and/or irq (allowing rescheduling to happen) and reacquire the resource. Add helpers to do that. Also remove the cond_resched() call which, with always-on CONFIG_PREEMPTION, is not needed anymore. Signed-off-by: Ankur Arora --- include/linux/xarray.h | 14 ++++++++++++++ kernel/sched/core.c | 17 +++++++++++++++++ 2 files changed, 31 insertions(+) diff --git a/include/linux/xarray.h b/include/linux/xarray.h index cb571dfcf4b1..30b1181219a3 100644 --- a/include/linux/xarray.h +++ b/include/linux/xarray.h @@ -1883,4 +1883,18 @@ static inline void *xas_next(struct xa_state *xas) return xa_entry(xas->xa, node, xas->xa_offset); } +/** + * xas_cond_resched_rcu - if a reschedule is needed, allow RCU to + * end this read-side critical section, potentially rescheduling, + * and begin another. + */ +static inline void cond_resched_xas_rcu(struct xa_state *xas) +{ + if (need_resched()) { + xas_pause(xas); + cond_resched_rcu(); + } +} +extern void cond_resched_xas_lock_irq(struct xa_state *xas); + #endif /* _LINUX_XARRAY_H */ diff --git a/kernel/sched/core.c b/kernel/sched/core.c index ea00e8489ebb..3467a3a7d4bf 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -8664,6 +8664,23 @@ int __cond_resched_stall(void) } EXPORT_SYMBOL(__cond_resched_stall); +/** + * xas_cond_resched_lock_irq - safely drop the xarray lock, enable IRQs + * (which might cause a reschedule), and reacquire the lock. + */ +void cond_resched_xas_lock_irq(struct xa_state *xas) +{ + lockdep_assert_irqs_disabled(); + + xas_pause(xas); + xas_unlock_irq(xas); + + __might_resched(__FILE__, __LINE__, 0); + + xas_lock_irq(xas); +} +EXPORT_SYMBOL(cond_resched_xas_lock_irq); + /** * yield - yield the current processor to other threads. *