From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S966075AbcJYT2O (ORCPT ); Tue, 25 Oct 2016 15:28:14 -0400 Received: from mail-db5eur01on0094.outbound.protection.outlook.com ([104.47.2.94]:14232 "EHLO EUR01-DB5-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S938295AbcJYT2B (ORCPT ); Tue, 25 Oct 2016 15:28:01 -0400 X-Greylist: delayed 3771 seconds by postgrey-1.27 at vger.kernel.org; Tue, 25 Oct 2016 15:28:01 EDT Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=dsafonov@virtuozzo.com; From: Dmitry Safonov To: CC: <0x7f454c46@gmail.com>, Dmitry Safonov , "Benjamin Herrenschmidt" , Paul Mackerras , Michael Ellerman , Andy Lutomirski , Oleg Nesterov , , Subject: [PATCH 1/7] powerpc/vdso: unify return paths in setup_additional_pages Date: Tue, 25 Oct 2016 18:51:00 +0300 Message-ID: <20161025155106.29946-2-dsafonov@virtuozzo.com> X-Mailer: git-send-email 2.10.0 In-Reply-To: <20161025155106.29946-1-dsafonov@virtuozzo.com> References: <20161025155106.29946-1-dsafonov@virtuozzo.com> MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [195.214.232.10] X-ClientProxiedBy: DB5PR0301CA0040.eurprd03.prod.outlook.com (10.167.222.178) To DB6PR0801MB1734.eurprd08.prod.outlook.com (10.169.226.149) X-MS-Office365-Filtering-Correlation-Id: 6177b015-92f4-4fed-5233-08d3fcef05cb X-Microsoft-Exchange-Diagnostics: 1;DB6PR0801MB1734;2:rc3sMeLL1VI+Zh/bTLHouUdJi4kBCDgyTPLI7QX7Mq9rVn5+OWq6pHWBUK/M28SAoFAHTu+G24Dzh8fOycFIISspwQHZDngabGTrXP6Y6aQQENE62xGNzklMyxae3J2/+fbas/4gMchnWDKH7kosp0eKv0WEdNz9BNiuRiP7dOaAWHbXDP83UnfbBFuhN9c6OPyNxvzunlccC179z8Tsmw==;3:uKUYz5AhuVLpi3+W5g5U5dh+LvO/zQjTBR9jVGOSp9Us1hs790E6XbjXk+5/DCjCyBprbfDB6rS4lgTdkE6cI3IaXal5nhF94S+lHu+qYKCyzvgZS6ueQEkJ0Uc1tLd18mMwYfJBlNzLBD0Qj6BRqw==;25:Gm1O+yYi3zb1Px5vDEY7b1q9cyyP/BV2LssjIpKLqSegfO0uQWYXdoiX2mGW/XGO9e94sKDNYcGSQbNFuw9AUf9j+cg2bNaAga6bwR1QuSbWVSeNkTTDnCKzA6YYkjRY6nVASu/1mF2sPJgQwC8R1VA8QtUX9A5MuKmcI4ZHOuRePJSopjx3489+z5LMBZ4OhfrvLBlCeBM4IvacV7cl4XDDzhIzLQYPVtgDZBQIYcSAsdf3/eS1MUE/hgvBUFWqCymG0B8Os8mCyQsZHq83XBprPP1Nj+M7zHYLXqX+E4fl2eR+nS3WYsukikgOCm5H+0RD/CTQjlgSUWdz6i3C9xTaRMPFnHf4FJQbHw4B7B7ItUvEbi6Bpqbk0By8LoTGorfhdONxpW6DaMj4qC1mfRHamm+dDaji4DD5EvQbO8bJZJ6N0iTv+EEAcDo3rJqG X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:DB6PR0801MB1734; X-Microsoft-Exchange-Diagnostics: 1;DB6PR0801MB1734;31:SYnytc2FjrVpIe3C1cZy3Z5ujRZPdiqdARmTqsF/QxVdaXFHPwPmWx918a5mxjZOMSi5seVDKhNnJx26cF3p+K+CjJ81QDyuEt3evPQSO1yrFAOf5hfAaaV/QinZw7NK6aYGw0bEUPlVxi3VgHvZYhLBqTPHK/8Qm323AvFiV1VIwcbd6jzqRz1gX75Qqih8WhYsw0jso6/xjZGNT3wphqFsV49HGExatvPKgxsi0gkNQLUCLFwl/f6TZ8iaADMR;4:IcT2Kf6Tn3GQYPIKmNo6ZlAmFt2r5dFR41hbZCkU0oFy4tF/nOFlTph9z2UaZy9N1xUuUkU3fRyWs8A2S/HG+uBz4StJ9w7zfPYoLuieZadMVA7s99gh7kNlsk8D6GocIdhvoYK+lC2rBkWMoR4woOxSCkNtq8R7oi0H4NdSC8fK0Ln3vy6LtJLzdhaa3pPHlRSuvD2l2IRVH+RVYayVanFsEce23RG2kgKCSS1Opz4am/n4TQr2Ga71mGcyH6oPhGmtICTM51ZZkXqx9+k2xm7MBCQvBBqV3ASihWtxDx/Z19O9E8tAlu4JrO3lMcEI6PgZ4UKPuR9XkPta462cZdBPM8hGmx5Ha81ymf7iDARFLtnoSB/qAMpN8kcmjgdA7xY4U9EIgMCs0xWYGYJUZAZsv0ZbNMnSiT/Nx02uK+aC23+SVWiwgh7q3mZ0oSHvheZmDwgeaLDLTrmkYN0jKmBOM+x6r1GO5Gisq+Uup6Y= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(65623756079841); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040176)(601004)(2401047)(8121501046)(5005006)(10201501046)(3002001)(6043046)(6042046);SRVR:DB6PR0801MB1734;BCL:0;PCL:0;RULEID:;SRVR:DB6PR0801MB1734; X-Forefront-PRVS: 01068D0A20 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(4630300001)(6009001)(7916002)(189002)(199003)(229853001)(2351001)(110136003)(2950100002)(105586002)(5660300001)(6916009)(19580395003)(5003940100001)(77096005)(305945005)(189998001)(586003)(97736004)(6666003)(69596002)(50226002)(50466002)(19580405001)(33646002)(48376002)(3846002)(4326007)(6116002)(36756003)(76176999)(50986999)(101416001)(86362001)(92566002)(2906002)(53416004)(42186005)(8676002)(81166006)(81156014)(7846002)(68736007)(106356001)(47776003)(66066001)(7736002)(1076002);DIR:OUT;SFP:1102;SCL:1;SRVR:DB6PR0801MB1734;H:dsafonov.sw.ru;FPR:;SPF:None;PTR:InfoNoRecords;MX:1;A:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;DB6PR0801MB1734;23:XBHkx+E2tvANJyOhS/I89uT3TLXu5NF1qwqE8Yb?= =?us-ascii?Q?a8y2MWgljEYw0HXz8ECrhV4zcbQ8txag8R8qu+a4JI5DqRdrF/Y0UmDWQDQ8?= =?us-ascii?Q?I2Et/I0goN70imcedTlh8eMRFUy80iwfYX9FImVWnKgYMT3fliPXuLIugWwP?= =?us-ascii?Q?CaRtogH4Hwbl+gveD8Y4+T+3thOlMt1d45/Sv20l4Yk8Uli2Cg7VZQE1CcHA?= =?us-ascii?Q?kqZ9HtVON7U8H2feHUCFXx1F2mx04UZtzZoZksniro5wY7TDVdhqw+Lymd8O?= =?us-ascii?Q?RLC2QCvrwbm2I29BrlX1x7K74htcvNqv5HLjcBK/2DdfhhaM1SbjEzLBlhgW?= =?us-ascii?Q?RV8nWv3HLukNtaby8VcayMCulHre0smKsRAw8WUAzRLnk6nr/F4Qra9XTWdo?= =?us-ascii?Q?FIMaR/beYWDBP3ei8GIp2BXTOhxpYZutmo2SBJ3aMaFFv578DaF2HS/6I/Zg?= =?us-ascii?Q?YWWqHDuQ9fARuU/SFJX9BNc+IoFnMUmhLsY4UR2cLQ8lkbLHUiHT2h+U1i8z?= =?us-ascii?Q?zdsMTnXeX8W4uhlB2lFw4Kz5QnyuCsh9FQhIvFAqsovB8khiKCTsY3K2S3P5?= =?us-ascii?Q?5Do60RpVPFNTqRuPOkUcaiaOu6bXUpXgo/xo1yV0+vYhsVDMqAVyDFj31z95?= =?us-ascii?Q?oyJ/rnZ19069tzPwLCH7jyivTK66rwWXc6a1m5/Oqh9kiKDFscHdyd/PeqtG?= =?us-ascii?Q?qAm4RCxgjUGc0s65m9u74pYuXzIuYYo7ghwh2j75qB3iLvMi8+A+fFLDwkBP?= =?us-ascii?Q?ocS8zxEqqBg6uhgZs/uMForafLL0h0/JLYQfkInR+AKIX5v4xi5AynfZ0KLY?= =?us-ascii?Q?dT2PQ6lo4X2lNb1ITNkbshv0NMdJsag9kysYTh6XN2YryfToM7YE0ZDqj2jD?= =?us-ascii?Q?snw0hiTwwZJsqkT60UQE6bWQTr/DwIZZPWOVkccfOJjN+gvU7Tuj7KqoszaV?= =?us-ascii?Q?leMwpJrXvrCPzkTnD0mcLG6gvudERGIawogT4JMm6oBCeAIstWTdcXmG7uKp?= =?us-ascii?Q?9yxGOqiUEZiFd39fFGHXuILFpFByhZwllNPtGIIxnlD3Xm0GqMCsmyJX2JuH?= =?us-ascii?Q?Q7gC1fduuSQleuas3ocD6NIMl0Uwn5zqKGaFYaR7UiZML3O2b0UA0M3g6wqR?= =?us-ascii?Q?Jf9hCoZGL/lKpKTQDTH6+RPbro+Fr97b4+8nCANXxj+yzaSZnKN9Z1N9x2Pr?= =?us-ascii?Q?2pPgX6Lpzb8yIQpg=3D?= X-Microsoft-Exchange-Diagnostics: 1;DB6PR0801MB1734;6:Dh0E2rJ1A39S21mhFqobcfg1jidaBs7GSoCxnOfKsGB/LWp54Wm4OWKFdREyM3v9oQWWPLDYfWGG5ZBZicRbMKplnAzBwZt4/rsltI+Fz+pJUdNvtlsrSOlQ9P0hJhv9jx9PmXc7p9WLbuWDsBETClCledCpbtZ05urWEsBnkycRdvv5DxGvGr3/xBHD0F75ImNb+pZxbck10x9LaqIm+iZ8F6A7+Xhop7PkpgZlv27RdaPBJRHvsOnuMv8q9VsJBPFtuKFIw+UeZHX0qDQBs+hP/AQko7Or17X+lqbdDnYGZPOclmkxkEkwCv3AXlcfdPE+0ib/Ev7lVynCoVhMlA==;5:yiFKHDgW2brcXSIbaxixaG+Ul6vYkhMv0865JzdzCXGiuqf9Jdwam1r6VzDVvDpvq0jHJVww8x6UbC/8E0awd3dVl4VhT2KUALlfa82xpg7EfzxNRrgQZ0Ux7v+efXsRHk4VAyUkQhBKbWu9xb5cThUqBI4jnbSEshjoxIeM9tk=;24:DDhxC8FFn/3roIbXrGx+2ZaVumhEuPKfeT2B9hTYNzFDToYxvb6RxoOGWXfXgGMuhFWB7SiDRbG3jjefD6JmXGCjMKMIWUEjJ9CxvVS6VmM= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;DB6PR0801MB1734;7:U3hiEb7NssAAbxYsBfQAJrb547NhNzpm5Qk4pH9UmDWr2/4RHFlvKHhuNkeGQpmqV1mpFF7l124pIcXGroZuXjd33tCWDqkspypanRfsfoq7EygFcQg1F2X90CaaxzZke+4Nt1GvxskuFqi3n+EOTgb/65iWeSmaVIvT9tgsf18tClar2JNnO+bTBUNX4+4ThTBUluCbhilBt5DdDnFTe+/KkTZWyzBs6RS9BPs9BPtPqzO+nt9PGBxKJGK4sm1COG335sKT+KQdc5olaAH0RVvxkc2hdguN9d2Xtpe+/JAD4YJYWfhSjOwFg9C8VHpj+LmS8d8Hx+4hFGjfUOtfiRKD2DHWevX8OBk773zZIK4=;20:0bFNpKKsiV36cRtooF4ThdpGSuWPZthEpVXlg6VA9U5q3d/hJ2U+Qy7X2yIg2sxtZYc8sThsWoMkOBiZPnLlu4DtAuFIK0dyd+DnfXvx2+vCwemzYS3f1kQDEQULnOlTtAlfBarv/gJx+GDHMj/J742MmWsCD2vHqoivNA9ytdA= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Oct 2016 15:53:10.6319 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR0801MB1734 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Impact: cleanup Cc: Benjamin Herrenschmidt Cc: Paul Mackerras Cc: Michael Ellerman Cc: Andy Lutomirski Cc: Oleg Nesterov Cc: linuxppc-dev@lists.ozlabs.org Cc: linux-mm@kvack.org Signed-off-by: Dmitry Safonov --- arch/powerpc/kernel/vdso.c | 19 +++++++------------ 1 file changed, 7 insertions(+), 12 deletions(-) diff --git a/arch/powerpc/kernel/vdso.c b/arch/powerpc/kernel/vdso.c index 4111d30badfa..4ffb82a2d9e9 100644 --- a/arch/powerpc/kernel/vdso.c +++ b/arch/powerpc/kernel/vdso.c @@ -154,7 +154,7 @@ int arch_setup_additional_pages(struct linux_binprm *bprm, int uses_interp) struct page **vdso_pagelist; unsigned long vdso_pages; unsigned long vdso_base; - int rc; + int ret = 0; if (!vdso_ready) return 0; @@ -203,8 +203,8 @@ int arch_setup_additional_pages(struct linux_binprm *bprm, int uses_interp) ((VDSO_ALIGNMENT - 1) & PAGE_MASK), 0, 0); if (IS_ERR_VALUE(vdso_base)) { - rc = vdso_base; - goto fail_mmapsem; + ret = vdso_base; + goto out_up_mmap_sem; } /* Add required alignment. */ @@ -227,21 +227,16 @@ int arch_setup_additional_pages(struct linux_binprm *bprm, int uses_interp) * It's fine to use that for setting breakpoints in the vDSO code * pages though. */ - rc = install_special_mapping(mm, vdso_base, vdso_pages << PAGE_SHIFT, + ret = install_special_mapping(mm, vdso_base, vdso_pages << PAGE_SHIFT, VM_READ|VM_EXEC| VM_MAYREAD|VM_MAYWRITE|VM_MAYEXEC, vdso_pagelist); - if (rc) { + if (ret) current->mm->context.vdso_base = 0; - goto fail_mmapsem; - } - - up_write(&mm->mmap_sem); - return 0; - fail_mmapsem: +out_up_mmap_sem: up_write(&mm->mmap_sem); - return rc; + return ret; } const char *arch_vma_name(struct vm_area_struct *vma) -- 2.10.0 From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-pa0-f69.google.com (mail-pa0-f69.google.com [209.85.220.69]) by kanga.kvack.org (Postfix) with ESMTP id 823136B0275 for ; Tue, 25 Oct 2016 11:53:15 -0400 (EDT) Received: by mail-pa0-f69.google.com with SMTP id fl2so12298416pad.7 for ; Tue, 25 Oct 2016 08:53:15 -0700 (PDT) Received: from EUR02-VE1-obe.outbound.protection.outlook.com (mail-eopbgr20122.outbound.protection.outlook.com. [40.107.2.122]) by mx.google.com with ESMTPS id nw5si17771895pab.314.2016.10.25.08.53.14 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Tue, 25 Oct 2016 08:53:14 -0700 (PDT) From: Dmitry Safonov Subject: [PATCH 1/7] powerpc/vdso: unify return paths in setup_additional_pages Date: Tue, 25 Oct 2016 18:51:00 +0300 Message-ID: <20161025155106.29946-2-dsafonov@virtuozzo.com> In-Reply-To: <20161025155106.29946-1-dsafonov@virtuozzo.com> References: <20161025155106.29946-1-dsafonov@virtuozzo.com> MIME-Version: 1.0 Content-Type: text/plain Sender: owner-linux-mm@kvack.org List-ID: To: linux-kernel@vger.kernel.org Cc: 0x7f454c46@gmail.com, Dmitry Safonov , Benjamin Herrenschmidt , Paul Mackerras , Michael Ellerman , Andy Lutomirski , Oleg Nesterov , linuxppc-dev@lists.ozlabs.org, linux-mm@kvack.org Impact: cleanup Cc: Benjamin Herrenschmidt Cc: Paul Mackerras Cc: Michael Ellerman Cc: Andy Lutomirski Cc: Oleg Nesterov Cc: linuxppc-dev@lists.ozlabs.org Cc: linux-mm@kvack.org Signed-off-by: Dmitry Safonov --- arch/powerpc/kernel/vdso.c | 19 +++++++------------ 1 file changed, 7 insertions(+), 12 deletions(-) diff --git a/arch/powerpc/kernel/vdso.c b/arch/powerpc/kernel/vdso.c index 4111d30badfa..4ffb82a2d9e9 100644 --- a/arch/powerpc/kernel/vdso.c +++ b/arch/powerpc/kernel/vdso.c @@ -154,7 +154,7 @@ int arch_setup_additional_pages(struct linux_binprm *bprm, int uses_interp) struct page **vdso_pagelist; unsigned long vdso_pages; unsigned long vdso_base; - int rc; + int ret = 0; if (!vdso_ready) return 0; @@ -203,8 +203,8 @@ int arch_setup_additional_pages(struct linux_binprm *bprm, int uses_interp) ((VDSO_ALIGNMENT - 1) & PAGE_MASK), 0, 0); if (IS_ERR_VALUE(vdso_base)) { - rc = vdso_base; - goto fail_mmapsem; + ret = vdso_base; + goto out_up_mmap_sem; } /* Add required alignment. */ @@ -227,21 +227,16 @@ int arch_setup_additional_pages(struct linux_binprm *bprm, int uses_interp) * It's fine to use that for setting breakpoints in the vDSO code * pages though. */ - rc = install_special_mapping(mm, vdso_base, vdso_pages << PAGE_SHIFT, + ret = install_special_mapping(mm, vdso_base, vdso_pages << PAGE_SHIFT, VM_READ|VM_EXEC| VM_MAYREAD|VM_MAYWRITE|VM_MAYEXEC, vdso_pagelist); - if (rc) { + if (ret) current->mm->context.vdso_base = 0; - goto fail_mmapsem; - } - - up_write(&mm->mmap_sem); - return 0; - fail_mmapsem: +out_up_mmap_sem: up_write(&mm->mmap_sem); - return rc; + return ret; } const char *arch_vma_name(struct vm_area_struct *vma) -- 2.10.0 -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: email@kvack.org