From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754844AbdCTQWC (ORCPT ); Mon, 20 Mar 2017 12:22:02 -0400 Received: from mail-ve1eur01on0104.outbound.protection.outlook.com ([104.47.1.104]:57362 "EHLO EUR01-VE1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752883AbdCTQUv (ORCPT ); Mon, 20 Mar 2017 12:20:51 -0400 Authentication-Results: google.com; dkim=none (message not signed) header.d=none;google.com; dmarc=none action=none header.from=virtuozzo.com; Subject: Re: [PATCH 4/6] x86/kasan: Prepare clear_pgds() to switch to To: "Kirill A. Shutemov" , Linus Torvalds , Andrew Morton , , Thomas Gleixner , Ingo Molnar , Arnd Bergmann , "H. Peter Anvin" References: <20170317185515.8636-1-kirill.shutemov@linux.intel.com> <20170317185515.8636-5-kirill.shutemov@linux.intel.com> CC: Andi Kleen , Dave Hansen , Andy Lutomirski , Michal Hocko , , , , Dmitry Vyukov From: Andrey Ryabinin Message-ID: <218853b4-3498-dab9-d1e9-02caed4d9322@virtuozzo.com> Date: Mon, 20 Mar 2017 19:21:20 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.7.0 MIME-Version: 1.0 In-Reply-To: <20170317185515.8636-5-kirill.shutemov@linux.intel.com> Content-Type: text/plain; charset="windows-1252" Content-Transfer-Encoding: 7bit X-Originating-IP: [195.214.232.6] X-ClientProxiedBy: AM4PR0701CA0026.eurprd07.prod.outlook.com (10.165.102.36) To VI1PR0801MB2064.eurprd08.prod.outlook.com (10.173.74.149) X-MS-Office365-Filtering-Correlation-Id: 4a0b7f53-49b4-437d-d800-08d46facf66d X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001);SRVR:VI1PR0801MB2064; X-Microsoft-Exchange-Diagnostics: 1;VI1PR0801MB2064;3:LM3ZodH27hCF792B9hVIJxvEOzN9ioOO5zSjypias/prRABHuaJr1YXvjplHcOl32Mch/w/gOX3G1S1LdzklI7QGRWegN0cTFq3VoUr7zpq3KHzzZBo/18KLidPOyxSOOp7SHdk+uIUCfHyhdl4L2bz7mPb2ED/o8Ty1PkMC2B0I6q1M58WNkbQCq1YFh6JXjrlKGA9DYasQs+Pxqn+JtwTJ6JwHbJKtgU1JhOJDrF86ISC+r/YyWdUUd7qsi0EdXPJ4UKxZq1AQceul0EhSig==;25:KtoJoDCCoQNxh36uxOj34NfuMLwEN5H70jqVvXI++bqX3oK3HWKBDfTreCR+y44iy098hUiqx9l1+Vd6Yczr7SIKwrn/G4XKAHON9BRa7WHBsrRc15R109YekWG0hxxWc2EvpXWH8Y4D2/0d1+k490whRU8NVIay8SaFuQ8mHFTy2Phkuq2pHxsIUocShdRbMbeeuR3kXphN08kV39brQBsyK09mirVGxzenWt5eStLpH1+V+SmuajMkVUaDRU14HZ4biDTl+FM89pRlw6i3LyrGXDG0AhKfN8L99IWcpkx807rYRnKgOeMQ/fEX0WOgBNEHUDQ34ecCzrP4eR1SoIMU+PjnZkOl+94gJjrRkVcWSUZwNQlNJuYaln6WMMNf7HtR78d37cL8qJN+R8JH5omwd5tVvt4sJugb1xy0G5REvwGxRuEWjpBTTw7uwVuFje+9GgI0ZXT0e1hJHxgKbg== X-Microsoft-Exchange-Diagnostics: 1;VI1PR0801MB2064;31:ROwsNfYOE4qeEambLU9teWS95TsoRw5Rl3QoAV3IADEzbBmofI/xfdXs7ezSj3c7ZHOBMKpNtUvO+tARSCfvcGpg3kfsVxzn6xq2Xwd1ewZypPA6ZwT68Oyw0eIV9ByvLMBIYcbPUZ13UyF06l2i+j5CcnZnBYuND5AcKoz3bZEr/9+7LD0Vr6IXxI8GnCjQfW8Tf4ngG2TAzQPg6jb8B5QvS0a34DVGO1YikLbpNun0xTJUKp0IKF29SjUAzvohmSrMKulsElYsAFh/x4wShQ1PajjG5m7er65cQZ+7cW0=;20:9W9NkMZlwekcHF866YFKXslfcE42ugesCyBLxZXaCeC/KhR7ExvQR6XmlJMqkcx/yb072lg2zs9rgCArqXJELTtIjM8lopJIbj7lg97PhepuxdphBBJd1T98n8YByfkfvFywpLbV/mfI/MwyBLMrn4hbjgoVWdYEAIZXBJCBemzAFI93fHBxA6q27r3w/R7loeOm5GD6JH7CuQVkoxvQp0bVEXVqynaMswpSVlAzX3U0Q7kdxmM/2uCiMEbK3hbmhbvW1J/2Nuez8uIpNoZEdbotYy1WEqo7V0eSsnS08Kz1xcMyhhz5NMm2lTwsBllGchMSJC4zoGMZko+B1kK9mrpmAkzv0BEZvjYNBwpwPIJ4NHQlbkbG1NdlO1HQ2JYnC/852J69E3hnNPVxY9DBPlmu6sVjri6gZk5BeocAhYA= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(211936372134217)(228905959029699); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040375)(601004)(2401047)(5005006)(8121501046)(3002001)(10201501046)(6041248)(20161123564025)(20161123555025)(20161123562025)(20161123560025)(20161123558025)(6072148);SRVR:VI1PR0801MB2064;BCL:0;PCL:0;RULEID:;SRVR:VI1PR0801MB2064; X-Microsoft-Exchange-Diagnostics: 1;VI1PR0801MB2064;4:Y4r5gXIY/BObazzxP9wV2nUc+kM5M6UTns1Z8T0sqtGDvsY6/4wuHCykrIQYsWD8Yj1Gr1k0Ku7kMBCTXT+l5j10Mcl5HG0LtaJT1JCZPZMvPEihfxXjocwGFWZrqX9Ek+7rvJykHrvWUkzuSi1cL70a5yeMf/vcxHLkpuMI+sUfzw5XFZ/Xib6VUcLxj0O5X4bdGjmR5aWAHxy9tNXTjKZ045ti9JanmV4PP8RT9OXu/bW4enY6pO9Vzij0ZKmF8TZ7jIRF2pm4ag2ucxyo3Jeh0LsvBXySfJS/DbDL1Qy6B4Cx9aJvnHMAkJkxwF2QGJT7onT8v7lFwnZRnN853PhYnVckDLNqM/Gm8pYNjsDGDPW9DXCcglBHPpEBxO7UVWP5LQsuB0IvEM3Ud7Q8uAPqMO2XB2jvahtpqHmztkzJYfJJxxUgj1gJIzVudnzU7NVCIp4ppbKItiy7IZ5G9hOVa7NBdba+bMbj60SAP5+0BY3V1sb+aLjW0ZrE2p0LDw1EWQaakSBm2Q2+BcwOj2F/wCTChzhqi7TfIkLXd7Zel36X2jMPQJ9+U4sp8jZ2V7pvpJa7YhN3Ry2+PEqSv1qyF6/s82RlRCAWkC4QhwBDqEKytJyTeV+ZDHWrET2ZOsYBSZZqDOLbHIiXikY3jPIWswxlycj2f7JySQsSnr4zQnlps6cEWK5svqqPt/w9 X-Forefront-PRVS: 02524402D6 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(4630300001)(6049001)(39450400003)(39410400002)(24454002)(377454003)(38730400002)(4326008)(6246003)(86362001)(53936002)(83506001)(77096006)(36756003)(25786008)(305945005)(47776003)(4001350100001)(5660300001)(6116002)(66066001)(53546008)(31686004)(42186005)(8676002)(230700001)(65806001)(7736002)(65826007)(65956001)(31696002)(23746002)(6666003)(64126003)(6486002)(3846002)(229853002)(7416002)(90366009)(50986999)(2950100002)(189998001)(76176999)(81166006)(2906002)(50466002)(33646002)(54356999)(41533002);DIR:OUT;SFP:1102;SCL:1;SRVR:VI1PR0801MB2064;H:[172.16.25.12];FPR:;SPF:None;MLV:sfv;LANG:en; X-Microsoft-Exchange-Diagnostics: =?Windows-1252?Q?1;VI1PR0801MB2064;23:pUeAzfgH7IJIqmC8I5eNDcyErZYa9KMyrGG?= =?Windows-1252?Q?vfR1ubM7nrNblgWCDWR0eZB7gMYeXOQHUGy83x2ycvkGrWuRU7+C+Or4?= =?Windows-1252?Q?Fyi2J5BtIEkA6UzpaYvk1Yyi1+mYZhfHrrr7LFaXWa5ujb/rLk2XiVgR?= =?Windows-1252?Q?CRglWe14ABy5+Qvwj2Z7Etzo2mbzSJSwPrPaTwvfhaARajA3QOgoJotB?= =?Windows-1252?Q?J+gFrSXOHZ3SSE2FKtzydA/xcQVmQ6hDC9W5pUvhve+NL4ELn+xoBCuJ?= =?Windows-1252?Q?2Mg2bmeQ8djF2GGYwmIfQs8aFTFOifz3QrHFmydP7+DZFdEcPFAkqZUW?= =?Windows-1252?Q?MXccbGw0rWehRBY8xW6ykOVMVrve3HJBN8oUXUeqlVJpR5PObzxsZg35?= =?Windows-1252?Q?BnCQ397PA7H9EQ5bXsPSEdtmJpiTytGLRBBTzwqu5fq2X8H1sgtgiJwP?= =?Windows-1252?Q?Wj2hbGMOZMHzOucb7/2GSR9r+IcPhiti/rmZqyJKndjW0OA/uS4vAbgL?= =?Windows-1252?Q?dy5F88vOztUOCxayL9yumBj7BY5oxTrOEcLDuIZXewDNrJeGOcJvwqbp?= =?Windows-1252?Q?DJMzyudRprppy76cM9FPUm7NmBEn2qUU8voRcdy3XoCwX289HcOrMCYq?= =?Windows-1252?Q?m3lhU929eBCOIVZUxQ+A1BMU9nYRqrhsHKfsDPi4yKcP3k+hHcAilUUR?= =?Windows-1252?Q?fdOvio46Nr+GM+zfdGfjUhZ+pdwgPLD6xudaeHc9XQR5BI5nYa9V/Zke?= =?Windows-1252?Q?ijxp4E3iqEpvrSBcO+xUr8bf/kQ2nww0no4I9NpHF4tbeig09EIiESFb?= =?Windows-1252?Q?+izOI+rE6X48KUkU3juhl49rcSbCzGq8yq9XadvcIadvCocdysOXEf+W?= =?Windows-1252?Q?F3ARJ/hzHkGeEb3QdiYkR1WUxpPKrZBgynCgSPRAODeQ3bTKwzmdZfSJ?= =?Windows-1252?Q?TVLZHb24wnY/SWcOrQ8dlc6yh9zH/no51xZpzZOKznOEKcK4zBHCztu/?= =?Windows-1252?Q?bscfiYak29jWg7YMYeI2Vk9TvH7qnOXhz2K9Lbuo80c3TFukaLZ60hSB?= =?Windows-1252?Q?SSsvHlNAPyxqXbOXqsrajalUV4PiidgtfFvfsjcsrUFXkbnGPEJIuxDr?= =?Windows-1252?Q?+Q5q3s4Mg83bCpDkPspK76Y6yQC6TKDxS7CS9D5QZQvmCWCut9ch5e2V?= =?Windows-1252?Q?QVcS2mAM0kIyPnzp6QLhgm5KPNPNmDWGGP8IOTA+IGaYbR3yOuCyOn4t?= =?Windows-1252?Q?hNShNneapU7EzD9Cnei7gt7OTwmYU09htdRZ5bJ2sP5zDpS+WtjYYci0?= =?Windows-1252?Q?ue4nZ?= X-Microsoft-Exchange-Diagnostics: 1;VI1PR0801MB2064;6:0Y0f94YFJD87UdKyORtYEqTkuLYanu1tgkVSAGkSywJJJJIyvx+D7olA0a01PfkXsDJ4pHcdXCgVUjVhOghYHzb2K7ciqqBGEvjq5Fi1Z1Ehnenvh680QIcQuLt0oJ5WquXP43ht73hkMvzhFnG2q2CZOKHWAW9p0POC4IEJV9McMbkilmMQUSyGHaVCcMMwOzZsUGQuFGj2jWTxH/p4w5JquDds2pWmcho+cdo2UKch3SOqztqiPJ8YXLabNXtBaeoDDbjrIlfah0f1QHmbc0rpmzXjQ+IAf442C9HCnIOMhUGNVOBnqe+o33aK9DstKTsHWEjbhwrBXMOx/VGa1N9qwOeFFaNc374JSw6+nK3Ftw6Mu8GYYBW7f/KeYuWsbxj5D1ZF6VGwsXqV+0C7tA==;5:pCoR/01ccvwh15ykKNCKEeJluXozFBfetsjjNfNnbAUeKsCMwzzils0TH0pqg1GziyHjXkFA3jVbXN1PmOPpJ05rfHMZAEXmUnK+mgNQ0QVYtd7ogDJI2sCXpnPI5vB3stOI9WjBVsXAw5etap71EA==;24:26Fe8haZrbsskR3HKTYpY+2DIw5E3wC5e9UAO8v+0O62b1xh0Xdmi54D2/0tUecSlZsWtKF3S96S3FOIvGt1ie0CtGzpn1YHuH6RA1eyCrM= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;VI1PR0801MB2064;7:buNIMOMdLn4ZnbvIaSPP2nQHoqczid2WJycaF6EDO9jG1H2z8gZk/xo+xyYvZqCiidN6vp9jwImWdvKcSHjWNy0V3gNDDUozP9BU72c7JdYLR+J0dNrcLUhCu1adOwRY3FgicDcbBtAqaFtTgnO/dpqvsZdQ5eKptTiFlXMl0+ZLxbaqKo+/kpQwG1mKjOCxZztmIFf8Kd4Ye5w87Q5IpD0sA7jk/cXVzJcyAnl7c2OkttMuah8QSjXwKpXvjiQZM2zK5Iqb71MUUM2F43TdF/aWGSIwRHP4QBGRP5ZZryEUioy0YtPXj8VN3wf47M9MhD7kaKhlxfA24w2bus8DQg==;20:Xsf1B/b/0hzAmIwGQ/uDPoFW3Q4lvfFPmVX1/e+7SuLCD+FJkcOUNCjn6RKlVbJ7XxIJ7KnAx6EAaXxtuj3fGxU6G+lhEh+z9OY5np/dxEOiQrygscjD0YBX+wMiw2Ob3mP/lPUAfCC+v+ZfSo7pBCs27YXQ8+ng+RJzSl5Kx+A= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Mar 2017 16:20:01.4004 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0801MB2064 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 03/17/2017 09:55 PM, Kirill A. Shutemov wrote: > With folded p4d, pgd_clear() is nop. Change clear_pgds() to use > p4d_clear() instead. > You could probably just use set_pgd(pgd_offset_k(start), __pgd(0)); instead of pgd_clear() as we already do in arm64. It's basically pgd_clear() except it's not a nop wih p4d folded. > Signed-off-by: Kirill A. Shutemov > Cc: Dmitry Vyukov > --- > arch/x86/mm/kasan_init_64.c | 15 +++++++++++++-- > 1 file changed, 13 insertions(+), 2 deletions(-) > > diff --git a/arch/x86/mm/kasan_init_64.c b/arch/x86/mm/kasan_init_64.c > index 0a56059a95c7..b775ffd7989d 100644 > --- a/arch/x86/mm/kasan_init_64.c > +++ b/arch/x86/mm/kasan_init_64.c > @@ -35,8 +35,19 @@ static int __init map_range(struct range *range) > static void __init clear_pgds(unsigned long start, > unsigned long end) > { > - for (; start < end; start += PGDIR_SIZE) > - pgd_clear(pgd_offset_k(start)); > + pgd_t *pgd; > + > + for (; start < end; start += PGDIR_SIZE) { > + pgd = pgd_offset_k(start); > + /* > + * With folded p4d, pgd_clear() is nop, use p4d_clear() > + * instead. > + */ > + if (CONFIG_PGTABLE_LEVELS < 5) > + p4d_clear(p4d_offset(pgd, start)); > + else > + pgd_clear(pgd); > + } > } > > static void __init kasan_map_early_shadow(pgd_t *pgd) >