From mboxrd@z Thu Jan 1 00:00:00 1970 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 7ADDCC61DA4 for ; Thu, 23 Feb 2023 20:36:12 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id E55E56B0073; Thu, 23 Feb 2023 15:36:11 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id E05286B0074; Thu, 23 Feb 2023 15:36:11 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id CCCCC6B0075; Thu, 23 Feb 2023 15:36:11 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id BB6C46B0073 for ; Thu, 23 Feb 2023 15:36:11 -0500 (EST) Received: from smtpin08.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id 3BA8A1A0D41 for ; Thu, 23 Feb 2023 20:36:11 +0000 (UTC) X-FDA: 80499713742.08.A26C564 Received: from mout.web.de (mout.web.de [212.227.17.12]) by imf11.hostedemail.com (Postfix) with ESMTP id 269B54001E for ; Thu, 23 Feb 2023 20:36:07 +0000 (UTC) Authentication-Results: imf11.hostedemail.com; dkim=pass header.d=web.de header.s=s29768273 header.b=U4yy0jdy; dmarc=pass (policy=none) header.from=web.de; spf=pass (imf11.hostedemail.com: domain of spasswolf@web.de designates 212.227.17.12 as permitted sender) smtp.mailfrom=spasswolf@web.de ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1677184568; 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:in-reply-to:references:references:dkim-signature; bh=tgC0VEey+POXg9a0v84EJ9zO5MKxvveQTzkSl1tQ340=; b=WASB6IiiWFkseduK3mKwZdgh7XeDhNRDPWsXN3foGLlZMUjRuptKmF3AUI7SfYnmxeG0Q0 gv/lP+lu7K1oxZ/rTOXAbpRXspTXRTn37gCRM1YyDrsqq8dtOnH9KYlbholNqaTMccyA5G wbDor3GGiCNlx+eLmANJRvHKTy4NLXw= ARC-Authentication-Results: i=1; imf11.hostedemail.com; dkim=pass header.d=web.de header.s=s29768273 header.b=U4yy0jdy; dmarc=pass (policy=none) header.from=web.de; spf=pass (imf11.hostedemail.com: domain of spasswolf@web.de designates 212.227.17.12 as permitted sender) smtp.mailfrom=spasswolf@web.de ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1677184568; a=rsa-sha256; cv=none; b=jn19wL4aD8Si6vxqtMj1a/eUz0e94p754x4MrJQRBK+y4JO3ta2jbPU6Jwt1yjF8eSzvjH MUKsxWD4z0NfGIAF/V+cGQ4u9m7/brA36gWuHusDWsw9WsB+OsKU7zlRS+NKABHMPa5qCj P0+M/vcKC/BOID2t94JRmrtSoesjsUI= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=web.de; s=s29768273; t=1677184564; i=spasswolf@web.de; bh=8/+rhzyk8uPm6HeuQbWTRBzKrxNYOLQ/JgbTVCiF90s=; h=X-UI-Sender-Class:Subject:From:To:Cc:Date:In-Reply-To:References; b=U4yy0jdyqmi4EeC3G3DbRerD/s6WevyZe1+XCGHgxOYvDVv90jD47hzr6FiVpgG0U GgLTLaU5jOQzIjpJQcJn3qyRfyYmFyoTlFUWwpQF0TgkGTCIDO8LhJzPka+hO6KVHC P47OUkU65FInSwKbEsiOaesFQ1zEdeIWO121/5WwKA2MRDJhTwlNlQq15B00sKhEtX ndrWzNwsTD4B3rULNRjFAOCOy1kPjw+cadl9cAXl8uXjrIUc7wObRF985Xen+aE5J8 vlgJZtzJ8JhupQnBR4P9mOsrczV6hpNyLhiYOUTlrE2K/EY1pvspoLmiox449X4bFi FqcjQ9KO0Q+1Q== X-UI-Sender-Class: 814a7b36-bfc1-4dae-8640-3722d8ec6cd6 Received: from [192.168.0.101] ([176.198.191.160]) by smtp.web.de (mrweb106 [213.165.67.124]) with ESMTPSA (Nemesis) id 1MNOV6-1pAsr02vEY-00PIK8; Thu, 23 Feb 2023 21:36:04 +0100 Message-ID: <7d6b7f52cde12390980b906983500576b20b33c0.camel@web.de> Subject: Re: [Bug 217061] commit 2286a6914c776ec34cd97e4573b1466d055cb9de breaks do_mprotect_pkey From: Bert Karwatzki To: Andrew Morton Cc: bugzilla-daemon@kernel.org, Liam Howlett , Nadav Amit , linux-mm@kvack.org Date: Thu, 23 Feb 2023 21:36:03 +0100 In-Reply-To: <20230223120407.729110a6ecd1416ac59d9cb0@linux-foundation.org> References: <20230223120407.729110a6ecd1416ac59d9cb0@linux-foundation.org> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable User-Agent: Evolution 3.46.4-1 MIME-Version: 1.0 X-Provags-ID: V03:K1:l7JT2P4aRL0X3Mlgyb80kPfgVBbWgSbjNGVbRbGcfJUg8jxnw4b jFU+Z8uGAHPk5oZBMpniSwXMli9VVbHwrVaNGlq6FfBFODiut2SiOVRb/kESCRKDOtUrIYF L4rlOzHBNiEcU5rFRO1X0XFJh176ZwpR2UuJhAGfUS22QFxyh06mAUEJL9LBgmspu5yLlEh 4qR5Yzo1I3TivG16mDnRg== UI-OutboundReport: notjunk:1;M01:P0:H3aIHNrtOrQ=;iqGUcmLDgTDYUZqJrrkoQUYXAXU mMiGmqHtOo/jLnHrP50uXRkohHZ4R0se0CFpG3J5iVrlpvekueG05t6EcEAybExzGltmrmsK8 9X4AQHYS7QD2CW+jwmKL8A3QKBoi8Q9yzgzKBI65tn4sT8VerufOEVmNAdMvHhUK/tL1BIre5 04hdaNUZ9XImv1YSJ5MsFdI1N85Ow1qmIhUnmVWqUbSmlEewQq08odMTZDHWds+M82Rqsmjqg SLWk5JsbsXjpwRD5NA/vXVMQAlON757i3+jpk6Cten2aQMlvnKVB/154JLbc2grUyRDBLZcQz RQwn3heRUWTtr2Nk47YfTsTI8eCe1pnvSTW5snTe14CnmwAl4OtDLAMpmVSGrHWOVvbGKC78e LFD/+2fN2uYAUdb9AfPXUXOSHwdsYCGaA5lHQVSPdg4nIwZ+tveDd5m9VLfFfoV8sqQoCtboG LJD3zZUvMlvJ2f/baKu4KOHhGYqzWFUZqrlI7PyRb/bBGias1e2bgnI4+Or8BoR/5ft7C9qG8 Qm5gQCNKxT4RV766ra6sIoX6q2iSpwtAoQLiZz1YB7GdzZ60EdzIit0kVwN8FhwWNHirePMVm w09eKnEIQPWlhPj8H1SI/NedCNpw84AEa6Q1NrCq4rx2a6Ow5h4nz+HBOfsqtroGccZ0rtIjL ItujZvJrP+bzi2g45jlxWL6HG2OfjEWNZHn7wTit/MfTmdTm1M461ws/7+K6YLok9fRQeuiUS aWUehJpXofC+LR06bEABLN3bwMrMlsJ/3lX21rLNDKzoS8HEy2KFLi1q2izujq2zdYZ3CEcqU iToopimeCSqGe6Isv88aTXdV9X9XPhLDj7Ed7z2O4kvzLryFbvYoxYCquFLnkCykVyagGxT7J y+bNXiUQPbIMZwj7d8aRgB0xtAyOV27l6G6ui9GKzJh09lD//X//4MH2zCWZPVRa/aAz7Haie 8C5zV5Ywjk8m6/pVM+W/Cv9V3Cs= X-Rspam-User: X-Rspamd-Server: rspam02 X-Rspamd-Queue-Id: 269B54001E X-Stat-Signature: gdrccss84dphwzmxrdyincj8kpnsdhkk X-HE-Tag: 1677184567-701912 X-HE-Meta: U2FsdGVkX1+d40FeW5tIzFcDVt5++l+mtu/56pVhL6x84T6m8VKmRvivRXycKIOwlG1Y0l9fZtbi/8p/kgrcf1ONw6q4KTswTYREGL0PyJ3qgLMP884GEKkMyGv5FGOoRbJUC4ge4VSvLPAMejDNXrGo2nJ9APfA4zRul8SeL/0XCMzYPw58rud0IDNDVMDyoroKbFbufAjd4H4s2uLfCDI53TYXsmNQUTYQ8/HXFnljZ+fWuPjUlOTyWKcbwK56/saRBR9fRkedK2ygDoByMy2AlZ4/M90RPGufumhxSzMsL8B6eID2apxlpujPrWtmgqJe7kQf05y3pnDEy2q3ViL9cADXlnm8wxIdpA7r76nTXRSrW7x9YRJxEMWuuhnNApoII5tEU1yd+aUyxPhdBynBfOpbfnkp2b0SxrkFEzP7ukavgPO0PxdTrLnMdFRXnrhZcvI49oVM/cloCS789dfmla8NwJGr9hnGF9d6QZiHOLQrhgDKKQSaJmCJg7TJ5iwrC0TkNTUQ1g8axvi98ccjzb0+AlK/1dmTmTN0OWELSXipD1eFIBX/q1QOOngVcO2CV+ImLxbZfUk5FfXulJQJkHAp43SICbU/sh1EF27fag5bU3VZlVKf2ugD/BXkZzmDmhivp+EuxR5azhYj7rNW6UIW0CP5V+vXYUgQOdXrcS4xDmkhO8+2UuzbRdWRdzrpP7NEb6izGRuax487LlIFACjsrEw5oFWDjR81hgUrYU8T+MgWIrZvXDdVkdjrP/7RIvYAXntKPhi40Y1015QC/dCRwj8dXsgPm2R00Pkpw+k9v4yyvlq0cPKTk01/m7R8Dmxwrsb12cWkAqXk9mTGoCf9uhnt5l9JTWrhXTGe6eunOVOocb9zc+LTv9JoCUCmJHbf5gj5V+vca2tVGnA0yASP5O6nUaiPywSipPBdV6hVa40TKIsWfkq+Rh1c4TmbC5H5Up+EpagiYsR rgGqSjd4 tvWYU16gOZIu+KeLmDXSZJJWOlxjHJ4els7ppPBroCmThH7j1yctTrL0VObojQ62kpA09Y2tjYTlJ5McLnBWYyaqKM2OXM5g3o6spH3+mWHpzLCQ81+BW0euUvTujwPQg5MVp3YcMlkFmjD6KET3qz8SXsMKpm7IcApqbbnlPbZ2OOBz5ZXBYufXlQwp3s0jFNcbpJr8QJwGFiDzE3Ux3FqcD9IC157XkOZdzRDRUVRKSOxDayB6qy7LxZHpHai/huzvvi575prcr5aHEOdIsyVC0v421nA/0O+mZ3Rp9hl4RJlredBdS5rmF+jRyWNGKAMx1G2AAZSK8rsZ/hA13IkB1eOaUNxa7FLRlKFqZL4v+P00= 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: Am Donnerstag, dem 23.02.2023 um 12:04 -0800 schrieb Andrew Morton: > (switched to email.=C2=A0 Please respond via emailed reply-to-all, not vi= a > the > bugzilla web interface). >=20 > On Wed, 22 Feb 2023 18:27:37 +0000 bugzilla-daemon@kernel.org=C2=A0wrote: >=20 > > https://bugzilla.kernel.org/show_bug.cgi?id=3D217061 > >=20 > > --- Comment #5 from spasswolf@web.de=C2=A0--- > > This fixes the problem for me in next-20230220 > >=20 > > diff --git a/mm/mprotect.c b/mm/mprotect.c > > index 1d4843c97c2a..f70f9a7b545e 100644 > > --- a/mm/mprotect.c > > +++ b/mm/mprotect.c > > @@ -832,6 +832,7 @@ static int do_mprotect_pkey(unsigned long > > start, size_t > > len, > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 if (error) > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 break= ; > >=20 > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 tmp =3D prev->vm_end; > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 nstart =3D tmp; > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 prot =3D reqprot; > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 } > >=20 > > Next I'll try to construct a simpler testcase without steam and > > stellaris. >=20 > Thanks for figuring this out. >=20 > Liam, this has been bisected to 2286a6914c776e ("mm: change > mprotect_fixup to vma iterator").=C2=A0 Please take a look? >=20 While a still don't have a simple example for this bug I can at least explain what it takes to trigger it: The memory area for which mprotect is called must have (at least) 3 vm_area_struct of which the first to must be mergeable. Then the following happens in the for_each_vma_range loop inside do_mprotect_pkey: At the beggining of the loop vma points to the first vm_area_struct. Then mprotect_fixup is called and merges our first two vm_area_structs but tmp still points to the beginning of the second vm_area_struct. At the beginning of the next iteration vma already points to the third vm_area_struct and so the check vma->vm_start !=3D tmp gives a false error. Setting tmp=3Dprev->vm_end after mprotect fixup sets tmp to the beginning of the next unprocessed vma and fixes this error. =20