Message ID | 20220621204632.3370049-70-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 0C10BC43334 for <linux-mm@archiver.kernel.org>; Tue, 21 Jun 2022 20:48:44 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 991BA8E004C; Tue, 21 Jun 2022 16:48:43 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 9415D8E004B; Tue, 21 Jun 2022 16:48:43 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 794B58E004C; Tue, 21 Jun 2022 16:48:43 -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 671888E004B for <linux-mm@kvack.org>; Tue, 21 Jun 2022 16:48:43 -0400 (EDT) Received: from smtpin22.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id 4CBE43430F for <linux-mm@kvack.org>; Tue, 21 Jun 2022 20:48:43 +0000 (UTC) X-FDA: 79603431726.22.F1D6F0B Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) by imf22.hostedemail.com (Postfix) with ESMTP id BF1E6C00C1 for <linux-mm@kvack.org>; Tue, 21 Jun 2022 20:48:42 +0000 (UTC) Received: from pps.filterd (m0246627.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.5/8.17.1.5) with ESMTP id 25LJ5FQi011595; Tue, 21 Jun 2022 20:48:37 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=Il+pVmNKez8lWDtkwAh6CDxw+TDqNOMFQEkkISsfdLU=; b=cm2+XR3ij4lIf6g4OU3Cy5WFV/0uPXL+ZPQrTA1u8uqqYyE48r0CYp109tncYeXI4726 N7NzsxFHWZ4r0sVdrE5pBumILPKlviu+lRKwtPJJXioDc2xT9W0R8hYV0juQi9LzjZKc k9dGfXkv35ADyfpqvzVhag6Us0FHXrTbNFOsrKNKyoMj5CJSU7Q6SGQ/6hfUhjJW6Cdv eEX+Ex9W/1IHW1nr9eI4/VGdIuxCjyY1EccuMEVnspbH3RDv40lrklStPshU+Wrf3U/c tjeW57sJAwmmzx/8hR5cnqvykmkjpubKE70I5paSuFNa+aik+VDSlkA+7qrXVrrgSlKf ug== Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.appoci.oracle.com [147.154.18.20]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3gs5a0eqbq-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 21 Jun 2022 20:48:37 +0000 Received: from pps.filterd (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (8.16.1.2/8.16.1.2) with SMTP id 25LKdwkW010169; Tue, 21 Jun 2022 20:48:35 GMT Received: from nam12-mw2-obe.outbound.protection.outlook.com (mail-mw2nam12lp2046.outbound.protection.outlook.com [104.47.66.46]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com with ESMTP id 3gtkfuvv7n-9 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 21 Jun 2022 20:48:35 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=I59O6bb0ZHGcrOr+cxiaGqxWSkbAzupTKRJHRQXU2ewCa9yu2e6qAuVY6Z7a19y3O9Gyv/eRBxW3yLFQefGdxQYc0UCe+ualJUqfVcRkDYqxIKERzqxQMuZIVhlq/ZrSEVnH+qCH6K3nQonxCzEewka/41hyNpKLDZjETFrP+R0sC9VmfUDqsKKXPgfa4urnlJnHiXf2z4aJvjsOqiKvHXtgYPUgNN32UlADALa87biVpv/qn2wyDntijH4/u6WZJffqWyJ3rBSamX2R/2TSb2rSukUzRzxe/fw6HgFFtRkKOXb8zH1K4aLFQ9grVkIZ7WjdaObeDkm1VmCcP7aEgQ== 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=Il+pVmNKez8lWDtkwAh6CDxw+TDqNOMFQEkkISsfdLU=; b=BStXhysDpOdwxTGiS9h/zFEZn4jjw5ElzCmNea8eLiM6X910UNxCMw3teGj9mo5BN8wylJsscqvOjxug6dgoFTRDheNtzeHuB4dEpgNzQyYKfeiRt9Y7rg6S11LZYlj/Dd3leL59luB0rMEbiFpySRiWd2gzyRNlFGcC7LNMBjlD+Mh8AJUlq/PTsrfJD6BVBQMneFotvwxmyRzf+rroOZyZ3ZluLx9gJWhxBdCxKiAfjPO+A9e1cTi6EejEhMPA9ogs7zh9RDjFFLIAAshcW0UPKQQVCJjbGluJsG2iL/2xkK3hhY7CibHyFPl2/bfU+/wI+Id/2ffQwgFqyJXO1w== 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=Il+pVmNKez8lWDtkwAh6CDxw+TDqNOMFQEkkISsfdLU=; b=z1Fx6c6O8+sjbZjDKLq4S+4OQvNZpVFukh0YTYOqXqp4MQu5ILp5w/QBAuA1YFuWMlYe9RowchREvXNMHjzfa31H/8QiowCVwMpbI2OXGBe75D2NJ+Nl4XA7CDmGIR46C/JjAvCOXPqwU8EhCHlQobCc9lON2mVRpJRvSu/nQqE= Received: from SN6PR10MB3022.namprd10.prod.outlook.com (2603:10b6:805:d8::25) by MN2PR10MB3869.namprd10.prod.outlook.com (2603:10b6:208:1ba::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5353.16; Tue, 21 Jun 2022 20:48:31 +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:48:31 +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>, "damon @ lists . linux . dev" <damon@lists.linux.dev>, SeongJae Park <sj@kernel.org>, David Hildenbrand <david@redhat.com> Subject: [PATCH v10 69/69] mm/mmap.c: pass in mapping to __vma_link_file() Thread-Topic: [PATCH v10 69/69] mm/mmap.c: pass in mapping to __vma_link_file() Thread-Index: AQHYhbAWxUY48YqHBEmt7gHRZkrXig== Date: Tue, 21 Jun 2022 20:47:14 +0000 Message-ID: <20220621204632.3370049-70-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: 3da969c2-3394-45c8-3e3d-08da53c766ff x-ms-traffictypediagnostic: MN2PR10MB3869:EE_ x-microsoft-antispam-prvs: <MN2PR10MB3869C5B058B100FBB0505BC8FDB39@MN2PR10MB3869.namprd10.prod.outlook.com> x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: lGhD1+9JH54K2GpI9CaoPYlTNoCPtmHvKXt/NrBgxmjhNC7Z04vbVR5Y96d4bMpDadtNP4FRh5EiyGlPbOZBKKvKx37GbXzwAgT+IgtOBQkBFs4TfMAuoOLhRZh8P23Ntvu6sc0+EvPOdWv8t+gmo3Ug717cD12xk7pJuAVaMNeai3G76uyDqiKEMolO8/UrqOwir7xDFiI7PPHZZzy5pO4gNo6xFvRumle88Qd4CXXLLrapUYfDKh1TgegY2ngtuIJ9ZmBjmIAzLyjnKHpqzM6Dk2ZslqIrCk0IzavJyeJH0J8EWTiQFqyW3ZG9JebCufpmYwkzetFH8gGhRXSC/ZiZK2hak9KnCbOp4wZN5U3bsD1h7gOEFe23GmThtV1RZ4fBje1w1IR9+VuncrN+49F416Mqe2GPAamWcMTl44F83BrXjcpV4h2Kl0zUTfRlVotexJqHWkfZeszMQgtOxKiuS/ASiaxmnTuvBzbIt4NH6alVpYMPOEy3vLT6aowwj+xZFQvOV46WN2ePhKOt7qjcDSbWsAc2nC3LYcIFy4TU8hOU8qwSQX5YdOifUWgc4CFAj7I0hdq7oQ/DrtDndoFtLOGBzp8hkg/evZ4E1V7k3WWsjSdy327GyFjFVVf/qz+TbOtFk6RzwhwnjZYwLmfsmyxcmxHRMPVPD2CwN4WM+T55hx+5YO7ONnvA/ABKizFaIFb1Tt2g+24+Jg3Rwk4rs30xbe5WGSZZYTZcy2BR9J10XEA972G+uokbITffcnGdL01REs3TdG/ew6dYsdUfUy2WyOmzuRk/rH6Y0aQ= 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)(346002)(376002)(136003)(39860400002)(366004)(396003)(26005)(6666004)(2616005)(966005)(91956017)(6512007)(6506007)(186003)(41300700001)(1076003)(122000001)(83380400001)(38100700002)(44832011)(86362001)(8676002)(66556008)(66476007)(38070700005)(5660300002)(316002)(2906002)(110136005)(66946007)(71200400001)(66446008)(6486002)(36756003)(478600001)(8936002)(64756008)(76116006);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?q?+YhwNuGbR4WtZWCUlWcJkMr?= =?iso-8859-1?q?2ZQvO0Yi086gd5MBYbyZLmI7m01tObQ0ptKRCwTu2Ugrv98hSgcb6+7qs2J6?= =?iso-8859-1?q?q10YVl3+mfK/damEzdNfkDKjLUbC6IjAzLx5L37pJ/Mj5cLaA+JsE9Sc1Eab?= =?iso-8859-1?q?hASNPCJVfPTX4EyI65p7o//bFlZsLncshIGfSAJTcKHGbGHtLQ7/dQnJ6fm0?= =?iso-8859-1?q?v2eKg0HY+inloIBoBML5pKyb9LTf55SKL8LHlzvP+rwxmLjP8EsZP+fDtS1V?= =?iso-8859-1?q?XXxiLgJgeHpOxPmsdosQMopDQesxDQanzmrrFZkPv9nCbAIMFO1QusIup3mH?= =?iso-8859-1?q?0bq3ic3yUsDxpOKas2lWJwUa8G5QLLgFNgQvc2TMWpRqIYh5mgG0RSKA4W/j?= =?iso-8859-1?q?uPK9Z22npMck4hZboBo6zerChrWqP3zYbmyAqiBBBMc1pGeFj3uJIdD0zkuY?= =?iso-8859-1?q?u7YMh/Rs38UgsihqolQEnkSnbdoQOVEY7TiIU3mvCpooxEW5KqpNKWK1ZE/3?= =?iso-8859-1?q?fN+HAVzi5gdZpZLT5atR8X8IPsKJ0np2E2MjMqcHSg9uZnfCsFocBDlOEWPs?= =?iso-8859-1?q?MEXKiCAXbHxUykGLNZkIepqjlrvsCtydLTMIAIK785kWfzuKAARFmI/AZ330?= =?iso-8859-1?q?tohAkCiGgzl7uv63+GidnpMOI/+nPx5WsGzgRwXRczadcTADxPazF29MB9ly?= =?iso-8859-1?q?Hcvbjbizdta5vRzwaUpkAcYMEi/PRpkuVulXSExx1jCud+retmB+z+iJMpTr?= =?iso-8859-1?q?qg4FL9QKPxFN1awXNZxyZKLV5GhyAyFsqGIz/+R5rKZgqn4llUIqSxcM3AQ3?= =?iso-8859-1?q?gkqcXbIX2nTNafNdNR0Xrh1TT8IZ1C+SFx2/Lu1k+dTxid/69AeVJ5+SfDXb?= =?iso-8859-1?q?4tm4UUG3HPansJVKagUxPruV2OMxRPQ4JSZ85l+wikbqY0kU6NmG6SaW05OA?= =?iso-8859-1?q?mYnu4fnpmoksL6QrSuv+31wO6Ibky1+0Nxynz0QbgyeCHgRK+HaWVOrif3/H?= =?iso-8859-1?q?TU4+TnLjgt+TmYw9Qw+APbfaRoeKldovvCEzlRbgDkbfJV2c1pyhdh3MTtre?= =?iso-8859-1?q?EE1LETV1iLTeQlRKV8O9x1QJgXpXtSsF8jERQT7iiK1S/kIJ1UjQMpD/1G2m?= =?iso-8859-1?q?3PCHxl3cmNsvcWfFKBKiTcB1/bu0+RYF1TaF1Po56wRMrrOmhECD2yBKOihN?= =?iso-8859-1?q?BaHwtTHZbuw4LQMrPQTYez+hbcl5NHwLdrvwdfuG4XKZAPagQh4Ch2T/1efp?= =?iso-8859-1?q?FStWr2ewXFIEU8Bh0zzh2/O/SXssFNcHRW+QCbpSTO99F+GBYZXtpoNIio9S?= =?iso-8859-1?q?W8bgc8MKZmnKckouCcmFBaVbFiQA+P7FWzFkylDLr392YxVs/dmKEyqD+qFS?= =?iso-8859-1?q?MCAgiL1H+4khGv+hBdVhmoNF7LdoLsJvtHg25rfrp6v1A2uH6WHz2l41feMM?= =?iso-8859-1?q?ehpxCI6Pw+p5UUUKsFIaK7uWcAurTrGTmJCpuKcMsUvgO4cCAYCMCZxgexu/?= =?iso-8859-1?q?SvWc93p83gK59vfEPXn58Detnpktqp/Gw7+sH7BJf4hJqv4MYfjeMhvryYrz?= =?iso-8859-1?q?rM5IMu+bkwMtIaFdlRypozqQrychDVuea0+uf7Xt0X6IT2sv62bFNd4sb6+L?= =?iso-8859-1?q?oFl2l/j1a2gLT9TrYM1CaeIhRxD8qHcRbCHwwpqlPciBNEQa4QZOXLEMYnul?= =?iso-8859-1?q?LVmt/ocf7c+NBXjmljuOZ8L3gMJAFxMx+GS8G+mtDn1ACnhscva6e6M04yn6?= =?iso-8859-1?q?Yjve9E00wA0NN4Q6YiuTlVZbl6ruGwDYMYRPhPD0JuSyqJa8xz2rYDH5XFRf?= =?iso-8859-1?q?Rv1+YL5w=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: 3da969c2-3394-45c8-3e3d-08da53c766ff X-MS-Exchange-CrossTenant-originalarrivaltime: 21 Jun 2022 20:47:14.9092 (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: 3rqbD6EkPup7Cz9vRjwoq1wH/MlDrn6dmevYwe9NZf5fYsw1GBrx4lVx5yYkxiD8VZlV9SGsii5YwiZWm3jWQQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR10MB3869 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 mlxlogscore=999 suspectscore=0 adultscore=0 phishscore=0 bulkscore=0 mlxscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2204290000 definitions=main-2206210087 X-Proofpoint-ORIG-GUID: D7nSM0wePXlD3pmGiJ8Cc0Ae3dnRYsGK X-Proofpoint-GUID: D7nSM0wePXlD3pmGiJ8Cc0Ae3dnRYsGK ARC-Authentication-Results: i=2; imf22.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2021-07-09 header.b=cm2+XR3i; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=z1Fx6c6O; arc=pass ("microsoft.com:s=arcselector9901:i=1"); dmarc=pass (policy=none) header.from=oracle.com; spf=none (imf22.hostedemail.com: domain of liam.howlett@oracle.com has no SPF policy when checking 205.220.165.32) smtp.mailfrom=liam.howlett@oracle.com ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1655844522; 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=Il+pVmNKez8lWDtkwAh6CDxw+TDqNOMFQEkkISsfdLU=; b=7bbbXtROBeMVb5J4FRAOrrJXgjxKbGog9edJgTfZbmvDPridvxjEHe9lGKFbQxSUHfcO6J RKb3YdYCUx7ql3FC666jOqMmX7xJE3Ofkd7Y8NUWZSKFh1ptoNNK6ovblvqqNrGOXhhGlw yGJPDLHkCSeW/CGGp9k6jQnlhksbloM= ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1655844522; a=rsa-sha256; cv=pass; b=qXYufqNEU2YC5XOXaO/k9V4YNujg7v5Flm6N8Iv6mCxs7c+0KXc7MvMfBiekDEsykpDkrv 3c09urlfC6+yOvFvygnYUdSp9axgMmGv23sk4gNX7m0DyUWbzqguUUcApBd2QVAqGlRlAF 1vgQJFapUdCnkhGWfgDnIWBxTA4XeD0= X-Rspamd-Queue-Id: BF1E6C00C1 Authentication-Results: imf22.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2021-07-09 header.b=cm2+XR3i; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=z1Fx6c6O; arc=pass ("microsoft.com:s=arcselector9901:i=1"); dmarc=pass (policy=none) header.from=oracle.com; spf=none (imf22.hostedemail.com: domain of liam.howlett@oracle.com has no SPF policy when checking 205.220.165.32) smtp.mailfrom=liam.howlett@oracle.com X-Rspam-User: X-Rspamd-Server: rspam05 X-Stat-Signature: ztmb4uqjzuuhhox6cy5f8gjm3ore4z33 X-HE-Tag: 1655844522-32054 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/mm/mmap.c b/mm/mmap.c index 2a73467670e7..52192408e6a5 100644 --- a/mm/mmap.c +++ b/mm/mmap.c @@ -246,6 +246,7 @@ SYSCALL_DEFINE1(brk, unsigned long, brk) if (brk < min_brk) goto out; + /* * Check against rlimit here. If this check is done later after the test * of oldbrk with newbrk then it can escape the test and let the data @@ -322,7 +323,6 @@ SYSCALL_DEFINE1(brk, unsigned long, brk) if (populate) mm_populate(oldbrk, newbrk - oldbrk); return brk; - out: mmap_write_unlock(mm); return origbrk; @@ -454,21 +454,15 @@ static unsigned long count_vma_pages_range(struct mm_struct *mm, return nr_pages; } -static void __vma_link_file(struct vm_area_struct *vma) +static void __vma_link_file(struct vm_area_struct *vma, + struct address_space *mapping) { - struct file *file; - - file = vma->vm_file; - if (file) { - struct address_space *mapping = file->f_mapping; - - if (vma->vm_flags & VM_SHARED) - mapping_allow_writable(mapping); + if (vma->vm_flags & VM_SHARED) + mapping_allow_writable(mapping); - flush_dcache_mmap_lock(mapping); - vma_interval_tree_insert(vma, &mapping->i_mmap); - flush_dcache_mmap_unlock(mapping); - } + flush_dcache_mmap_lock(mapping); + vma_interval_tree_insert(vma, &mapping->i_mmap); + flush_dcache_mmap_unlock(mapping); } /* @@ -535,10 +529,11 @@ static int vma_link(struct mm_struct *mm, struct vm_area_struct *vma) } vma_mas_store(vma, &mas); - __vma_link_file(vma); - if (mapping) + if (mapping) { + __vma_link_file(vma, mapping); i_mmap_unlock_write(mapping); + } mm->map_count++; validate_mm(mm); @@ -782,14 +777,14 @@ int __vma_adjust(struct vm_area_struct *vma, unsigned long start, uprobe_munmap(next, next->vm_start, next->vm_end); i_mmap_lock_write(mapping); - if (insert) { + if (insert && insert->vm_file) { /* * Put into interval tree now, so instantiated pages * are visible to arm/parisc __flush_dcache_page * throughout; but we cannot insert into address * space until vma start or end is updated. */ - __vma_link_file(insert); + __vma_link_file(insert, insert->vm_file->f_mapping); } } @@ -3054,7 +3049,6 @@ static int do_brk_flags(struct ma_state *mas, struct vm_area_struct *vma, struct mm_struct *mm = current->mm; validate_mm_mt(mm); - /* * Check against address space limits by the changed size * Note: This happens *after* clearing old mappings in some code paths. @@ -3112,6 +3106,7 @@ static int do_brk_flags(struct ma_state *mas, struct vm_area_struct *vma, goto mas_store_fail; mm->map_count++; + out: perf_event_mmap(vma); mm->total_vm += len >> PAGE_SHIFT;