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 2095AC83F10 for ; Wed, 9 Jul 2025 13:50:11 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id B4AEC6B00B6; Wed, 9 Jul 2025 09:50:10 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id B22886B011D; Wed, 9 Jul 2025 09:50:10 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id A38436B011E; Wed, 9 Jul 2025 09:50:10 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id 921776B00B6 for ; Wed, 9 Jul 2025 09:50:10 -0400 (EDT) Received: from smtpin08.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 12CD080211 for ; Wed, 9 Jul 2025 13:50:10 +0000 (UTC) X-FDA: 83644860180.08.882F4A9 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by imf07.hostedemail.com (Postfix) with ESMTP id 4DD794000E for ; Wed, 9 Jul 2025 13:50:08 +0000 (UTC) Authentication-Results: imf07.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=pqUhi77p; spf=pass (imf07.hostedemail.com: domain of rppt@kernel.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=rppt@kernel.org; dmarc=pass (policy=quarantine) header.from=kernel.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1752069008; 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=CDYPtR9zc+G+HcXC9UsD3e+ubAnG4CV4NFA0Ydk6ycI=; b=cURd5/euExn1HaWBSZmswgiIsSYlVJJonn3HZ30lUl91fXMLiSIjgKbQDynBf0qJPKmk5d HaGSdN4qT1gU4Qr5lE+jqj7Yzll49k+4S5CV5PFN3b0EpcvigKQS42etrY31VP063ZmYUy OzIpE6/A5oUliN6ACrEhmExSFoRobMI= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1752069008; a=rsa-sha256; cv=none; b=dWFekMTUHHVW4Rjabp+n7IA+/51gvQElTHsd9nTc55w74GHvcS+YprsXpi7EkZUSi/E4G9 49ndOMt7eXwqjdlOs/g3h3GY9NZLhtMTeDGoJzDN5CGoTVlThv/4BDaYiQYlhJFDX/teBS HKgMi5sDj1xW8L7d7wDUXyPLqKIogTQ= ARC-Authentication-Results: i=1; imf07.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=pqUhi77p; spf=pass (imf07.hostedemail.com: domain of rppt@kernel.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=rppt@kernel.org; dmarc=pass (policy=quarantine) header.from=kernel.org Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by dfw.source.kernel.org (Postfix) with ESMTP id 751455C385A; Wed, 9 Jul 2025 13:50:07 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 8CD24C4CEF8; Wed, 9 Jul 2025 13:50:01 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1752069007; bh=Cy9nbTY7/RsVWsT8Lzwrq/nzdX4k1/Ew/ELbVa13ynM=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=pqUhi77pGCtV3tt1XSaEAlSwTSPrlnCtKynuwZKBGvvm2a3hBX1u1HdXX6n2XyZP1 PcdOUyXq5A3sEsMlmgy/FUvWYAaQOsFGIVeWQP3ry8aY5muSVr3P7sSxpopbGs75ai 1MSce67W63oPqC95WRZXbnlkXWPjbim5rnc0DqcpoJPwrsHcsqgJSq3ONwoSWKxmVd Tv0Qif46FGD3GEQrYtiZznj9oLESU9aaBcTEw6X563qJpzcn6d2aKRT8YM0hESsW+7 Yk3RoFidd0OLMIzXn1z5EMdVC54svbGUNEy/q6DzhcxIuQEdSI9J9QRXWbfzIbEDZa +3V8vzpoT6c8g== From: Mike Rapoport To: Andrew Morton Cc: Andy Lutomirski , Borislav Petkov , Christophe Leroy , Daniel Gomez , Dave Hansen , Ingo Molnar , "Liam R. Howlett" , Luis Chamberlain , Mark Rutland , Masami Hiramatsu , Mike Rapoport , "H. Peter Anvin" , Peter Zijlstra , Petr Pavlu , Sami Tolvanen , Steven Rostedt , Thomas Gleixner , Yann Ylavic , linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-modules@vger.kernel.org, linux-trace-kernel@vger.kernel.org, x86@kernel.org Subject: [PATCH v2 4/8] execmem: move execmem_force_rw() and execmem_restore_rox() before use Date: Wed, 9 Jul 2025 16:49:29 +0300 Message-ID: <20250709134933.3848895-5-rppt@kernel.org> X-Mailer: git-send-email 2.47.2 In-Reply-To: <20250709134933.3848895-1-rppt@kernel.org> References: <20250709134933.3848895-1-rppt@kernel.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Rspam-User: X-Rspamd-Server: rspam02 X-Rspamd-Queue-Id: 4DD794000E X-Stat-Signature: n3nutmm6kwu4fhky9i3w4h734ahi8yau X-HE-Tag: 1752069008-974797 X-HE-Meta: U2FsdGVkX1/JxM2JAofSYiwqpXC+l0gsxu/oh4l5rIW3QLUhRstzZuqSysRAFn0e1PNK2DxaLKjmRyUTL2gwRt3RfY5DOrg+vGn6jLE/+plhv09FFM1rn66PbjAzshtuuzQCBwTz/3tc/F00X9sqXuVap6eXpZ0DRGkvLwD+psNlbAiUl+jkFlPmSttX92GDwjSR0fnDSA8MdLdfMLbk/KJDr7Gv0XC0P5jJiv4MiBh3DTPsFyeSDFopFC3JaEloBRgUwXYN/tpwKnPy2DXyc67/iTdw0yG6sdbxB8UfWT79jXMxdvT8cXl8I7S7It03ZOGlKEdPnLQLYUgVJuFebgj6/7UYUPglJNwJrYxM/jkesmqo98RSP4pDRjiPAf2BcbpZXu4sUeSE6f7jJepJeH58sVE9Q/p6INSn8nnsSuiG3iyWVQfALYsY5FSJubOiaoshYVCmn2mJs11qwhH43kT+EUMylsnFFNtqTF+0/3R/c1ARXW1Osro40Fbv5fBs6ganeQCGqsRwjJuJNWYZT/V5zlGSQtZrqQYudkbSjLLwxzg+mKK4JOqDQ6ZslwSWFZMME+PIqZy6C4RAeIIcUwNDtsB9WP+FSL4CHx0v2NvFCyIA3EwSNkqoQSYbLUI6gBoGdIey1xqlvc+ZQqRnQiVfSThR02dGe3dAAg1Kcjp8BzHJkwEjsKwTms03fc/rT4xHR8kdUd/aSxOHWctfFBC+J10YIf+x8nkrdysHmAJgBHIB4c1nL0By9D2zvepCC7Bp8LoNacb+HWiUXq380OkVXhCJ+YIkKDxzK6khxdKxB0wExuhE83Zig5MxcoD1AqZ9F8t+qwou+4/0tfHKqDSm4fna7ynWbEwGSmwcyyCLztZj3u+Nmkw4LNTh89YQh5GJeX4dtUUC8kLE7BvMk+nw3FDSe9UG92OTaZVzNcTKKfpbhbLzeZ2CFh0eChfLxWp/wadSIqGkE4kfsMb QWhGSveI lOvhQiAl5sGIAFTLyBZP2fYVUdpHzSH3RE4e1z6P5Hs54dZjjqPzS1Z/EDw/NYpoy/ttfyakruazM8kY2a6W5ggPnN6sj0ZyC24WTMO3yzNNf/NTcFviy8Z8ZP2gHQaXhuh6TN8H8L3xX8VdQTxEGg0r4yu3pKTZSCFzT52/MdHSSCH4nf+S3i3DijcPcYh5Hqk0xl98mPRU5Rra6f093EgRxHDPu3u/CtRNp9Pcup9G8YZ05KP5nibm4iwtYns8kZgarHHdDkUjktKad+fYOwjqk0rEavF6ZXumghHgbIj3uNhQWLg/Kr5AwUIinNwMiOxzG1RqfmgvFFUQFKvehkQ1qbvJUWOzIToSZZ4ASpB1u1CNsAhMxgjn5ubhEpiQv3UMQ 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: List-Subscribe: List-Unsubscribe: From: "Mike Rapoport (Microsoft)" to avoid static declarations. Signed-off-by: Mike Rapoport (Microsoft) --- mm/execmem.c | 44 +++++++++++++++++++++----------------------- 1 file changed, 21 insertions(+), 23 deletions(-) diff --git a/mm/execmem.c b/mm/execmem.c index 4670e97f8e4e..056d3caaf4a1 100644 --- a/mm/execmem.c +++ b/mm/execmem.c @@ -137,6 +137,27 @@ static int execmem_set_direct_map_valid(struct vm_struct *vm, bool valid) return err; } +static int execmem_force_rw(void *ptr, size_t size) +{ + unsigned int nr = PAGE_ALIGN(size) >> PAGE_SHIFT; + unsigned long addr = (unsigned long)ptr; + int ret; + + ret = set_memory_nx(addr, nr); + if (ret) + return ret; + + return set_memory_rw(addr, nr); +} + +int execmem_restore_rox(void *ptr, size_t size) +{ + unsigned int nr = PAGE_ALIGN(size) >> PAGE_SHIFT; + unsigned long addr = (unsigned long)ptr; + + return set_memory_rox(addr, nr); +} + static void execmem_cache_clean(struct work_struct *work) { struct maple_tree *free_areas = &execmem_cache.free_areas; @@ -328,8 +349,6 @@ static inline void *pending_free_clear(void *ptr) return (void *)((unsigned long)ptr & ~PENDING_FREE_MASK); } -static int execmem_force_rw(void *ptr, size_t size); - static int __execmem_cache_free(struct ma_state *mas, void *ptr, gfp_t gfp_mask) { size_t size = mas_range_len(mas); @@ -415,27 +434,6 @@ static bool execmem_cache_free(void *ptr) return true; } -static int execmem_force_rw(void *ptr, size_t size) -{ - unsigned int nr = PAGE_ALIGN(size) >> PAGE_SHIFT; - unsigned long addr = (unsigned long)ptr; - int ret; - - ret = set_memory_nx(addr, nr); - if (ret) - return ret; - - return set_memory_rw(addr, nr); -} - -int execmem_restore_rox(void *ptr, size_t size) -{ - unsigned int nr = PAGE_ALIGN(size) >> PAGE_SHIFT; - unsigned long addr = (unsigned long)ptr; - - return set_memory_rox(addr, nr); -} - #else /* CONFIG_ARCH_HAS_EXECMEM_ROX */ /* * when ROX cache is not used the permissions defined by architectures for -- 2.47.2