From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754300AbcHZVvu (ORCPT ); Fri, 26 Aug 2016 17:51:50 -0400 Received: from mail-he1eur01on0137.outbound.protection.outlook.com ([104.47.0.137]:4832 "EHLO EUR01-HE1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752031AbcHZVvt (ORCPT ); Fri, 26 Aug 2016 17:51:49 -0400 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=dsafonov@virtuozzo.com; From: Dmitry Safonov To: CC: <0x7f454c46@gmail.com>, , , , , , , , , , Dmitry Safonov Subject: [PATCHv3 1/6] x86/vdso: unmap vdso blob on vvar mapping failure Date: Fri, 26 Aug 2016 20:13:12 +0300 Message-ID: <20160826171317.3944-2-dsafonov@virtuozzo.com> X-Mailer: git-send-email 2.9.0 In-Reply-To: <20160826171317.3944-1-dsafonov@virtuozzo.com> References: <20160826171317.3944-1-dsafonov@virtuozzo.com> MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [195.214.232.10] X-ClientProxiedBy: VI1PR07CA0045.eurprd07.prod.outlook.com (10.164.94.141) To VI1PR0801MB1741.eurprd08.prod.outlook.com (10.168.67.19) X-MS-Office365-Filtering-Correlation-Id: a0e38c53-e503-4c7d-2744-08d3cdd4a130 X-Microsoft-Exchange-Diagnostics: 1;VI1PR0801MB1741;2:DlCb76Aw48V7sDmNYL2uJM6QWoHd5WRPHyW9EPVojb1erBrTnpRj1JCZejhwG6tgkQPc3l1oVlGN/XVx79SWgRPJBs/1L5vMc6nxA3TJQ7xTqSAG/A2kPkA9azcJaEgk3xvDprDDrYT5gfWgOnZUxVMUq+JIMoRTpaY5b7wP1A+8Ikjw5Z9o0unkiyIfZDY4;3:dgPT8oWSzI94h3ErUxTOzVsxxp7Yw7vMJL+ST+zVJ0YzGIzx93zdbBY3CO9BkcZWu50yA7k1KgQlFPeeE43HqWJE764sPbJEHW0ByRR3Nxtf+E1fRiM6VI76O3H8qFWa X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:VI1PR0801MB1741; X-Microsoft-Exchange-Diagnostics: 1;VI1PR0801MB1741;25:kBA/lxP+uRv3b0HXMHeKBwDArQvI9iFUwjjFpCIyDsd9OO0zifleeer8uBUEW7v7xCkCZCbp8zudsO0cJz8biFTNy2zMRK+Ms5IYT4opO/3fFI9FqNyO9P8Na9lvZ+3ur8B/v/ZtFBzgqJcuHriuOn4LEP+gyDWBbUfgHsBk/voH4IUTzpbuxoy/fMUOKlbFLVTPlxfbcA+w0FM1LWwYeGSK8p4ZJ6YnhMub1gQnAI46Nh84E9O1/8IwAJNbxQGSimKqr5uw47hqEZb1+lqS2+53X+UuvUfaA1CjqpsbzCnAd1pxJIn5MPWxTk3UPr748uRtW++DY+i+yCPsNRhanlu0yxUYdUiwbsp1DqkOAgGJyRAOBfk5i+LqyCmef8I9FkL6SLzzDcb4/5vAlaGzC3BY2ZjmP8QOJSBUZ9c3m+FFLcNqajY1t4gX0yiecCTAyol54gAWAn2WWEB+v1n3tgjpbOiIsWOramVPHJOX6Xl74in3ek3R9GBCRNPqNF4zTk5pd7oKmjG9KRDzlIxIh1AYaSfB8WCS9pfQh1ds1cV5Iq23qbA3cvsOMhDZzG2Jns1lK7An8I4zbtxpef92ynBgxsJpt17Z8zThVHrIRm/RcK66GENBsqRuJTuKKC6TazS2fdsOhwGeweCe/HsI+v1YR0zOR7T3j4v8pDTp4FysZqDAhiM5/ktJVbR9aqE0;31:hpN5KkUdchbrwwUYKYX3otjVC4t8NwekeeRNytvFv5zbNxCzGcAn/o8Fb/9ZncW9WmTGV1jZE9Wwe3m6lco5B49wbn9UartHaSAi4mUE2NTtJLyCSWbXtyN+/T+nVpvAz7BS7Q1J4i9UOhJ9VRifkP+TK0pPuGUb9ZAncDlE7WL43B+h7dHttaVLF/VHOwYSiSiZN1ROUu2HaYhMPgHxSIZYYUx/SLE0XVVuPsVaKgA= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040176)(601004)(2401047)(5005006)(8121501046)(3002001)(10201501046)(6043046)(6042046);SRVR:VI1PR0801MB1741;BCL:0;PCL:0;RULEID:;SRVR:VI1PR0801MB1741; X-Microsoft-Exchange-Diagnostics: 1;VI1PR0801MB1741;4:g77SkwEVEXtcvZWZRTyF8j0a4q/Zi70FP4fYWygErwWEtYfz9SnAfzx+jNdwBY/VhdGMKUmkr2BznZhczd8ve8Tz1ZgEXmLHTd4GGKQx7RweeO1jAxNGhihEq4Hws9U4KkPN2jbjhjfwXOV38Leo1Zgq+RGOvCGlpHI2Fn/aj6/B2LQBXHxzYhXySDn4dxmIsuasqZdvMisJ69Q9LS4Ut6ELO+cZJW6tsRZs0cT+eGf4En0VJC5f1TrpKdG98foI+mpSkjs7Ecrh+6gG3yZpeRwWGP87ttDvpImQu/7t4JzHOtEIKU4gViO8cJNvzkxL+p7ZUXuOrtiyM13NRTiN1yH1EDNI/JECYbpBXEdHwjdppLwvo2h8exsN0//SQ+GwwbI2RJtVpYUL65qvCpdFdRtpKOvIOv0f03oP2+LL+LM= X-Forefront-PRVS: 00462943DE X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(4630300001)(6009001)(7916002)(189002)(199003)(8676002)(68736007)(7736002)(7846002)(81166006)(81156014)(305945005)(76176999)(50226002)(97736004)(101416001)(1076002)(107886002)(110136002)(189998001)(36756003)(42186005)(5660300001)(50986999)(50466002)(48376002)(33646002)(6116002)(3846002)(105586002)(586003)(4001430100002)(47776003)(77096005)(106356001)(2950100001)(229853001)(2351001)(66066001)(2906002)(4326007)(5003940100001)(53416004)(69596002)(86362001)(92566002)(19580395003)(19580405001);DIR:OUT;SFP:1102;SCL:1;SRVR:VI1PR0801MB1741;H:dsafonov.sw.ru;FPR:;SPF:None;PTR:InfoNoRecords;MX:1;A:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;VI1PR0801MB1741;23:IH9f23KSXzy58pT8nMwvl45hZXnXwMl4/hMdDC3?= =?us-ascii?Q?9w+pJmcBg8zc3utEAjlHmxIOqODqcJTNDJAOezMxGQzu1xL1TkwFcvV1upDB?= =?us-ascii?Q?XdWmaQvm0gRdjuMnFxzq8RTg6DJlFfXKdKMrxI3el/TIMOfbODFxdV2nnEWM?= =?us-ascii?Q?PmiwQG+bmQhDY8Bn5kmZRnCZL4lUSDDBR+6MIBn2pp8wawuoEDHl9zuB2VBn?= =?us-ascii?Q?RLMIdm1sWokP2/6StGUoB1vHrgdo46UBVq+Mm1yeSsnkyVZgCMjmEzBunNWc?= =?us-ascii?Q?OG5lYsnBdSrnbR6QyJ74SnYpN2bLCrGSpaSKDFmm6QJ6j9SqcxsRp2qGz8pr?= =?us-ascii?Q?QeDBCVR+zCO3Z/S5TV1inZZDWnJX1JP72wQxpvcJ1flLhd8CbsuaiwRf0d/0?= =?us-ascii?Q?+iePLFSEPxdTKZ9tgHD4e5suw6s3Q+gbkgfX9EOHFrf8O5ssGA3WXtAthkGd?= =?us-ascii?Q?5Ipu3skFL9HNpxXNn7uA3xilMnwX3s6yg6qo/KjLFgGoL5wSg9bUf9bsxYR6?= =?us-ascii?Q?TXCP8kaQewNk0HuaIF+F3zqTOrGxYRX+epu4ENDwk1x6ht17BZ4KslhbISWx?= =?us-ascii?Q?IxKZ2VQS1S2aD9JhyaEKCtYdmIRWUVl+13CPV6CdgTefd6KF3Tcv2PyHmKYn?= =?us-ascii?Q?H+XKM74HsqXUEHf5Gww45XNXKKexjjRR1XECm4k6lWc+Lx5nI9NAGOeI3Wry?= =?us-ascii?Q?1yEFKj4udlrcvJDlgwNOmgopL955cHFew/aXdH8TDLx6EqbxUXAr3zr3asr3?= =?us-ascii?Q?6+1DrcYyO04mrBdndvshaDBaXmxwMJTk5kqH9+I9cZWfILVmnB8jNYnKBqQi?= =?us-ascii?Q?+YNxIwTUnbIKvnxrFPAsD9MENoU7NyaLPf1bzocJ2veQ+kyxIgJqX2I6ySeC?= =?us-ascii?Q?BkYY0NnGIoJsEE3kulC3MGlO79lBVRkGwGPOkN+7eTk1B2RDzpLfiwY/YWiI?= =?us-ascii?Q?sN3swqaO2HkER4aG1tA/nifmeD7ee/kkqEsnxdggYYN+IPvg+3BgzSZ0p9bJ?= =?us-ascii?Q?8Xk2E0MFYheZC6NVLMOai8yJFjJeUr30M8Tztihj6j5KdvSnuyEt/0wero8E?= =?us-ascii?Q?+aD6JT+SyIRHa5iVmY7MtOFI0felsixtKRas+12t63IJTxi7aR0m0ahDYP98?= =?us-ascii?Q?JD/AIXj96tr+PEg7C1gdVZRtowKw26EyWjSSn2EetMvgE0adBbtpUSbgPJUc?= =?us-ascii?Q?gBDSXe74bJgFdPDflf//vxdsqk+1LpYOKjqg/?= X-Microsoft-Exchange-Diagnostics: 1;VI1PR0801MB1741;6:S899W3jj52aU4AfEYpFceR9GDlJ9kvjl7ygn3jup/sObJyVqji96aUbHPyvVIIStVH4MHyaDdntAnjoa0GQezoYN2PxRHSqb1dTxZb24d+8igBWFlkt6FFSbJ7uAZ/UQRnPDAChL+NAu3tIHRzJFpQ92JsXYsIjB0rhB11ekV/cbtjtuzAfjgNEC+caxiB5wgFe4E3AmQYJzE5Jg6GNUKL9GA5r0/4V7mQXf3MlorKy93Pied7iYzSg8rPuTdG7YrGth7FTTBKm2WaoI8HrOyNpYxVe2kNUeX3KUGKXTMkq6zD7ZGLx5xl1Q0UOuX0kT;5:jeRDCzJVtQ8daMuEc9Fo+j66bv/ZQvusdi1G6FJBGRTmODEriw4PzHvn/lBY8FW4kxNy5zwe/8oc+0Uw35KEWY1612Avca5Vwx1cq/I76DVJGSJ/CTp5hOMTw8V64HlHUzJ+viF8eZCGf+IIxqwD1w==;24:1YZA6t+A4rbHjYRculUSjnLucm3zGvCtKqqs+osMFqtbjXXK500ZoOSCmiARZTejCBjxmAafiS7qyOW4Sp8DmjmguTQsBu1rkXeDvIsiORM=;7:SWyG4C3ZpHIa3ML/A038UywvKHxjomGSp3dU8T9DS6o5qJ2JHVB84aS/y30ju8hDlzRbFFw9EIXOZ+Rs2fMMHNxSMh+DM9pKTR4w+rmsHAOBeBEVyM0ub5b+D+NMIuL3Q8YVszS5rBbXtWb8yBKSzwQVR/2tytrk0FdAfSMSlpDFS0y4eaQ/56/OuAc3tc9Shi5V7v9uxVFHrAHD/qeIeGxxLfLIAJsmtMQ+4SdzeiI1zfHKHAvEG79tsl4mYBR8 SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;VI1PR0801MB1741;20:1O6CH64QMIdWAn8vBnubJ7P2x08FKYBJq1VXNxXWQZgHCBHWUeGQHd+EDfAJkmWygrBCo8hqrh5wFriF9KqqGNgRrD3EMoxLvD0gQEBWcUhn3XaL6lym7rEiMoXZ7h9M4IqHzSdlH4dr0f/wpxQJL1OVpcCHRVzPGY3PZ4I559U= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Aug 2016 17:15:50.1082 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0801MB1741 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org If remapping of vDSO blob failed on vvar mapping, we need to unmap previously mapped vDSO blob. Cc: Andy Lutomirski Cc: Oleg Nesterov Cc: Thomas Gleixner Cc: "H. Peter Anvin" Cc: Ingo Molnar Cc: linux-mm@kvack.org Cc: x86@kernel.org Cc: Cyrill Gorcunov Cc: Pavel Emelyanov Signed-off-by: Dmitry Safonov Acked-by: Andy Lutomirski --- arch/x86/entry/vdso/vma.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/arch/x86/entry/vdso/vma.c b/arch/x86/entry/vdso/vma.c index f840766659a8..3bab6ba3ffc5 100644 --- a/arch/x86/entry/vdso/vma.c +++ b/arch/x86/entry/vdso/vma.c @@ -238,12 +238,14 @@ static int map_vdso(const struct vdso_image *image, bool calculate_addr) if (IS_ERR(vma)) { ret = PTR_ERR(vma); - goto up_fail; + do_munmap(mm, text_start, image->size); } up_fail: - if (ret) + if (ret) { current->mm->context.vdso = NULL; + current->mm->context.vdso_image = NULL; + } up_write(&mm->mmap_sem); return ret; -- 2.9.0