From patchwork Tue Jun 21 20:47:05 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Liam R. Howlett" X-Patchwork-Id: 12889795 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 E32E0C43334 for ; Tue, 21 Jun 2022 20:47:59 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id C575C8E0035; Tue, 21 Jun 2022 16:47:54 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id B17F58E0033; Tue, 21 Jun 2022 16:47:54 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 91ABE8E0035; Tue, 21 Jun 2022 16:47:54 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id 816FD8E0033 for ; Tue, 21 Jun 2022 16:47:54 -0400 (EDT) Received: from smtpin29.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 5C708348E4 for ; Tue, 21 Jun 2022 20:47:54 +0000 (UTC) X-FDA: 79603429668.29.A98CE78 Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) by imf24.hostedemail.com (Postfix) with ESMTP id E678E180029 for ; Tue, 21 Jun 2022 20:47:53 +0000 (UTC) Received: from pps.filterd (m0246630.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.5/8.17.1.5) with ESMTP id 25LJ4NhJ004714; Tue, 21 Jun 2022 20:47:51 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : subject : date : message-id : references : in-reply-to : content-type : content-transfer-encoding : mime-version; s=corp-2021-07-09; bh=tvs7CSFXC1VPnyrfd0DOnFK1dhedtGa/BS1QvJHKxgU=; b=j64xjQeAquB6GIkwqE/SmKeCZIytKX9kHqjBwBIkJFjfTut36mxjZXJ+e6owrf0s27CX ztfF5NNkeFpSYdjTIM15ZzyDLCD8YFLb5FBqsT+JOuy/JVPWezhVJI8vJC8zXsEQNP+/ SvsNctwCeseoyhP+0LXXuGw55vURygv/hdRB5yCBvgs2u9aLH0994pXRlWxJ7vwRMs9P s34g2eQO0iC+IhQhACnPaUsvxHciJV2pyL4O746fb91atddVG0S1x35rnp4QXOVy9KNt SNeJaeycm/Al8q7VG3WojpToqK6kfR1ZHeTwNJqlMb1vsOBjXaYI6PKEam/8+q+tmJPv eA== Received: from phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta01.appoci.oracle.com [138.1.114.2]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3gs54cpnx0-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 21 Jun 2022 20:47:51 +0000 Received: from pps.filterd (phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (8.16.1.2/8.16.1.2) with SMTP id 25LKeUi0027847; Tue, 21 Jun 2022 20:47:50 GMT Received: from nam12-bn8-obe.outbound.protection.outlook.com (mail-bn8nam12lp2177.outbound.protection.outlook.com [104.47.55.177]) by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com with ESMTP id 3gth8wspfd-10 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 21 Jun 2022 20:47:49 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=jqV88OntIO5a9Q/FJECppsBqnfkefYZd5Z6lkt1hAc+zcT1boB7UCU7ePmwgG9YOUDkN1LUW5RH2E0nnrCnesuP57Py/voytqPa/muLC0wMtvKly4tJfKdvDWBbLCCuOlTHlZ5kYE06SZxOr205vBYmoLxRYQuhAwXYc02tzizgflA/Y05WaI/F9iK6V+5BIlPWxI8pbKZiisbgKSqouDvF2tsxkDDp1yZew0ymZqGFgw1JeFw7QWysRBI83W/p10jHB1Wb8k2wSjHKUYIA0Tj+9hsL7q8f1ORN3Y7xhx5EpeEkOElLAZ6Va0/4YGJGEZk3i3uEuGogusWb6/wwIWg== 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=tvs7CSFXC1VPnyrfd0DOnFK1dhedtGa/BS1QvJHKxgU=; b=O+vgidUIhrVQtTgd+aXnBZJ+n7Om8p+GkPLYSj+M3C02tRiW5deVkjJxdonk6xW/mQ5amL3Cc+bJlINA1zXOcAuvP/8OcxEIaN/qvHNfHrUgn2QHPROHS8opvRjrPSW7RWtiT5nAHAcCcEPrd8fMhPOnb9YFlA8KdXEwDAy01sQbFnv5TSKsfCsqDu2RYMGhsD+vEAzDK59YbFn8s3dcOY9ja4DXlk5MvQwRZkU2SmfaQjtmYTz0NcCuyAhZyr9JTfk9I2V4sawy4hdquh6zlayuxfu1Lx2Cai1Bitje2XHSiKl82ifjU15kMJNKdxcuDd7/yOoobiLOd9W6duoYzw== 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=tvs7CSFXC1VPnyrfd0DOnFK1dhedtGa/BS1QvJHKxgU=; b=XHK3mqHgeo/lFK2MgRpiuFGDlDjXo1mV6gFOI4MtL/UA75lvjqgym8EOX9CkiUqm2HOFpowTAOC7cT8Zla1Nnum84cNxe0qIaMUgvomimjr4iMU/ukPUML0FCctvPcoBhh932KeUBVj3mmaKN5GC6/7+9240bsjyql4VZkazx8c= Received: from SN6PR10MB3022.namprd10.prod.outlook.com (2603:10b6:805:d8::25) by DM6PR10MB4025.namprd10.prod.outlook.com (2603:10b6:5:1fe::32) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5353.15; Tue, 21 Jun 2022 20:47:47 +0000 Received: from SN6PR10MB3022.namprd10.prod.outlook.com ([fe80::f59a:175d:d24:949c]) by SN6PR10MB3022.namprd10.prod.outlook.com ([fe80::f59a:175d:d24:949c%7]) with mapi id 15.20.5353.022; Tue, 21 Jun 2022 20:47:47 +0000 From: Liam Howlett To: "maple-tree@lists.infradead.org" , "linux-mm@kvack.org" , "linux-kernel@vger.kernel.org" , Andrew Morton , "damon @ lists . linux . dev" , SeongJae Park , David Hildenbrand Subject: [PATCH v10 39/69] um: remove vma linked list walk Thread-Topic: [PATCH v10 39/69] um: remove vma linked list walk Thread-Index: AQHYhbARBlm4gN8y8Uep/1bQnEdRXA== Date: Tue, 21 Jun 2022 20:47:05 +0000 Message-ID: <20220621204632.3370049-40-Liam.Howlett@oracle.com> References: <20220621204632.3370049-1-Liam.Howlett@oracle.com> In-Reply-To: <20220621204632.3370049-1-Liam.Howlett@oracle.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: git-send-email 2.35.1 x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 290c194c-a778-40cd-e7ee-08da53c74cb9 x-ms-traffictypediagnostic: DM6PR10MB4025:EE_ x-microsoft-antispam-prvs: x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: iIKnOpPZ+BU4XWeIg7St4uG3VFNWqARFrZiUE5Z2AodlrqMnAHpBRok8hy300WWv2gG+xZUw5Eoq2e2VkkdVns8gYXp9zurSHBC81X9Z3gTgAJ0f3kQEaQ5RhTNLP+1GOhs5wVynjNwNjvWuPesrDPrzcgzZOLM0XRCynDvUT0mmN+7fRoj4DUgEaLGDToe9ifn77NlrUBT+Y7kZ8gwxaCmiOe3Dsc/5Tshtnump6zO13/oxNJ2ksn6pwFDIuF5xsuveD0BS7HwI+JtBTNacaUDm9iyyGIqxrYX5ILsnCF0Gb1gmNdTy3Sf7M2A4ZafcR8vtUQM4CbaEIJ3JSA8ZLmiJC9/wHGT+/1w58llebcYg5HeM4Xp1PSyztnm+T0Ybi6uudpmt5LXMN4eW65vPBN9ybWzeXKfDk4EKx2i9yy5WYg3pPY8FozKgCgiPro3DxOyzTfXeuPU7sbdRbNgbyOnBAtmuyIW0l8giGsIikjQRatW+67zAY358szZ2GsZAcBBhPrF21jMnMmee5JtylJNFq/M2sEDNXBrYIf1NZUfiyJhXMByXPr9ny4YrzciwwK9jbeMbXf4jhGXHSwERNYNPvrGejqd3JxHfP3kDpKaugAsaiJnh/m5vYt8henmDYxZ89EbdtwXB92O/Uae70RNDMUmqxbvj+cAqcaQSdLkB/AmLU1y5R1mWT0cZtCqRiQqQWkEXKOtkIejJAMJa2KypEgoxhW4RCyoOs6KN8RzIlnIBTXu1H5rtZg/XFwG5qlIpgQENurfQJpKBvGEWrggHXzuuA4M8IeXXXPx/x4U= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR10MB3022.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230016)(39860400002)(136003)(346002)(366004)(376002)(396003)(6512007)(41300700001)(478600001)(122000001)(6486002)(966005)(110136005)(36756003)(8936002)(71200400001)(8676002)(26005)(6666004)(6506007)(83380400001)(2906002)(66446008)(316002)(86362001)(2616005)(91956017)(1076003)(66476007)(66556008)(5660300002)(38070700005)(64756008)(66946007)(44832011)(76116006)(186003)(38100700002);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?q?7Rr8xp/5FgdIZsxzT5dg/Zk?= =?iso-8859-1?q?dRbWBFzYxp/ffOmEgJ935Jh7BWfAq3aKDodXn60aF07NVxMmIVtbUGkcqoSb?= =?iso-8859-1?q?zMc+qVap4eb1nrx2kKsc00NLPtamMaPFA6UwchuvaFdlCXE/042R+Hq7u1RA?= =?iso-8859-1?q?GOfvQg6q7kYNMYRSxQ8ExkAYyE1VcvXOVV1o+nBQd64D+2nOVXKkyON8uGL8?= =?iso-8859-1?q?b4+9HROzeU5PzSXgm5ohDzluAq5WYNaOLnrq7UtrnD6kOiKXr8GAqLKWlJ7W?= =?iso-8859-1?q?V/3BmiJubWKf549Mwzsks6JlJlccHk7aaEPqZHXBxFPZIs8YqXVKGC+K+25h?= =?iso-8859-1?q?U7eJgXDD+F5jHEAy/90fCLOfDT578wSRikD5rLXHQZnp+qCNHPUMhWq54diP?= =?iso-8859-1?q?+/zukk7szTf6RUbpFL1BE2+Be6vxRs/jb+a1poQczESuxT680wm7RpgSNAO+?= =?iso-8859-1?q?XIijXzl6TOkpwNc/MbekRybQ54s7T3DrOqsyOgJuA2V2kLbgqlKDdHV0x8QO?= =?iso-8859-1?q?gStLcsSNPpAbNXltFaUVor0r/uezgkvCsuuBcjM2sshTSTxRzvvgfh2I+gDj?= =?iso-8859-1?q?Hc26qKnjglLZof7qbZ6MlbD827VG1wxpTxUC7Iqjm/fUrzaGURfJosTSGlS1?= =?iso-8859-1?q?L3pqaAMV+l06aXL2WpFLQ+3bZ8PUCNe/5ku9KezDFV+hIYHkrp6wb/4tW8w4?= =?iso-8859-1?q?Dj0g4PBoYf4aij6HuyaA6VSF2zISKUEo8L7gYXPRpocdONVjM/d5esYjcXHO?= =?iso-8859-1?q?3rsHTj8NFePRtjz22FH74dtzO+BwUOJRRnz5ZQQD+cwO5gX0zQjXYC6KTFk3?= =?iso-8859-1?q?JJlHiEj6QAFa8t0FGNJW70lOevdcS3pSo3SBbcae8B1LauRVGMfssgLamlup?= =?iso-8859-1?q?EhSdGE9HvFWxHXRTy6xG0fx92Yxu+B4nNUvnmd9Al70F1N2OD/d0oFidZoDl?= =?iso-8859-1?q?B6GlP+vHp/bg9gzha66vTF8CcIDFtjuVmBANAACPoGT4GjcZhxLYTePMaRI8?= =?iso-8859-1?q?Rbrq8Akq6BjaP+GbGyRkALeVBWHJxuZVNn8hx3zrnV2s/HP4pI/yW6oAZbqV?= =?iso-8859-1?q?pDPd4kwUG2gtj6CRguNuk0xYkcqrBzlHt/IpVqb+MkFUbLannI17O4zAr5V/?= =?iso-8859-1?q?Fyl8mUQkxJa1XcSg1g4BFwtxA+PXL3EkT/7J8cRhhAfb8ZJKP4JbIiXsfUyH?= =?iso-8859-1?q?jFltJy3rycbJiWokGYM9Qi//BGzNQyTRSykftHtRXV7K2DmPJR1JJvORZbC4?= =?iso-8859-1?q?YKOy/rydlYM/235HGJP4ufmF94qp01EOVfgQzBq0FfyxwWU/I2UMaZmPNdej?= =?iso-8859-1?q?rGZo44NnIuhJd915FDeVGhGU1RO7v1IFf9yzEX/izHbWyg6aDTzFUCBfQkUH?= =?iso-8859-1?q?dRJdhCsLmCK57+PIQzLBmbOM8r8haoVVocVoXNwznnkkQPD3qgsxW8DR4U/A?= =?iso-8859-1?q?6261IKFcWA9gHiq3gzOcb3uFaYT3rwbo4JOZeDQ6HvIkd70mE03Gd8928gy8?= =?iso-8859-1?q?dfX1a58Law55TVsdiGvBn2L/FA/gzm3HYa9Zny/w/aLUWZZBkmJ02Dc1avSL?= =?iso-8859-1?q?B8vP2Jrb1Jom2HSgNiQDyZVdENbphH8TqvSLVx8ehzd9LUQNAA0X0PNy2baL?= =?iso-8859-1?q?aaE1V7rLaYOtxuqXDmZbXCKsg1A3IugfApMZhhz4V9dWULXI7YsI7btS+cPL?= =?iso-8859-1?q?fB0NlFfQZr1ptk3nuhORKKxjU5jYq/3Ne3NsDkJea81QHWaWPvNYAvhUyHPh?= =?iso-8859-1?q?8UnGpK7X9VJnRopqGoC/+xRXhqVxEYRYQH1uJoPlBxVoVRWTlMycBRDlOIVO?= =?iso-8859-1?q?6q79sa8k=3D?= MIME-Version: 1.0 X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: SN6PR10MB3022.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 290c194c-a778-40cd-e7ee-08da53c74cb9 X-MS-Exchange-CrossTenant-originalarrivaltime: 21 Jun 2022 20:47:05.9411 (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: leyWtodU1cam42+DYhL55z6Z4xi9IBhNxMgdzi7lyyTBwzxcEwPJCLWv4h5m8jGjUONIWpLNEPIZk/WyUD13Ow== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR10MB4025 X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.517,18.0.883 definitions=2022-06-21_09:2022-06-21,2022-06-21 signatures=0 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 malwarescore=0 mlxscore=0 phishscore=0 adultscore=0 suspectscore=0 mlxlogscore=999 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2204290000 definitions=main-2206210087 X-Proofpoint-GUID: ipByM8Z7w9da3xB3Y1nbUSpti5VEZ4xP X-Proofpoint-ORIG-GUID: ipByM8Z7w9da3xB3Y1nbUSpti5VEZ4xP ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1655844474; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to: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=tvs7CSFXC1VPnyrfd0DOnFK1dhedtGa/BS1QvJHKxgU=; b=Du4RBTCNHP109kUJ4H/VMuUFSu2jEbCPzlDOEHKDX4YksTGLsufoDMQA3cm+rThJWLp6wc Et/Y/greeVa73TtUWcnxBlqoND6EzwrPiAgmVVwS5ttHqo2l9pEE6v/t/hDoWeo3gnYXT8 wN5JiPmOe5j4wSgUO9D7KKVV0IfYFVs= ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1655844474; a=rsa-sha256; cv=pass; b=HqtK7QAOVu4wwA76Bgy95+Mdm+T4HLlVE9rHNtYk+8tGONrO4z484SpRGqINXYFkm5d/cw iLoUCmwRyxQ6uU17MfPmnmVl3j/m2BMOu3nOIV/RWJyx+qWs6BRuh2qI+M2RWAD3czGlLs KKIKObt1xE+44lGRw42K5Pl27RJyCnA= ARC-Authentication-Results: i=2; imf24.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2021-07-09 header.b=j64xjQeA; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=XHK3mqHg; arc=pass ("microsoft.com:s=arcselector9901:i=1"); dmarc=pass (policy=none) header.from=oracle.com; spf=none (imf24.hostedemail.com: domain of liam.howlett@oracle.com has no SPF policy when checking 205.220.177.32) smtp.mailfrom=liam.howlett@oracle.com Authentication-Results: imf24.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2021-07-09 header.b=j64xjQeA; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=XHK3mqHg; arc=pass ("microsoft.com:s=arcselector9901:i=1"); dmarc=pass (policy=none) header.from=oracle.com; spf=none (imf24.hostedemail.com: domain of liam.howlett@oracle.com has no SPF policy when checking 205.220.177.32) smtp.mailfrom=liam.howlett@oracle.com X-Rspamd-Server: rspam12 X-Rspam-User: X-Stat-Signature: wrtw7qwbaujajhi3mpbisza5ji5gdgon X-Rspamd-Queue-Id: E678E180029 X-HE-Tag: 1655844473-142865 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: From: "Matthew Wilcox (Oracle)" Use the VMA iterator instead. Link: https://lkml.kernel.org/r/20220504011345.662299-24-Liam.Howlett@oracle.com Signed-off-by: Matthew Wilcox (Oracle) Signed-off-by: Liam R. Howlett Cc: Catalin Marinas Cc: David Howells Cc: SeongJae Park Cc: Vlastimil Babka Cc: Will Deacon Cc: Davidlohr Bueso Signed-off-by: Andrew Morton --- arch/um/kernel/tlb.c | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/arch/um/kernel/tlb.c b/arch/um/kernel/tlb.c index bc38f79ca3a3..ad449173a1a1 100644 --- a/arch/um/kernel/tlb.c +++ b/arch/um/kernel/tlb.c @@ -584,21 +584,19 @@ void flush_tlb_mm_range(struct mm_struct *mm, unsigned long start, void flush_tlb_mm(struct mm_struct *mm) { - struct vm_area_struct *vma = mm->mmap; + struct vm_area_struct *vma; + VMA_ITERATOR(vmi, mm, 0); - while (vma != NULL) { + for_each_vma(vmi, vma) fix_range(mm, vma->vm_start, vma->vm_end, 0); - vma = vma->vm_next; - } } void force_flush_all(void) { struct mm_struct *mm = current->mm; - struct vm_area_struct *vma = mm->mmap; + struct vm_area_struct *vma; + VMA_ITERATOR(vmi, mm, 0); - while (vma != NULL) { + for_each_vma(vmi, vma) fix_range(mm, vma->vm_start, vma->vm_end, 1); - vma = vma->vm_next; - } }