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 E47B1C54791 for ; Sat, 9 Mar 2024 21:48:39 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 4FF886B0074; Sat, 9 Mar 2024 16:48:39 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 4AFA86B0075; Sat, 9 Mar 2024 16:48:39 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 329746B0078; Sat, 9 Mar 2024 16:48:39 -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 1C1A46B0074 for ; Sat, 9 Mar 2024 16:48:39 -0500 (EST) Received: from smtpin16.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id A7F8C12014D for ; Sat, 9 Mar 2024 21:48:37 +0000 (UTC) X-FDA: 81878840274.16.55C8FA5 Received: from mail-pl1-f181.google.com (mail-pl1-f181.google.com [209.85.214.181]) by imf27.hostedemail.com (Postfix) with ESMTP id DD0664000F for ; Sat, 9 Mar 2024 21:48:34 +0000 (UTC) Authentication-Results: imf27.hostedemail.com; dkim=pass header.d=chromium.org header.s=google header.b="U4Kqds/N"; spf=pass (imf27.hostedemail.com: domain of keescook@chromium.org designates 209.85.214.181 as permitted sender) smtp.mailfrom=keescook@chromium.org; dmarc=pass (policy=none) header.from=chromium.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1710020914; 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-transfer-encoding:content-transfer-encoding: in-reply-to:references:dkim-signature; bh=ij4dl6s+fU5V8GRSIdSDyUxEbjNq2rinUUwBlPc9zv8=; b=UnHflJyFPLzE1ZIARPNjKytKhnt1OH+QKE65pe0jctHt3YZ8D+KsqgG/tfY6O8H4dCgyjc kFU0mV2xqaBJ0SoAWumtGwt1M58QQMmfKQva+PVNJ8veSpBSJ8ZM1lxLaJYlkmFIGs0Dzc Q1r/wsJs35efOwbmP3U+sjpuP8bmShE= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1710020915; a=rsa-sha256; cv=none; b=w26LaqoaZNqxnVXvpeKnlp6v+HDkoI/Kw+fIWRu2VyVnyt7DAX2RTS5VImKptc4lakajaW 35OGuSGK5CBsDlr0oeX+DY05IF0M98Leq0NuhjnMj4tzt6uAL5TH5qF2FeqCHaaMQVH5Yd 9b4pJw+lt3gB5p+Bhrqjawihi/mOADc= ARC-Authentication-Results: i=1; imf27.hostedemail.com; dkim=pass header.d=chromium.org header.s=google header.b="U4Kqds/N"; spf=pass (imf27.hostedemail.com: domain of keescook@chromium.org designates 209.85.214.181 as permitted sender) smtp.mailfrom=keescook@chromium.org; dmarc=pass (policy=none) header.from=chromium.org Received: by mail-pl1-f181.google.com with SMTP id d9443c01a7336-1dd5df90170so21056175ad.0 for ; Sat, 09 Mar 2024 13:48:34 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1710020914; x=1710625714; darn=kvack.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=ij4dl6s+fU5V8GRSIdSDyUxEbjNq2rinUUwBlPc9zv8=; b=U4Kqds/NaoAXjH/7iN1WXVdwFXxF4YKBuIbfl2c+74XOawaVCB5IyM3WWNMQaH7UoJ GH8yFePJwqOJPj0+87UNcK1snb2rnl2eQ/NxSAuyxm8kdigA0COqJ68qLQgGzo3kPfdg WNYI6qrt3vb5XyUENznMbL851J+UyCHMmqfoM= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1710020914; x=1710625714; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=ij4dl6s+fU5V8GRSIdSDyUxEbjNq2rinUUwBlPc9zv8=; b=hztHzgXO1bwP3DtD+hJZV6xAQAjP5h8ND083PAWRzQUoSVBi/PEDRYkdwRcShLM1fc qVkwhsY5Vc0WDbXTTJ8TkILZb3hneA/9W6mofmg4XOp64GkzJ+3WcZ+DUGQgB7ikX4ib ++EQmSdGWyy+1T60sRRV3pEi3NDGlJzi9o1cJdtgJP2B12pcCxyvW5seyBGTi/YyK4og awI1h0YpC5hFFIGSJ1saDPbwEAdoP3Tn4AuMttYtCoZFOkSqShMCz7VVoldecGaooNzF BkWE3H9ez4boeGLGKaD/PQWJY7Ek+t+VPk5XDavRXWVDFMZQfBhqcal9w5Wympb28NSV 0ZqA== X-Forwarded-Encrypted: i=1; AJvYcCWLzhGuyRoksZ+lclCXyx+U0pDhx13VjwexZTLwe6SKjhfB65AcuHIWDIxCdNkmRSlWWeg9WHBQXEnCOI3BJ6GCAbU= X-Gm-Message-State: AOJu0Yyx52TJVF6/twPOkJu22K99zV5bWGfJWpCnxyjv47W4uCvMJFgk DNuW8eZwVRapJJVTyO4tY6OPuAw4XrT2I/8Dq27W0KbqKi1O1kelNjbfIP6fq2GkQCcohKAEORg = X-Google-Smtp-Source: AGHT+IE03Bnsaj7XifM5/uMKxOJjyFpeQ9/fOFvr/AdwuuzOscOuC+xbByKTNfiifwemz2iFWjiZxQ== X-Received: by 2002:a17:903:2305:b0:1dc:b64:13cd with SMTP id d5-20020a170903230500b001dc0b6413cdmr3672457plh.27.1710020913729; Sat, 09 Mar 2024 13:48:33 -0800 (PST) Received: from www.outflux.net ([198.0.35.241]) by smtp.gmail.com with ESMTPSA id i14-20020a17090332ce00b001dd621111e2sm1729518plr.194.2024.03.09.13.48.32 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 09 Mar 2024 13:48:32 -0800 (PST) From: Kees Cook To: Eric Biederman Cc: Kees Cook , Alexander Viro , Christian Brauner , Jan Kara , linux-mm@kvack.org, linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, linux-hardening@vger.kernel.org Subject: [PATCH] exec: Simplify remove_arg_zero() error path Date: Sat, 9 Mar 2024 13:48:30 -0800 Message-Id: <20240309214826.work.449-kees@kernel.org> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 X-Developer-Signature: v=1; a=openpgp-sha256; l=1307; i=keescook@chromium.org; h=from:subject:message-id; bh=TlbeLRS6KIxUGIuaEwI09g/BKrurDk428JKg+03aOWE=; b=owEBbQKS/ZANAwAKAYly9N/cbcAmAcsmYgBl7NkuHimbUFvP3Wujjd+L1DSMiaEMK4gLNVck8 Sc0MmkSs/OJAjMEAAEKAB0WIQSlw/aPIp3WD3I+bhOJcvTf3G3AJgUCZezZLgAKCRCJcvTf3G3A JgXtEACOtfBcv83tcJRDanJKvoKkTfWWrjQSKpdkksCWC6yENNwJql9scRvASM5S6DzURuhkq2d N7/W42guz9FpQ+L1UDXoskzaaVCzXOwq3YzF/xTmtrRyXE6GC9NIUJVtE+S3vQGA8WzDo6y8uT2 WGHvgzK8ddIuVI4SkIr1K0hGRNUyu41RamOTeoLSdb8yQgF6x7Eew0Iukiloqi888aKm7Qpje+S +zM4zlnvwtVfmxZzVrszoxqrYJtldziDtD0Pfn9L5wU8lC5BeUw5Dj402JtJeKTP251+QY5MqH4 NgFGPzm/+xgntTpVCtsqBuiqmqozIOfOPByEycZWnYGIaeA8ICgCkwQEdQbP5ynYqHikt1JG71Q 2z3rZHyt3ESV387UNCRVbmaPXWE1Erx0hLLfIppSPltc8zNi9wz8KsnRVdaSDKZ1stl3/IHCr7V pPGOf9pbrMW4J55FC7s8KbxiTMiUNjOLFb7a24F9HBB6zfnONbPDqkJKKTp/TfeFbr090JYw8lk reVExDRQdz8TVr756XON8JmKFpty+iaTzNDKtz/ip7qquwfy3PrgIwtIx6ESfGWJxDRQIsKBrBp QcPjLoqkeYf2/HHpBGOgv+3pgBWJtKdxqyiXbp8F5sc4dAVPZm+XFcfJshWtCQ8OHMM3D8pzAxk dFhwp4R FAveH4jg== X-Developer-Key: i=keescook@chromium.org; a=openpgp; fpr=A5C3F68F229DD60F723E6E138972F4DFDC6DC026 Content-Transfer-Encoding: 8bit X-Stat-Signature: b6bqdosnsgmf94dxnhociux8urke7wqa X-Rspamd-Server: rspam10 X-Rspamd-Queue-Id: DD0664000F X-Rspam-User: X-HE-Tag: 1710020914-288815 X-HE-Meta: U2FsdGVkX19I15eUoqiohavBzJevJQ9q8gsLYhn8XK3ovRTwU0QTuQQ2zJvkeO05Gf9pZf6fkIk+IRzYYqmHQ979dIjEFrK3UsbJCGnmSJSOv03fDDpv7Yv+PfPpGVuLsvkboj3X7I5pdGOk1bsoP7dPK4vaBYqwmOyxtU2Oi/wB6Pg87jdqZD8eRzCSPM5rp0LkQClmfyggK67WPRLlN8VAwBJS2xqI5q8gGHF7Ou7WvHmdw/eBO6bRR3mDOjZLzAcUaLRHMLmKEtZJ+0TgHcltil9srvMshxgS798bwTDd53kMX6DSQRh93B3bdaa+6YICK/jO++DmNd26foecsw84QGdyIkXXItMDzduRnsWYe4kbB1zy4a1TDhVKfI9al/UD8h7hiRzRdXzPYHwXlyY7d5uzdPUNvbs6XQ9Ve+fEe9BpNrAyXiqOUR6mv4P9myF4Lmw4m1zyJ7Hx3f2KrSkiL3kFI5J0DVtwig4qFAvmgqiJBH4HCq7HUA8DQ0ivRYjDn+aOc6RsFZcjdOQ9FHNiFNVT8zn3IWtcmisDrSlr+XOoa6MeOYKvrIsNDYtpHj97k/UUftwwFZF0LXKw1aoR5EuzOWMvmgTxt0SY4P29we8EPZXvXgzYqnWv5ZEeUF68yAJwLwXpL3fcmpOWejA5z6GJmhx1L/MhuPdhnuhBhH2EYH1KEgE9ez3JqNEXSUw2NdRSxTrKMZNNM2t/k/WSCZiG0TeFpYcF0Cd8yo5PAVLfEuYHfJze5tO9ulopBvj5++Yg9yGqf6EVYWYUTtZg2ih4lgjtFPId85fmt19X8JMRDWk5yA0FHn9h9HJgwagO0b28xcTPOpKp7uw49bM8sbb6qkt/WQ21o6JrpI+tx6OShTU+0R666CP4M078bbsAJ94JE54dzwDppXgQOljAOFjQBK6RciYdTMM8BmvCSxOj3RFGzMP8gsmhJdBDUybZDS1Wzn+g1qnUSaO 0UvrJj82 K+F212O2g+wmzH9A9m2bkpHJdsN+i4lH0GxgzjS8rXtpoQlH0f9td7/gdfrF8k80pDlsU89ZOpRAg45FhUd/7raC0MKc3dSYZjsD8pniQe4wjOyrqAZLAvxRaM/rcayFFxJDYNdgGEsRBMhrrn2FVB1/G/A/Z0Yj2xYmTo6sYJacmOSWYeRxMLu8rwNdk+sUxX2rEL4/f7YYy/HtY2ztiQPWUb5eGriPW+CmpQv2QyyoI2d3uRgmnudl0p9a74BTbRMapB7rZ/gGtrTWCzv86pR7XGMia3hlCmtZXVjPu3dEYf6Oi47SjGnLeiqyZ1GkLpnpQ5r8VJWcPxmlL9EFs5e2J0xRHPbDDzMW8PAPA0AU/c8K5a7zWArS0OO91skOpsCP4Qyu6ta5bRpAmL/wQaWCvEW+NAnx/VnQykiUEciwLuLtWmYblYnD4gmDobd364BLEHRUu0Dfq/YTtmmElA63smWeniLk8rsqhvl0GYjKG7FObj9xcLrDE+TwqsdvtERYP8+huZvuarmCopxivsIfDmIGHaq9+v4j1nEZa8LuTabb4pXhKe26IsEIwlAWfj4fDuLVn0+Pt2Auyr3z8ZlHikdGts78W/MoGEAKN09SW81qWaeIVYMlUHu8Ho0os9LHBDA1dpnAJE9M= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000001, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: We don't need the "out" label any more, so remove "ret" and return directly on error. Signed-off-by: Kees Cook --- Cc: Eric Biederman Cc: Alexander Viro Cc: Christian Brauner Cc: Jan Kara Cc: linux-mm@kvack.org Cc: linux-fsdevel@vger.kernel.org --- fs/exec.c | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/fs/exec.c b/fs/exec.c index 715e1a8aa4f0..e7d9d6ad980b 100644 --- a/fs/exec.c +++ b/fs/exec.c @@ -1720,7 +1720,6 @@ static int prepare_binprm(struct linux_binprm *bprm) */ int remove_arg_zero(struct linux_binprm *bprm) { - int ret = 0; unsigned long offset; char *kaddr; struct page *page; @@ -1731,10 +1730,8 @@ int remove_arg_zero(struct linux_binprm *bprm) do { offset = bprm->p & ~PAGE_MASK; page = get_arg_page(bprm, bprm->p, 0); - if (!page) { - ret = -EFAULT; - goto out; - } + if (!page) + return -EFAULT; kaddr = kmap_local_page(page); for (; offset < PAGE_SIZE && kaddr[offset]; @@ -1748,8 +1745,7 @@ int remove_arg_zero(struct linux_binprm *bprm) bprm->p++; bprm->argc--; -out: - return ret; + return 0; } EXPORT_SYMBOL(remove_arg_zero); -- 2.34.1