From patchwork Mon Dec 5 19:23:17 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: 13065013 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 A3BFCC4332F for ; Mon, 5 Dec 2022 19:23:29 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 31DB78E0003; Mon, 5 Dec 2022 14:23:29 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 2CE648E0001; Mon, 5 Dec 2022 14:23:29 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 120FF8E0003; Mon, 5 Dec 2022 14:23:29 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id 03F0F8E0001 for ; Mon, 5 Dec 2022 14:23:29 -0500 (EST) Received: from smtpin07.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id C0BAA80611 for ; Mon, 5 Dec 2022 19:23:28 +0000 (UTC) X-FDA: 80209226496.07.F81529F Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) by imf27.hostedemail.com (Postfix) with ESMTP id 0740340008 for ; Mon, 5 Dec 2022 19:23:27 +0000 (UTC) Authentication-Results: imf27.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2022-7-12 header.b=gDoxECw1; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=tnnXme63; spf=pass (imf27.hostedemail.com: domain of liam.howlett@oracle.com designates 205.220.177.32 as permitted sender) smtp.mailfrom=liam.howlett@oracle.com; arc=pass ("microsoft.com:s=arcselector9901:i=1"); dmarc=pass (policy=none) header.from=oracle.com ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1670268208; 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: references:dkim-signature; bh=8uOeK2jiti/Gvy2EY4ZKC56UhfE3yp/rIMDkHrTIbuQ=; b=lT65s1l7WSQ218jE0uAppPWJ0DVld+gwWGrHny8cWFmbS6z4SAy7wjk0s9WbS3BM+CYnhe W19A4u8v02OC7dP0/6WXDtWXwiva2lc1R/4c61DKurZ2TAl5dP0HdSf5W/bzgLscsL3F5q QKoyzdCGItvtiLtkg+pbnDiPEBPeHRU= ARC-Authentication-Results: i=2; imf27.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2022-7-12 header.b=gDoxECw1; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=tnnXme63; spf=pass (imf27.hostedemail.com: domain of liam.howlett@oracle.com designates 205.220.177.32 as permitted sender) smtp.mailfrom=liam.howlett@oracle.com; arc=pass ("microsoft.com:s=arcselector9901:i=1"); dmarc=pass (policy=none) header.from=oracle.com ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1670268208; a=rsa-sha256; cv=pass; b=xdFWUnb/LcqXCz3izVvUqXl9rBaCXBdCnQoYYhoHMYavSLm5MkJHDDgQndfXy+gCANcLLW ZByBWG+08BjdlwXi1+c0tIJ6CNXJ/GeBWyeOHnoXB6kLDcWTzBhZNx5Y4SUWY0iyP7Z2zb 5Kczp1NMkVL0aH5pWpdosudf1matsaw= Received: from pps.filterd (m0246631.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 2B5JETbw001341; Mon, 5 Dec 2022 19:23:20 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : content-type : content-transfer-encoding : mime-version; s=corp-2022-7-12; bh=8uOeK2jiti/Gvy2EY4ZKC56UhfE3yp/rIMDkHrTIbuQ=; b=gDoxECw1lfZC11CGovSHePThWepf1o7xvRCZW+55frbA94mQnqT1/GTQKCFM80meWBp3 yOf7JTNdO0cQoYaRuv7nAdpicOjWTfzr5mu4c26YY0MmcGVs2paz3cL8kqhMuWR2yy7f WWwwnIvHuqFNgNkRiTqXjT3gvw53LQaJYf/5uORQO/LfcLWiKjPmIcdAjHFQ/KUMDMGa e2PG2nRF/1ZBV1+Z9obuXAE3Z5Fs8R1/mndyLDcOFDmvquC4nO/FFN2MVDrzkJR0RFfD 1yuzTIAEskznAvJ7Boraqt8LkeKRjYQfFq17dz3oJf79sBazBL8mKi64sQRst4U5ymJG Vg== Received: from phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta03.appoci.oracle.com [138.1.37.129]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3m7yeqmuvp-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 05 Dec 2022 19:23:20 +0000 Received: from pps.filterd (phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.5/8.17.1.5) with ESMTP id 2B5HqLSK018770; Mon, 5 Dec 2022 19:23:19 GMT Received: from nam10-dm6-obe.outbound.protection.outlook.com (mail-dm6nam10lp2105.outbound.protection.outlook.com [104.47.58.105]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3m8u9ydg9t-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 05 Dec 2022 19:23:19 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Ij4UlFl7HIk5b6dssWpsWtY3IDxxSycsbmSAVQPl5Q4581mPuAdBtcyQyzpM+4TTaP+btxZX9IK+9ePLc/R/atvFQ8sGLnWoaIHoVSG5Qf3mJeCdtPFgbmX9o+J6bThLGobgVURkodbXAngt1Cld1ju5w1ugJ1mpHL11LvCpwnYqv1frsS57pMnliBAP2Gl3FM3HNFO2Z86raDLLT+EQo9MHCi9glufd725UqVjw5DmdfgO293QJn3/pUeaKWAsaZWsrgcaoTs2D23lRnQUmSXm4HACoKjerV32c/dDP/anLhhi51+KD93peE5uSoCDXJlR/ui8xzBu97Ar2d5AcFg== 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=8uOeK2jiti/Gvy2EY4ZKC56UhfE3yp/rIMDkHrTIbuQ=; b=XbcdMfd93hefjosy8T3fvBpnOCYtwNTBOleIuwlaZb7cU19FHKeL/Rn7MKS07fb/9tyCA8OO9C8t7bbxHxQKV5Jbikt2pG653ZfHy0MPnTk4Wfvbt+/KIgtZI5fKecMwW5Ud3QrvTwOZ0VsVt+1aDRdUkBUjrcqtk9qCEhJod1OwN6MRKB3AprCMdDFabdCZr6loirpR3z1AbLoMvtsHoZCY3Ia/RMkx2rW7tmq/8Ne2q5JNFdr3q1W+t3ZzngAmGCHSm6wMGYKJ87bgD9B2VtmLacOXe4r+hAQU1SdO0zJskiDxXeKagY79AihIEcR7Avi3I6ZnkhmBinjxkarsAA== 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=8uOeK2jiti/Gvy2EY4ZKC56UhfE3yp/rIMDkHrTIbuQ=; b=tnnXme63s96rwZlopMYxfDxKd0mBUaTZ7/0npGJhDhLQFs9kZ3Zyvp29exZhotzyhlFik+os1arbRpc3K6y1fy1xipITjmR5Vbn2zPDjOm3Qg96w6RcmiVIhCb2jMSDzYYSD4EwQoU7gMwMEtwjtbU43t8iUonkJSyVSw36JQFs= Received: from SN6PR10MB3022.namprd10.prod.outlook.com (2603:10b6:805:d8::25) by PH0PR10MB7008.namprd10.prod.outlook.com (2603:10b6:510:287::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5880.13; Mon, 5 Dec 2022 19:23:17 +0000 Received: from SN6PR10MB3022.namprd10.prod.outlook.com ([fe80::a02:2ac8:ee3e:682]) by SN6PR10MB3022.namprd10.prod.outlook.com ([fe80::a02:2ac8:ee3e:682%4]) with mapi id 15.20.5880.013; Mon, 5 Dec 2022 19:23:17 +0000 From: Liam Howlett To: "linux-mm@kvack.org" , "linux-kernel@vger.kernel.org" , Andrew Morton CC: Yu Zhao , Jason Donenfeld , Matthew Wilcox , SeongJae Park , Vlastimil Babka , Liam Howlett , Jann Horn Subject: [PATCH v2] mmap: Fix do_brk_flags() modifying obviously incorrect VMAs Thread-Topic: [PATCH v2] mmap: Fix do_brk_flags() modifying obviously incorrect VMAs Thread-Index: AQHZCN8GtZfVbzYk1k+O68Wup8Rcdg== Date: Mon, 5 Dec 2022 19:23:17 +0000 Message-ID: <20221205192304.1957418-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-traffictypediagnostic: SN6PR10MB3022:EE_|PH0PR10MB7008:EE_ x-ms-office365-filtering-correlation-id: 076c1486-34b2-48d6-d3f2-08dad6f6297b x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: msRFLU1669Dqfm8jSEBJBAk6W737hNcknkLgTCAjjOXCwqzf9ym8u4HVpf4f4NAQjoEqW0fZQmsE2O6YT0j5rbZAAv4HY8RprdupWPSOf3QT08MVB7zuekWPJpSXr/MKJW6ZI7uL159mxdGGh0Zx42fFNgF+4qbtuQOAbCHsL+w7P31Qqh34nyN6zz9SWsOI2uTtBp4i59/Vs1SZidfRSL6AjL9MEFpKMYlubRF4YZUs0mGbI5uRRRruhZKMBUTaLCteNeA+hUTZc8RSZ5MeR69vs7cPsEBKqMIklW+KRdp5xGvBBB5Wi5u9+k48yY7squG8jREBfcExH5F48tOEXAhwO2H4nCTaP8uGZslaX0RidAFP5nWsOGof31cZykIZghBitkacABH4mNGdPhAG6NrFHj7CaZR6MHMf/PzpgMc16jkhQdNyYkTVOcHbAgGmLkRA+xOnEpmteFpV10iyFt0bqUwtdNjBfjHci2182m7sI+77E15LW5N5DHZnrISLCTJLSIR8mfS3941khwqZP5PKILEDQDMXXnxC4gagBK/1nV0EQtRiGKSUsF1j2tE2+P3llcY9yL0+xghNPn81IEGm2DgqYwoI2AfopsBgoJL/3uph1Zakieegn5ojq5hXBO3tLlua76syaVY9KMxm0P5fUja5Zg4Lfl/XyXcgZwqV/YxepHBdydveqOavUQd7qEubDsdJiv5xnjlQIADCog== 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:(13230022)(346002)(136003)(39860400002)(366004)(376002)(396003)(451199015)(26005)(6512007)(6486002)(478600001)(6506007)(316002)(66556008)(66476007)(76116006)(71200400001)(66946007)(91956017)(110136005)(54906003)(4326008)(2616005)(8676002)(66446008)(64756008)(44832011)(5660300002)(8936002)(1076003)(83380400001)(186003)(2906002)(41300700001)(36756003)(38100700002)(122000001)(38070700005)(86362001);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?q?IfVglh5KekJ2s+bxR6lWV8a?= =?iso-8859-1?q?ueUXrNMp2gVETK4udbYaGmANyOkXx44nVeS36H7hwpMHNcj3hczt6QRpzxn4?= =?iso-8859-1?q?+i4t3VjmNY0cAvIMy0nQoyDtoZRJxww3GOFthYXzUcPcWaB18bgTlHsLuHxJ?= =?iso-8859-1?q?/0livJUkCA9cukIh0wv1pTFRzzXuWBYImAdEBdYqWBzp2jErYrz4LhhG3F29?= =?iso-8859-1?q?vsrggjIy0oHH4s4Ad6jT+2hRbbvjNMohuaQWv1gsEX/E5C/cLjABFQeNuaaj?= =?iso-8859-1?q?l9h47K5VWa5YQAaYJJGYsS64tuqQuFs+Eq2sYmoB8WfXtPJFDLAkVeTRBkq0?= =?iso-8859-1?q?cIQ57660AMQjzIpM6b375MhBpl1QCGfd77QO8YjTk0xXbTawT1LqpPTCXNVM?= =?iso-8859-1?q?2ucSP134iD/NWjih7MRzJHFyAzLVb2YxXAvvXA2BmewCukMfkl2StNs77Y73?= =?iso-8859-1?q?Ter4WT5qlR3OhvEROPGE/NfM1pyqy2Xg0cpNpFHFO7+p3VQRwuFwchAx3ao/?= =?iso-8859-1?q?1CYE5ac5PbsFboVEbmcMzK9moDJV6ziSNGh7NiZ2Quh3CNzD2ApXnYWLK/yd?= =?iso-8859-1?q?FDAq4OV6LtLOP9Ks1ve+KzwdSaD2xAvWFLjhM/NFVAWpRpT4dz3/VAezwcEW?= =?iso-8859-1?q?mFdiomrTUiZ3SV8iT7e3EmaWyPN0q3MsM8vkkBuGpQixUv8MvazkpxCiaR7q?= =?iso-8859-1?q?yr2dErCwI7EB81wk2DhGjHuz7LeVFWs/4x7Um8jCtW09c+dMYcWVpEJBH7JK?= =?iso-8859-1?q?ASMNrJxPnqeDbd8iThkXku4OBUQrOg5qMSJM5S5ugvLFdzi2hJnixdqDx3hF?= =?iso-8859-1?q?5/B7x//zx9oW5MuI2Zepd7jpJefimwnMxmIx1SebtKvxcIAC4Cj5TzXGTBnm?= =?iso-8859-1?q?RocBHwxq0Vu6iMwVR890+q/wvBEXDcO/E2JLgUClz/jjcR2hcSHOXadTVEU/?= =?iso-8859-1?q?hEvQnYmMcfpGNsUMOYGCqwICwPXuJNpDXU0HdW+OsBeQ5vDlO6nX9/FY4Vxb?= =?iso-8859-1?q?bp6XwHkLJVE45WVYdXS/hirCqtsrZsNonJG2weoE5qy5PDgfO1I7VvbSO/24?= =?iso-8859-1?q?opc2zgrrFX2nUB2TsXAB+/sikHRCoVx0dutgTAyzML/mba3khsNozkmpafaV?= =?iso-8859-1?q?0UHJ5TcdmZJhTx7nuTUfZyHo/mk5zjrvu1nTYLCnBhzAhrxWhMI1jwJds0O5?= =?iso-8859-1?q?Ieoj3AyPAOEy18iYL6K9Nck3QODYtVYk9oe6zizOUuUC1II/UbTNE6WZ9YZ1?= =?iso-8859-1?q?wV+CAR1f3YBf5qeRgb4J/0DFPsRScaKwoy+oof7VviS6HkPsqWIOpxO/ivH1?= =?iso-8859-1?q?L9AX6vQrcdcNqc+uZ0KMcwjrp7nuxxEWFVVstZBdcRbK0xYjFvdXYIxNr+Mg?= =?iso-8859-1?q?QxcyvrYz5R5yEVDO97ubP00mTjoupzzeXeVndJHD8KAcwIQJDp3rot5vS9LF?= =?iso-8859-1?q?lLibweyiHY/zj5CTIUG3/E2jdAZRE8gbEjjlBbEhoZlNC4lhVFVs6m19EmzB?= =?iso-8859-1?q?YaNHPGRYf6Jt0Q/t1fEl9/0DsJI/5MD5xcWL0tuAcIMMNIxzeA3JpXSCmxx9?= =?iso-8859-1?q?FO67gaaciNdX78nduFN2RMKjxt0JDBTAhHk3FFKiNyEqSc1dZTGYFsZzW5Xq?= =?iso-8859-1?q?dJTl9e5PZflWYBSM+ybYTOeXFHR28j4kgeTtWvQ=3D=3D?= MIME-Version: 1.0 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?iso-8859-1?q?WJbOb9fsrey?= =?iso-8859-1?q?+oSRNlIjwQEhx1yQr3iqiFpo9JemnYnbKAwMZ3naGDrfldN3lZjQ2T8Ox+O4?= =?iso-8859-1?q?ES8VmycM7oGCUxaSHSDRJbPslWT+A15LQZaQReE96T3S7kmfZSYj1k4BshqC?= =?iso-8859-1?q?bIpXJI+Y6SvPtjGhHqDNqWAT7+sDVK/JNmwfrt422+bOi74vLvOT6PoBAW5Z?= =?iso-8859-1?q?CStY25I39F1E2Iqof0+ab9zgDjfnNRiK8aVnUnjnia6KrUXCkRqGCNFJO/ds?= =?iso-8859-1?q?tATm4tS5rf7lwKBneJnvRs8Mw01v1sxfXmAlxCZRx++A8pbCKurLHabAMNUC?= =?iso-8859-1?q?aKY9+MUWPxywMU66hEoZz4TJsgtSbbiq6TjYmquNTfYmE8SmGXoTeeigryCi?= =?iso-8859-1?q?5iO3WR7twmdFlxDOL2WDac3yTHffPJtFPdKRCnFHj5G7w6YUwrckXdLZXCV8?= =?iso-8859-1?q?XETMXxN5Ok5nEPLZStdn64FDU0zDbvVoUNKKE7VEYHZ54/RNlZzKoTr9IE46?= =?iso-8859-1?q?wE7AtVbmAHvQfFSCxmHmIyrAS1Rlw1yDe2Y0hcLm6gFzbrYiK3fU7/MyVDGA?= =?iso-8859-1?q?eI5yQeVmPZH0nVICp0DQEikMh06Zox8yp1Uk0kS+OZjAlCKyxCtJp5NwEEPA?= =?iso-8859-1?q?iKF4dIzJSzL7rFlLFiL+oeuN7QXViOeG1RcFmfDsD5kM/tM63UsolUJUhSu3?= =?iso-8859-1?q?ap2x9awmVDIrDHcXMjLu6zcwPYCBqcGe84e7KDoylE78jlRviqYfq7JSrGsx?= =?iso-8859-1?q?97V2Law7AQlN9k2lcE2XiFc7x85CQAKf3nC8nh1JnbMclWw2VvCVEzAp4+0A?= =?iso-8859-1?q?KtUnEjYzC+D2Td3geUBuUXzzo4nirbQ/a65wZUivLCBQjgYR9BrJtEH+IuLi?= =?iso-8859-1?q?kSPVgdVm/qUknBPHcw2PFWrL3sSHMyg+zkppRXI8st5dUI9bzs7PF8AsGOLQ?= =?iso-8859-1?q?mq5kS6uYIAPNXChqiTtCZtTcyaSwk7WYShOqWj8ukkGETMv1QV8SPO6AmYNT?= =?iso-8859-1?q?r19NSvXvMIq6SShC+lqT6u7XdWK7axdP0oESzqHMSiBTn8vmhzBH8YwPWfFY?= =?iso-8859-1?q?xml3TlupksNCJ9w=3D=3D?= 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: 076c1486-34b2-48d6-d3f2-08dad6f6297b X-MS-Exchange-CrossTenant-originalarrivaltime: 05 Dec 2022 19:23:17.2157 (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: pojOigLkQzj+SoFfym9gCvj6y+UiDb6yLGSSp3WzOtQgRupECtOiq0BhogAZCe94yna4HphujD/qKqo0NXArJg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR10MB7008 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.205,Aquarius:18.0.923,Hydra:6.0.545,FMLib:17.11.122.1 definitions=2022-12-05_01,2022-12-05_01,2022-06-22_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 mlxlogscore=895 mlxscore=0 adultscore=0 phishscore=0 suspectscore=0 malwarescore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2210170000 definitions=main-2212050161 X-Proofpoint-GUID: NyFWCVNkvN34xCMQfgjl3xtGTiSTUTSm X-Proofpoint-ORIG-GUID: NyFWCVNkvN34xCMQfgjl3xtGTiSTUTSm X-Stat-Signature: cq4j93a7t6dju1dbwzhmkqtq41e8shor X-Rspam-User: X-Spamd-Result: default: False [-5.86 / 9.00]; BAYES_HAM(-5.96)[99.91%]; ARC_ALLOW(-1.00)[microsoft.com:s=arcselector9901:i=1]; MID_CONTAINS_FROM(1.00)[]; SUBJECT_HAS_UNDERSCORES(1.00)[]; DMARC_POLICY_ALLOW(-0.50)[oracle.com,none]; R_SPF_ALLOW(-0.20)[+ip4:205.220.177.32]; R_DKIM_ALLOW(-0.20)[oracle.com:s=corp-2022-7-12,oracle.onmicrosoft.com:s=selector2-oracle-onmicrosoft-com]; MIME_GOOD(-0.10)[text/plain]; RCVD_NO_TLS_LAST(0.10)[]; FROM_EQ_ENVFROM(0.00)[]; MIME_TRACE(0.00)[0:+]; RCPT_COUNT_SEVEN(0.00)[10]; DKIM_TRACE(0.00)[oracle.com:+,oracle.onmicrosoft.com:+]; TO_MATCH_ENVRCPT_SOME(0.00)[]; FROM_HAS_DN(0.00)[]; RCVD_COUNT_SEVEN(0.00)[7]; TO_DN_SOME(0.00)[]; ARC_SIGNED(0.00)[hostedemail.com:s=arc-20220608:i=2]; TO_DN_EQ_ADDR_SOME(0.00)[] X-Rspamd-Queue-Id: 0740340008 X-Rspamd-Server: rspam06 X-HE-Tag: 1670268207-55675 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: Add more sanity checks to the VMA that do_brk_flags() will expand. Ensure the VMA matches basic merge requirements within the function before calling can_vma_merge_after(). Drop the duplicate checks from vm_brk_flags() since they will be enforced later. Fixes: 2e7ce7d354f2 ("mm/mmap: change do_brk_flags() to expand existing VMA and add do_brk_munmap()") Suggested-by: Jann Horn Signed-off-by: Liam R. Howlett --- mm/mmap.c | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/mm/mmap.c b/mm/mmap.c index a5eb2f175da0..5d48170fc2b2 100644 --- a/mm/mmap.c +++ b/mm/mmap.c @@ -2946,9 +2946,9 @@ static int do_brk_flags(struct ma_state *mas, struct vm_area_struct *vma, * Expand the existing vma if possible; Note that singular lists do not * occur after forking, so the expand will only happen on new VMAs. */ - if (vma && - (!vma->anon_vma || list_is_singular(&vma->anon_vma_chain)) && - ((vma->vm_flags & ~VM_SOFTDIRTY) == flags)) { + if (vma && vma->vm_end == addr && !vma_policy(vma) && + can_vma_merge_after(vma, flags, NULL, NULL, + addr >> PAGE_SHIFT, NULL_VM_UFFD_CTX, NULL)) { mas_set_range(mas, vma->vm_start, addr + len - 1); if (mas_preallocate(mas, vma, GFP_KERNEL)) return -ENOMEM; @@ -3035,11 +3035,6 @@ int vm_brk_flags(unsigned long addr, unsigned long request, unsigned long flags) goto munmap_failed; vma = mas_prev(&mas, 0); - if (!vma || vma->vm_end != addr || vma_policy(vma) || - !can_vma_merge_after(vma, flags, NULL, NULL, - addr >> PAGE_SHIFT, NULL_VM_UFFD_CTX, NULL)) - vma = NULL; - ret = do_brk_flags(&mas, vma, addr, len, flags); populate = ((mm->def_flags & VM_LOCKED) != 0); mmap_write_unlock(mm);