Message ID | 20220717024615.2106835-46-Liam.Howlett@oracle.com (mailing list archive) |
---|---|
State | New |
Headers | show
Return-Path: <owner-linux-mm@kvack.org> 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 46794C433EF for <linux-mm@archiver.kernel.org>; Sun, 17 Jul 2022 02:47:49 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 5011394001D; Sat, 16 Jul 2022 22:47:35 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 4AE2894001C; Sat, 16 Jul 2022 22:47:35 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 3296594001D; Sat, 16 Jul 2022 22:47:35 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id 13A6894001C for <linux-mm@kvack.org>; Sat, 16 Jul 2022 22:47:35 -0400 (EDT) Received: from smtpin15.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id F18AF20321 for <linux-mm@kvack.org>; Sun, 17 Jul 2022 02:47:34 +0000 (UTC) X-FDA: 79695056028.15.81EEA3E Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) by imf17.hostedemail.com (Postfix) with ESMTP id 81B984007A for <linux-mm@kvack.org>; Sun, 17 Jul 2022 02:47:34 +0000 (UTC) Received: from pps.filterd (m0246631.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.5/8.17.1.5) with ESMTP id 26GJ8ghr031747; Sun, 17 Jul 2022 02:47:32 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-2022-7-12; bh=6kHNw4RpSOt6q47JTBY6QgPX6ulCbVCwN5tRWo8++14=; b=B/FIABMMBVR4XFnpFtFo/aBuuzPMoUxd5fdC/hnZF4uqJ+BrKNRA3Pnlpeh2O4v7By6f hM953UASGxaV/CYvtd2NLQKJKGbhY0z+X/EKV8nsWuaHsJkqGQBsKFrqeGK5btvE/R08 6gzN0H2z313xKbbBhmy9N1aH+Ds4s/ldRUSHBOE636Uoe4ZSBSLU5cgWGDptlOnVJjgE 6o2mjDA6955GElHwKQ/butmund5+NZ9D22hl8g9HPT8YvglpjKte3AnWGdrXNIAEi9EM bOXlmt16rBdsQPgeCzka16RWGz3dW8B7CXAEXC9QLjtLyGxMXb8E8qN1nG6kqEQFMR4E wA== Received: from phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta01.appoci.oracle.com [138.1.114.2]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3hbm428y7q-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Sun, 17 Jul 2022 02:47:32 +0000 Received: from pps.filterd (phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.5/8.17.1.5) with ESMTP id 26GMYISS036113; Sun, 17 Jul 2022 02:47:31 GMT Received: from nam11-bn8-obe.outbound.protection.outlook.com (mail-bn8nam11lp2168.outbound.protection.outlook.com [104.47.58.168]) by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3hc1ejp6a8-16 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Sun, 17 Jul 2022 02:47:31 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=G3RBJweOU43nSA7V5RLG6QABOx1r+KbqkPVUbvICzyCLGyhWcyorrDQnTWK9GtiChSW1FHvIOlMMIlYS7lrCJUyZHXQeN/EaA4rvmUO9wocRHSGE+t6FSbRR/8SpF0jc3tq9xQAT5sFNKOprPPOnNERj1CGLA0m/xobUtnbY3crZ0egvim9brz6X9MAWPXp64OuvEG5Evxa/leMXdOjxfwmUrHyoes59P1Rnke8DtU3eMZ5zghzqxjPidkSqv3xGndXP+EXP//D5woVxVn/vmtd3zL9xbqTOT27NpTnslSAH61mBCiq107K+u8i6DUkowMkYadeDfudLPPa8JbaZag== 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=6kHNw4RpSOt6q47JTBY6QgPX6ulCbVCwN5tRWo8++14=; b=A3iIV14mFG7oZffR+Id/mYHj5Gg7GQUbsBQ+Q6hcJsQYi1YgbzBGQbeZ7eFCMTRbTY7rc16BuTZqkLX/QNWbgCiKCE/+WID0IQBEgzDRRNtDi8KPJ1d26htNLYxvt3pOazWcjfumLgj4cl2XKje9F5TGAsg56McfS2d6m3pdOmv2EecWy9jwJR0NMusDXayDlkWFmWSX3ACpCH3/HgvpWp5kcn+18GHkeTQ9c+mcHdUe5049wbMp2cYSEtnAb/p9l0FdyTTjtyWYOixOONRLEMo0jubSlz9BiK94suj55Gxx/HShsAW74BFX/0Gk6qeSKUvwSWM/o5A4FPHhvd2Baw== 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=6kHNw4RpSOt6q47JTBY6QgPX6ulCbVCwN5tRWo8++14=; b=EWttbuQPCTAfTKEm/DhZ93a9J+SYtMpTgu2RW5KkrLatu98IOgenx15SfruSvQ7IPtNuQvXrmoWcyGSFkMuzzBFTnMRKNI1cUKgf2nJmqzsT7kZMWGqKUGqXyzcQX/n9A2/69pQpN5GmFoXj4A9Rpm8L21Er4DVHqC1KsBh495M= Received: from SN6PR10MB3022.namprd10.prod.outlook.com (2603:10b6:805:d8::25) by SN6PR10MB2799.namprd10.prod.outlook.com (2603:10b6:805:d9::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5438.20; Sun, 17 Jul 2022 02:47:29 +0000 Received: from SN6PR10MB3022.namprd10.prod.outlook.com ([fe80::c4d1:edc3:7d21:7c68]) by SN6PR10MB3022.namprd10.prod.outlook.com ([fe80::c4d1:edc3:7d21:7c68%6]) with mapi id 15.20.5438.020; Sun, 17 Jul 2022 02:47:28 +0000 From: Liam Howlett <liam.howlett@oracle.com> To: "maple-tree@lists.infradead.org" <maple-tree@lists.infradead.org>, "linux-mm@kvack.org" <linux-mm@kvack.org>, "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>, Andrew Morton <akpm@linux-foundation.org>, Yu Zhao <yuzhao@google.com>, Hugh Dickins <hughd@google.com> Subject: [PATCH v11 45/69] ipc/shm: use VMA iterator instead of linked list Thread-Topic: [PATCH v11 45/69] ipc/shm: use VMA iterator instead of linked list Thread-Index: AQHYmYd4xSr8vWHm/k+Pmo7kXIVKzA== Date: Sun, 17 Jul 2022 02:46:52 +0000 Message-ID: <20220717024615.2106835-46-Liam.Howlett@oracle.com> References: <20220717024615.2106835-1-Liam.Howlett@oracle.com> In-Reply-To: <20220717024615.2106835-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: 4f303164-4cfd-45b1-e243-08da679eb071 x-ms-traffictypediagnostic: SN6PR10MB2799:EE_ x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: fhFn8bxybI4PHNGtXlW6/BHcUO85nK8yBvXi+WBis59+CB5HiZn11V90lNf1O5/5pBBKGe5HqmwOXq9cw0QTHKpe52EH+TW5UkbOAmfq/YbmP/cPJFDm3dSnyIPG0eQeAuAvIjVd7i1uk/2txqHB7qVFac9WmJ35cierfDPZhZY23+Z9Zvx9BSHcivSrMmTBcxFwkHYE260uEEii1YMzGFMLYDk7zRc2jm2IjpN7ZUNRgvKakThFT4g5yOqWZFtg9542RTrYui8UGgDQ3DCfp97wGpyNraADXJIcOmBNi85VumQSUj8fhgaK+O+WZ4QuFmOGxnEgKH9wRTrvirKzgC/CbCU3P7NYd9KTXcvPUfO8zbgnh0CNMLPrsJ7jWcGLFkma7lk3JOu3eavlidxvLDpKeITt8XMNi/tFlWpmRmzM+TqCbC4LiBV+Pvi5HqDvBAM0xHVCKJXS/eO+xbei4uNBUTeXPrbRjkk/AJ/MxEVKtktIIqSl7q2yeGLMyfs+5SPzI80zJJbMf/aZuXjE8pJtudz5/TPxrvQJJbSqcXIDF3ViLNfZDulnyWR0Qd+CcIP9+vdxA7o0LKdlfRTbIShGfU2aLvLHG9KubDn2S7Sn/C+7iGzImg4ZkK5fGCc4j/NKBAIVQXClfpxcXWT96k8wVG+HG0kspFiVNv5RK5YaE/Jd0F1o91o/IVSFh7dBVGiMkxyjGbJMZ1qo5G0UdQeoeYlR70B1yx5tREHbpVOV28bBUmmijkX44k0mhHbq/cuEBLUzhVQf7ne7nvYaPPKRZdpVxxr5v8U29sJUPYQYojTU9G/Du25iPQqqSyeRl2SQLidf1PpRTo0+UZfxRqdtNz4IeFGft8bGLDPwL6jB4UjUQrEPIPCrkeZfIyFG 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)(376002)(346002)(396003)(136003)(366004)(83380400001)(66446008)(66556008)(64756008)(66946007)(8676002)(122000001)(1076003)(2616005)(66476007)(186003)(38100700002)(91956017)(38070700005)(478600001)(6486002)(8936002)(5660300002)(44832011)(26005)(6666004)(41300700001)(6512007)(71200400001)(966005)(6506007)(316002)(110136005)(36756003)(2906002)(76116006)(86362001);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?q?ytP2sRw3L+0fT1OdROYUJyM?= =?iso-8859-1?q?gI4s15t1HZtr0tSunpKf6LjctYZEwObVzDJZj8FtNt8xbmkVSIOjBI8ghlC7?= =?iso-8859-1?q?jE3S29/c/HnjuIZcdlYtI7ilnYJmP2Mp3UhP8XS3t1r0kRHuzmNgvAwO5Hxd?= =?iso-8859-1?q?ojkbSe0M+u1L+M3VhXGltEZXZ9G0w4VR9M/P4OysA6+ifh1wxSBqNErw9xdz?= =?iso-8859-1?q?o6smybRCa6XYUlWSBeQz/kjGqod3/Te5RcSotVw0AOY1yIWjlmDWwWlB24Bk?= =?iso-8859-1?q?6LWpLnsA6GrPcmvoNLeUe6udbXjwRgrM1AnIFqxf8aOhsu3exZhFRjbRMX+p?= =?iso-8859-1?q?nhgnxXxmDqS/eaxHC2aVqgkDFaSblb7DCY7+o8yalwvzKAhsDuoptSdLo7ln?= =?iso-8859-1?q?Brl1wAyJhUJDpXGM5o+XSjXILvGa9hsrJf8FGU0MbjglwEfO+INbCgNldqsg?= =?iso-8859-1?q?kt5LW66SlKO3hMGYLdaDCC+TLhkuPKe1BivPzd/LPq8V647VA0jNraznt3ty?= =?iso-8859-1?q?CQhab/TIjfFgeUo7aa6a6fpZC94WB8fKYv2sRIO6NTYGW2WQzp0ets/dzXF9?= =?iso-8859-1?q?MJVq9Y+kbLTYkhFbSLiVkLqWbhGk6PuL2gEStR8aCqdZNaOq1yxOXHvDfk3a?= =?iso-8859-1?q?+ChfeNMOZ+v/3oIH09Af96nf3a93YyFwdNiEUb8aD8oiSZ4h/lfhtTRGLRKe?= =?iso-8859-1?q?vcMhNGySKVHknmHty92c4A6aK1RUVV99jLgnOY9L1j8B/1caHuawZcIWEyTi?= =?iso-8859-1?q?qgnBZo/qLxPDVA9bCKcjTNQeZPK9qTZi3PBYZh130FfHdTiAEQKeI8xOqaqs?= =?iso-8859-1?q?pjCnPhNjfNXOqS5kxEr8M/a1D/1OqCDBMJBzSE1Ya11UTDbM64in4YOTv+Ft?= =?iso-8859-1?q?UAW575jJzyUnGv27MsUs0ZkRQcr6/3n8LSNmCEzPkJwbyRg3fdgyOIlzi1i/?= =?iso-8859-1?q?VUrpqoHdcJAujJhpawXi9WKGtlmda/tWTQsB4hPsozjKm7VMHoI5EvHNmKRD?= =?iso-8859-1?q?Rtszzu+FNK66677Igzh+71JdmpBii21T44VSI+LmwxgG9pn8M6xJh5bY8fLM?= =?iso-8859-1?q?itwrRhCOrBxeJ/KiNQzfLVQ5uM6Q9apKo7AGr8gPk13EJ2XxpskuNBT8Oo72?= =?iso-8859-1?q?dhAjXwg+3sUNZ84krmlnkVPm2DgHZskyJiTsvpe1ipA9fi/+4fYj/CkoCvE8?= =?iso-8859-1?q?/xFISS87naBabl/7SLrwovJbV+/qD8cMZ4rlU/a98v1xgQt6tmRQqkvlgl42?= =?iso-8859-1?q?g5bsL7GYD1SzQzT3Q2EDrGGGqffAmrJaBhc1dLEE3y1I+4yl9CIm+ogJ6n38?= =?iso-8859-1?q?jm7HVOFqikmH9ve8ZhZNUTOhspXizw1RYUBjXntq6eQAIX9Lnk+X9FWB381G?= =?iso-8859-1?q?kuNil2BSTqWSJQXLnvb07cxWSDgzJ1oVitiNZcx9mEihGvjTTZTPCHOylW3A?= =?iso-8859-1?q?fVirUSUuQ1UmeXF1IiQI5lzdE7N8m7p/Stz+eMvPkr2UrNJIeFS01BiwLT1y?= =?iso-8859-1?q?KeYRocNymOLgcsjuZ+p+zomlY21fG1TPqVsBk6Pi5s+Ru5lQIJvZ4/xdqCO3?= =?iso-8859-1?q?uFF+kqB+fFIGEM011EiWvDNuQhFbWpApVyEhkMDRin9QQSNGSNOyFSL/qMB3?= =?iso-8859-1?q?1nuvI5BvhmXrOLYGq+nmm/2IfDFVOeJedwc8x7Q=3D=3D?= Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable 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: 4f303164-4cfd-45b1-e243-08da679eb071 X-MS-Exchange-CrossTenant-originalarrivaltime: 17 Jul 2022 02:46:52.2243 (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: h85pAKmRivk/QQHm2B1umP+1IeDa0mB1TiZNtnfrVNVN78N5cq/oUj3FBK4lRbl+Gjv2Z8nAXp/Yh3CCY/0+TQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN6PR10MB2799 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.205,Aquarius:18.0.883,Hydra:6.0.517,FMLib:17.11.122.1 definitions=2022-07-17_01,2022-07-15_01,2022-06-22_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 bulkscore=0 mlxscore=0 mlxlogscore=999 suspectscore=0 phishscore=0 adultscore=0 spamscore=0 malwarescore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2206140000 definitions=main-2207170010 X-Proofpoint-ORIG-GUID: aWsw77bFWYeHyfv8G4dxf44f-Byg9lD6 X-Proofpoint-GUID: aWsw77bFWYeHyfv8G4dxf44f-Byg9lD6 ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1658026054; 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=6kHNw4RpSOt6q47JTBY6QgPX6ulCbVCwN5tRWo8++14=; b=ccTfJ9AW7PopgywPQckzbHkSq6HWM36A7vjsFWlM1v0JrHhS6fg87LhtWRAxzB/QnVydv1 pSpVjwTJAZsfHeXuZNDNpZBFvy/R3DJhK6GMotv5rXp0r0mlOamlSK1LXCPOY7Ssd2Mzy1 alB7iV7eAb78D2k7qFPtMG6K72XosHQ= ARC-Authentication-Results: i=2; imf17.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2022-7-12 header.b="B/FIABMM"; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=EWttbuQP; spf=none (imf17.hostedemail.com: domain of liam.howlett@oracle.com has no SPF policy when checking 205.220.177.32) smtp.mailfrom=liam.howlett@oracle.com; dmarc=pass (policy=none) header.from=oracle.com; arc=pass ("microsoft.com:s=arcselector9901:i=1") ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1658026054; a=rsa-sha256; cv=pass; b=LdBpIw47JUkk0wqZbtLzfTOiKOXfXCZTbk1mX384Rk2KZ7KUPUfvpcEV8Wo7+e2wEDLgdO w3uUqYIDM/kkD+PB7vIOGY8dRZ2yUi+aV1qxxEWqv5sUNX/sjDrWXNoaDu923P3Q5NFeGw jUZ65C1zDlEoWj7UklU7LHBX1YFYh6c= X-Stat-Signature: xnzk4r5zqrye3k1xdttosbqeibebb4kf X-Rspamd-Queue-Id: 81B984007A X-Rspamd-Server: rspam02 X-Rspam-User: Authentication-Results: imf17.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2022-7-12 header.b="B/FIABMM"; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=EWttbuQP; spf=none (imf17.hostedemail.com: domain of liam.howlett@oracle.com has no SPF policy when checking 205.220.177.32) smtp.mailfrom=liam.howlett@oracle.com; dmarc=pass (policy=none) header.from=oracle.com; arc=pass ("microsoft.com:s=arcselector9901:i=1") X-HE-Tag: 1658026054-322157 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: <linux-mm.kvack.org> |
Series |
Introducing the Maple Tree
|
expand
|
diff --git a/ipc/shm.c b/ipc/shm.c index b3048ebd5c31..7d86f058fb86 100644 --- a/ipc/shm.c +++ b/ipc/shm.c @@ -1721,7 +1721,7 @@ long ksys_shmdt(char __user *shmaddr) #ifdef CONFIG_MMU loff_t size = 0; struct file *file; - struct vm_area_struct *next; + VMA_ITERATOR(vmi, mm, addr); #endif if (addr & ~PAGE_MASK) @@ -1751,12 +1751,9 @@ long ksys_shmdt(char __user *shmaddr) * match the usual checks anyway. So assume all vma's are * above the starting address given. */ - vma = find_vma(mm, addr); #ifdef CONFIG_MMU - while (vma) { - next = vma->vm_next; - + for_each_vma(vmi, vma) { /* * Check if the starting address would match, i.e. it's * a fragment created by mprotect() and/or munmap(), or it @@ -1774,6 +1771,7 @@ long ksys_shmdt(char __user *shmaddr) file = vma->vm_file; size = i_size_read(file_inode(vma->vm_file)); do_munmap(mm, vma->vm_start, vma->vm_end - vma->vm_start, NULL); + mas_pause(&vmi.mas); /* * We discovered the size of the shm segment, so * break out of here and fall through to the next @@ -1781,10 +1779,9 @@ long ksys_shmdt(char __user *shmaddr) * searching for matching vma's. */ retval = 0; - vma = next; + vma = vma_next(&vmi); break; } - vma = next; } /* @@ -1794,17 +1791,19 @@ long ksys_shmdt(char __user *shmaddr) */ size = PAGE_ALIGN(size); while (vma && (loff_t)(vma->vm_end - addr) <= size) { - next = vma->vm_next; - /* finding a matching vma now does not alter retval */ if ((vma->vm_ops == &shm_vm_ops) && ((vma->vm_start - addr)/PAGE_SIZE == vma->vm_pgoff) && - (vma->vm_file == file)) + (vma->vm_file == file)) { do_munmap(mm, vma->vm_start, vma->vm_end - vma->vm_start, NULL); - vma = next; + mas_pause(&vmi.mas); + } + + vma = vma_next(&vmi); } #else /* CONFIG_MMU */ + vma = vma_lookup(mm, addr); /* under NOMMU conditions, the exact address to be destroyed must be * given */