From patchwork Mon Feb 24 17:45:12 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jeff Xu X-Patchwork-Id: 13988621 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 0B4CBC021BB for ; Mon, 24 Feb 2025 17:45:32 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 6CDF6280011; Mon, 24 Feb 2025 12:45:26 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 655FA28000A; Mon, 24 Feb 2025 12:45:26 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 3E671280011; Mon, 24 Feb 2025 12:45:26 -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 1173228000A for ; Mon, 24 Feb 2025 12:45:26 -0500 (EST) Received: from smtpin12.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id B2538C1912 for ; Mon, 24 Feb 2025 17:45:25 +0000 (UTC) X-FDA: 83155565010.12.624524D Received: from mail-pj1-f50.google.com (mail-pj1-f50.google.com [209.85.216.50]) by imf04.hostedemail.com (Postfix) with ESMTP id 8D13140006 for ; Mon, 24 Feb 2025 17:45:23 +0000 (UTC) Authentication-Results: imf04.hostedemail.com; dkim=pass header.d=chromium.org header.s=google header.b=TvZtDQUS; spf=pass (imf04.hostedemail.com: domain of jeffxu@chromium.org designates 209.85.216.50 as permitted sender) smtp.mailfrom=jeffxu@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=1740419123; 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=pPTxJ+9VApNW1wIyXAimG9WYLhdSeBQuD2wh8D+5JoY=; b=BQTpcokuQY4FtbwDEvq5RiYSjRYRcCVyuFqHqhsSB2oVMdpf7lITaGIOAsOuYb6EYCf0nj rPBJWhycFbmgWH4Jm/VQpXiLjrci+vIIxOa+UsjFONyuqUuiFcPrL6HVnnZO8QAfeMCi4j QFiAtHHqBI/SRerFspL4hY/O6gNTdWc= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1740419123; a=rsa-sha256; cv=none; b=MF24zEj5TukYmPa+SnmwYFe9VtVh6GGgUXhyN2Zd0VGj4AiX5cY5ZMo5cFfgsj5JULWFXV UeghomwdsCaH0c1sx+L3V6xCndCjVapAv38BI2XhxKUT6ahifrgxsDul/jnnOjMrHH7VzZ iobxA1yYAir5qBgpKfuABIgXr2PkH6A= ARC-Authentication-Results: i=1; imf04.hostedemail.com; dkim=pass header.d=chromium.org header.s=google header.b=TvZtDQUS; spf=pass (imf04.hostedemail.com: domain of jeffxu@chromium.org designates 209.85.216.50 as permitted sender) smtp.mailfrom=jeffxu@chromium.org; dmarc=pass (policy=none) header.from=chromium.org Received: by mail-pj1-f50.google.com with SMTP id 98e67ed59e1d1-2fc29ac55b5so1223766a91.2 for ; Mon, 24 Feb 2025 09:45:23 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1740419122; x=1741023922; darn=kvack.org; 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=pPTxJ+9VApNW1wIyXAimG9WYLhdSeBQuD2wh8D+5JoY=; b=TvZtDQUSUelJgRkdQYrIGjWEwZ6EQdnLYm5C9dzw4tz2QzksNPEzSGeK/+PuXe25mE sFAgyPbo8MhuFZlRXWXBNbWFkX61JEN9veGlyoT6691ghv9kVhXPpB94D2SIJXBy6OnZ n38vOa6hPN+fWvjBZluKJkSZxok6aqLYo0dxs= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1740419122; x=1741023922; 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=pPTxJ+9VApNW1wIyXAimG9WYLhdSeBQuD2wh8D+5JoY=; b=TL/FJtMJJtQ+95hkg/ZIaVyA9saHVxskWAuQ2s+rNgz+1y2ytOJFxzr+J7+ImTrqDk QctXbHHUTD/Nf+o7A70jLccbAMLB8Q4VR1nawlGmoCNI9SFxJJPeZKD+KwqdnKvMAcb0 +y1MSVBi65/O9waeg2gxrwIvWG5pnRNZp3lO2fLOezfM/Gefh32GI3PNcF37pSoEFDrO zSNtjmliMA0caVoZX8uuRd6Gb42e0EHxoo4oeOx4IEtgprOSHuDrGTmX6UcoE5l9SuBf kcXlwXSulcykWTENJC7BAhbg3YGLM7b1v+lqOMis2u9RJAAzBBSX5z3ptunhcEPP9iv+ 2DYg== X-Forwarded-Encrypted: i=1; AJvYcCV55GVIgD9yqHCnemcZbSa5FS81yfBeWI2Z4asEAhiNaZexiGuqhCUM60wUY+WGtDlg0XgpdQuuwQ==@kvack.org X-Gm-Message-State: AOJu0YykQVxbXsQwP3UEY3Y82kC47ggLgvYQsvoAYxEu5ISDazEsSK+4 t2xL6YIf7lY3BbwAYlHi4QsMW968PAViu2T3URAj0EhzfQZysPo5E0yN8ybyYw== X-Gm-Gg: ASbGncs+3L8w98u2qEutLqL3EFtUqqwWf8iTV+HLfAlo/cfMPxYPNqSMrvfwz1YUr/b KXcWx1ZQai/JIKHRkSqdcFmXcOVmiym5Pno3gKvl6Foqfb+hIwEO8L5D7FMb3AnU00QWwK1/HW0 ffsUcWemacSLobs22dQedPauhaPDd34RTypiEnnYc+jnLcW3Wo4BRzSZZ7StoOElI+smnG9ILGj 0Jf4xx8aCvaFzxfN7TKRjpm/wyKmCM9fkg38UAqxHZ0T00VXtKhTYNDLGi7irRtM5i9YX9VeqMH O2w0XPxHl4Mmdz2LAGgUSCCWwGVUp2qxlPRUWfswl7KwhVgiwtFjHh2Fsomg X-Google-Smtp-Source: AGHT+IHP5BJhLkG1y5WlyMonne7HfrmaKX102f8M0T9GVc1W+S/OC3k6B6HWY8ssc4OyfR7EtUf+nA== X-Received: by 2002:a17:90b:3848:b0:2ee:cbc9:d50b with SMTP id 98e67ed59e1d1-2fce7aef973mr9370465a91.4.1740419121838; Mon, 24 Feb 2025 09:45:21 -0800 (PST) Received: from localhost (201.59.83.34.bc.googleusercontent.com. [34.83.59.201]) by smtp.gmail.com with UTF8SMTPSA id 98e67ed59e1d1-2fceb02d9b4sm7708790a91.6.2025.02.24.09.45.21 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 24 Feb 2025 09:45:21 -0800 (PST) From: jeffxu@chromium.org To: akpm@linux-foundation.org, keescook@chromium.org, jannh@google.com, torvalds@linux-foundation.org, vbabka@suse.cz, lorenzo.stoakes@oracle.com, Liam.Howlett@Oracle.com, adhemerval.zanella@linaro.org, oleg@redhat.com, avagin@gmail.com, benjamin@sipsolutions.net Cc: linux-kernel@vger.kernel.org, linux-hardening@vger.kernel.org, linux-mm@kvack.org, jorgelo@chromium.org, sroettger@google.com, hch@lst.de, ojeda@kernel.org, thomas.weissschuh@linutronix.de, adobriyan@gmail.com, johannes@sipsolutions.net, pedro.falcato@gmail.com, hca@linux.ibm.com, willy@infradead.org, anna-maria@linutronix.de, mark.rutland@arm.com, linus.walleij@linaro.org, Jason@zx2c4.com, deller@gmx.de, rdunlap@infradead.org, davem@davemloft.net, peterx@redhat.com, f.fainelli@gmail.com, gerg@kernel.org, dave.hansen@linux.intel.com, mingo@kernel.org, ardb@kernel.org, mhocko@suse.com, 42.hyeyoo@gmail.com, peterz@infradead.org, ardb@google.com, enh@google.com, rientjes@google.com, groeck@chromium.org, mpe@ellerman.id.au, aleksandr.mikhalitsyn@canonical.com, mike.rapoport@gmail.com, Jeff Xu Subject: [PATCH v6 6/7] mseal, system mappings: uprobe mapping Date: Mon, 24 Feb 2025 17:45:12 +0000 Message-ID: <20250224174513.3600914-7-jeffxu@google.com> X-Mailer: git-send-email 2.48.1.658.g4767266eb4-goog In-Reply-To: <20250224174513.3600914-1-jeffxu@google.com> References: <20250224174513.3600914-1-jeffxu@google.com> MIME-Version: 1.0 X-Rspam-User: X-Rspamd-Queue-Id: 8D13140006 X-Rspamd-Server: rspam07 X-Stat-Signature: oz1dj4tgqdgc19ssseamnbgyejhy8g6s X-HE-Tag: 1740419123-207457 X-HE-Meta: U2FsdGVkX19ZAsJ51nAZSgAW8m6d3BaFdkjdTLsTcrYbjhqQd/XCw4NUZOLxMz2MajlYLn9bDZb8AZ6J3ZVnB0JoGdWlyf0GApGp2FqrWodP+fLbGNj82bsCSAOger/2lPHStgI5vWIHevvrRFeNUrkpVyme3deYlldTlRJe6H9LX1Jd3zboO6GtcyAQSL/tnP1+2Td1RVT4ELRVGErZuHMeK8ZS+qXlrzkBVRteGt3IwcailSAreBJe8rjWd3TBDBg7ANDmMEvhwHaXxAa+5cgW1CCWQBrNHdgVVaBN0gMB3pJKI4SY9qqFT1KbEfPMh5CwhStQGaRJ0AcSYrpn0kWS/qUdsg7C5m6lJmXI/bFTH40q97yHfd6rrmp33e80F9x+wgotU7/ZauRzWUUtAybiaqYyvHDPn1L2DHL5u8lM5roCN/lGWrMjd4cNhzQnUT1xEFAr3DHOuRzKLTLAIYPtJ5ivbJ9II2CBQ9+uhAOLxfv4ZCkb2lR6MEpBffRE9VJCyEfL+8WYIslLwuWFf51uUigd7k+KpNEnTPVEJD6VjP8+Tpn0L7M1Wsxu/IruP3vBGjIDeTuTiWgmy3eKrI1HLKPQZOAd45hfuNZ/nzAOSvKm5X3gGpa0LRgD3Ho65CUXgTLJFU2iwXYryf1Bf+aiYiscngfABSrU3ZgIERpN/hem7lmBdxfc3WlmAehjT07lKFC5X6SkT+d/92JYPoJ4fuR2fFiECF+BYxbqmcyKuIA+5YBQYssxlmqb+86Ru4GZOjFEOniuWZfbmaTuT1FibrUKxG6mWZpITUdfkCx2hpDABjpKkVDRNoCe/4c1JtSh8JTs0ShPNusqrJCRSKyZwtEjdB467ruSri0v3k+HppMdff/U8Zsq+iyH5oRtE1xIXW6WzV42pLEkp4OQy8nhk+TgeWCsJTjTGHS3ZzBFFU9tUMu1uagUiYYKz7RUS/V8Jel2QLj+dtC07zU dOecWAIF cfqPIwCupSA1YmEBSA0Odab5/2FT12GeSe4vYiF0H4LqCwdFVF3E6LdaWg5BUpVMdv0vVa3CLO3JM5m8Z96CRiI8b2l8Y7SwGMbHRkPeUaLpkfN55HzTSl7ZfVH8eMt7nAuLs41XcI+F/SkPrr/pTE1lbRcdy/jeJFJFCPlx9FgYyMABU/QpDLIB5uKSs/M2UX8Ppt+WvIEMrExgKU9QjuyIlBQYEd+PwfKrJJIFv2nf9Gvhg927DmatHEIS1sWJpUdGzc+0BelwobJaxNAWmKYWz9TNs2N9avCN2SkV8WqKUw4rUG2YIzQ5ctLIaASeX1A/j4eXZsIapkxuvp2i3coRCFVGpxIWYBQX8yzp0UokyUKiwwjLuwg4edQ== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000016, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: From: Jeff Xu Provide support to mseal the uprobe mapping. Unlike other system mappings, the uprobe mapping is not established during program startup. However, its lifetime is the same as the process's lifetime. It could be sealed from creation. Signed-off-by: Jeff Xu --- kernel/events/uprobes.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/kernel/events/uprobes.c b/kernel/events/uprobes.c index 2ca797cbe465..c23ca39b81ac 100644 --- a/kernel/events/uprobes.c +++ b/kernel/events/uprobes.c @@ -1662,6 +1662,7 @@ static const struct vm_special_mapping xol_mapping = { static int xol_add_vma(struct mm_struct *mm, struct xol_area *area) { struct vm_area_struct *vma; + unsigned long vm_flags; int ret; if (mmap_write_lock_killable(mm)) @@ -1682,8 +1683,10 @@ static int xol_add_vma(struct mm_struct *mm, struct xol_area *area) } } + vm_flags = VM_EXEC|VM_MAYEXEC|VM_DONTCOPY|VM_IO; + vm_flags |= MSEAL_SYSTEM_MAPPINGS_VM_FLAG; vma = _install_special_mapping(mm, area->vaddr, PAGE_SIZE, - VM_EXEC|VM_MAYEXEC|VM_DONTCOPY|VM_IO, + vm_flags, &xol_mapping); if (IS_ERR(vma)) { ret = PTR_ERR(vma);