Message ID | fd39b0bfa7edc76d360def7d034baaee71d90158.1679511146.git.lstoakes@gmail.com (mailing list archive) |
---|---|
State | New |
Headers | show
Return-Path: <owner-linux-mm@kvack.org> 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 E2DB7C6FD1F for <linux-mm@archiver.kernel.org>; Wed, 22 Mar 2023 18:57:13 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 5971D6B0072; Wed, 22 Mar 2023 14:57:13 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 520266B0075; Wed, 22 Mar 2023 14:57:13 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 399B36B0078; Wed, 22 Mar 2023 14:57:13 -0400 (EDT) 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 29E0D6B0072 for <linux-mm@kvack.org>; Wed, 22 Mar 2023 14:57:13 -0400 (EDT) Received: from smtpin18.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id C7E601C5DE6 for <linux-mm@kvack.org>; Wed, 22 Mar 2023 18:57:12 +0000 (UTC) X-FDA: 80597441904.18.9BB02F3 Received: from mail-wm1-f50.google.com (mail-wm1-f50.google.com [209.85.128.50]) by imf19.hostedemail.com (Postfix) with ESMTP id E4F711A0018 for <linux-mm@kvack.org>; Wed, 22 Mar 2023 18:57:10 +0000 (UTC) Authentication-Results: imf19.hostedemail.com; dkim=pass header.d=gmail.com header.s=20210112 header.b=ho2V3ltt; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf19.hostedemail.com: domain of lstoakes@gmail.com designates 209.85.128.50 as permitted sender) smtp.mailfrom=lstoakes@gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1679511431; 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:in-reply-to:references:references:dkim-signature; bh=cY5q38znnygXEk7MQGfhMNT6fWhXSJdRMwyHM9vnLSQ=; b=TszpwnKTfc7ikP4+GLC2weEgGSVcvN+Z7tn4z5cWJArFqHaV3NbqigIfaiie1qa8QAAXLV cOuBzLUjgszz72SvFxyMDLWwnHdVJMGxIpO38JQE36jWgJz/ZMEMS6ZFWnb8CjmQsnNNAV JvepgNKXpVpIObuPXG/AGV6eNpCVNiI= ARC-Authentication-Results: i=1; imf19.hostedemail.com; dkim=pass header.d=gmail.com header.s=20210112 header.b=ho2V3ltt; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf19.hostedemail.com: domain of lstoakes@gmail.com designates 209.85.128.50 as permitted sender) smtp.mailfrom=lstoakes@gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1679511431; a=rsa-sha256; cv=none; b=3vN0/2nnW7lOuj/4YnKsDbLga08O4RE5KbN9rfCmOIXpWHCMktidaqjWBDGPQYbS2ke728 1LSdsG/yQfa34ebfy1m+a9nK5v1UebS5QT0Bnde/V2H4RY/wAtwUioBiuEjnCwvEeyE0Vd bthiUD/vn3SHDFWbtjYuig0A297ohUU= Received: by mail-wm1-f50.google.com with SMTP id u11-20020a05600c19cb00b003edcc414997so7274602wmq.3 for <linux-mm@kvack.org>; Wed, 22 Mar 2023 11:57:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1679511429; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=cY5q38znnygXEk7MQGfhMNT6fWhXSJdRMwyHM9vnLSQ=; b=ho2V3lttQPWKpNn1MVOgStORguEs5OpC2tppzl/fSZvF6W5pTZXio+dUuP7F1W4a6D sKEH+eMbIcquzMYWjjP0z3IjWCBP2jIRxpHCsMhegkih+iPMHBOXo7n8K/2qfyEnDvAC JPKiK/DSS1ftRoumfSpF4SUKecVee1IRwiH/4rCGR7BHc8k3FR4aQJKTok+UIx/iek1C WXLKh4iIg7C1usL/OIC5pYTljmUOz1LN5763tzZTMRCcCB+cucePiCUrHF3fiHcf1xAU 6D/EAmT10BMgVi/bAFanQ65AVy1S8kR4/dWaYVsYcuuw8Lbrn9NUnVa08eiz/jF+Fovd iAcA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1679511429; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=cY5q38znnygXEk7MQGfhMNT6fWhXSJdRMwyHM9vnLSQ=; b=sJILHg36vknuU7R9uFlGg0MBapQBKZ3RRhUJXDRVNlMHc2DdrtHNVNIW1tcYJM3Mww uNlegZOXGpyUkjikdl4ItBir8LDZjhkR12L9L0MfRH8m5BBMQVloaGFnh19RA19vXdyG TmHzaJ1HyG7j8UkxAyDTj75FKebkZgVdBLO/6CKei2Ju0ygrwv5H0Gfg2waClQTCyZA6 WG/cr/l3CGbXyBztlevcc6e6hi0X25IV1LQpTZxCo+txuK8QriXsXom4XOyBkCUOKUoi b+bvg5TKcwhabHPufOaaWSb1NDm6nwKdB9szKiKsaYRQ0bGMt9uhZ0DzaGSxgDjBlDic ZVjg== X-Gm-Message-State: AO0yUKUgVM4z8EWd+RwCjbfGEp0naVT/6ytQ3lN2tLervA7uUrPvEDRs 7UJYEShOlUaiNlc7cAgxjQREi6KfVfg= X-Google-Smtp-Source: AK7set+NDh+6LxctfsXoapnmQjHw2okp+JlAaeegvPt6NqD+wsZu0NW2dEtLagF4TCt/9Xz/Ab+v+w== X-Received: by 2002:a7b:c388:0:b0:3ed:c468:ab11 with SMTP id s8-20020a7bc388000000b003edc468ab11mr417479wmj.28.1679511429076; Wed, 22 Mar 2023 11:57:09 -0700 (PDT) Received: from lucifer.home ([2a00:23c5:dc8c:8701:1663:9a35:5a7b:1d76]) by smtp.googlemail.com with ESMTPSA id j21-20020a05600c42d500b003ee581f37a9sm3181241wme.10.2023.03.22.11.57.07 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 22 Mar 2023 11:57:08 -0700 (PDT) From: Lorenzo Stoakes <lstoakes@gmail.com> To: linux-mm@kvack.org, linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org, Andrew Morton <akpm@linux-foundation.org> Cc: Baoquan He <bhe@redhat.com>, Uladzislau Rezki <urezki@gmail.com>, Matthew Wilcox <willy@infradead.org>, David Hildenbrand <david@redhat.com>, Liu Shixin <liushixin2@huawei.com>, Jiri Olsa <jolsa@kernel.org>, Jens Axboe <axboe@kernel.dk>, Alexander Viro <viro@zeniv.linux.org.uk>, Lorenzo Stoakes <lstoakes@gmail.com> Subject: [PATCH v7 1/4] fs/proc/kcore: avoid bounce buffer for ktext data Date: Wed, 22 Mar 2023 18:57:01 +0000 Message-Id: <fd39b0bfa7edc76d360def7d034baaee71d90158.1679511146.git.lstoakes@gmail.com> X-Mailer: git-send-email 2.39.2 In-Reply-To: <cover.1679511146.git.lstoakes@gmail.com> References: <cover.1679511146.git.lstoakes@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: E4F711A0018 X-Rspamd-Server: rspam09 X-Rspam-User: X-Stat-Signature: pf86qmfjz6dz6nzni6jx59kgbgmuwto3 X-HE-Tag: 1679511430-280877 X-HE-Meta: U2FsdGVkX1+vTZc4shKBefgm1c/u1r+K4UOGHElCZ2PCqLPZmfj50SOdYUrDJ1N+Dme9CuSbwxpcBxSpRX/NxYn18WpLI7y4SJQ4ueUkSWJ+vW4/oCXl5YShrvn+aXA0kU/i1i2U1O92u62lni0DrbfRLp/3zQ+xk1Pe9jTD2dd99ugrHJlSI3jOl1gMpwjhyPWjvFpbdGsUB0O9d3fJwfEpY4P5c64ohx3FhbnLLv/+9dJ0POeq6n8efd0YMrzQuUKpIRhHingAtxDh64A4c5svQySh8mN4wzY49ehhHvDBhYEmapJP6ylYxhApAKXeLLMGABNjrylhvi2PZ3iv7DFaoqN9Fg1WNN1jWEGn+HraZc5VBT6HSHYPBv6X8JWogGX8XYMHa1PB0JPpYwHXA0SJVJQvrNujHhObtZlGo+XYnu8tzRaAT+qVjQGQfRRqJbRqDB54/DvL0pvAVSqiC4uL6Eu+ApjBso/iIohMh424BX00a3maz39T/iV8hEeim5hOaLUwXlM71nEnHrfEzwyQCd5TkD1HSOAcfdz6P4MEo1iHL7++ZqY6t+pV/jiM/31HToTaC6/9WFRAp4YEaGr79uDUw2wup8V4mu6WqDzRQu5ogEWTiDY8O2X53JdcQxGjN3weed4lG+VMK4Ws3X4qJ247QZJbhXCY6DQLvVB35G0yDrxl/tNe3Oq3R32XE0/vvJkaPLmi7HY/VNL8ZvBkjXdJ6A90CJRb1+ydg9XKCvz+Kt5vNdhCfZRXvVA52RVFLbXgGQ9tA4oSB9goo/Tq2nBfgXkw7sov8Qpu5EM2/G4y1pQNj6HuYYfZSlZr4QERnbZ7p21iEjEupUN+v65mgE8h39OrLO6jw1HzDtAppgKtpCfEdIp9WhfJCgZivZIkzDkQCbFRszfTtCiO+iEPAwJJufOgp3eFj0RlJ5gcqhRBQiTjK6MOmCEe3OZJmhp3UucYHKIitCXIyp2 mwj3ybrQ sPA2jEP3zE5PbyCVPsjeRayqxi8dKL4v3o9O2uwgEgWtO9q9JBm8dm5aJ6u4hR/h9P+8+YPv4b1Y3eGX0HUE1nHddkuD67tHcMVORWtnXERVkYYvmqD4kg5J+LocEaxx8mY0OzLzVcbuVfSIuI7JW2W9q+o7cnq0OZWlyZsNJlJVigIDJGspFxGgvCl2LRpMEFa4yHtG15Of6mgXyn004nq3yZX2CSk/5yz4TgLhu2f1Fz/wB6fZp+j72mL6rm4UkNNCJkANJYWvLssbSr9GMMLNKeYW9Qf6ieU1B6Jtrds4fgbxmpnRgNqZEAxzrzYCp3CGMnylpSPS7WIGFueirOclxHxLmsz47ZkWXwWYKqVTx/Bnvd+lJ7nG1RRjrlWV+b2MyCkjp9tAsy3ICMS/xZFcxXasIsNUUv7PNNimFCr+R2IPwlRj42b4OsiaoAi/kbwnvkPuZpvUEXv7ic8xncdyDyyk4qURb63odHqnN3EWr0PePlYlzxW+6u673JPAHM0KhoKIOzIXZ7bSy0RBi4K+QN6fhNqSD1l21TvAhnprPwNBwWxsfDThB6X6NrfOxKIR8 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: <linux-mm.kvack.org> |
Series |
convert read_kcore(), vread() to use iterators
|
expand
|
diff --git a/fs/proc/kcore.c b/fs/proc/kcore.c index 71157ee35c1a..556f310d6aa4 100644 --- a/fs/proc/kcore.c +++ b/fs/proc/kcore.c @@ -541,19 +541,12 @@ read_kcore(struct file *file, char __user *buffer, size_t buflen, loff_t *fpos) case KCORE_VMEMMAP: case KCORE_TEXT: /* - * Using bounce buffer to bypass the - * hardened user copy kernel text checks. + * We use _copy_to_user() to bypass usermode hardening + * which would otherwise prevent this operation. */ - if (copy_from_kernel_nofault(buf, (void *)start, tsz)) { - if (clear_user(buffer, tsz)) { - ret = -EFAULT; - goto out; - } - } else { - if (copy_to_user(buffer, buf, tsz)) { - ret = -EFAULT; - goto out; - } + if (_copy_to_user(buffer, (char *)start, tsz)) { + ret = -EFAULT; + goto out; } break; default: