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 0542EC8303D for ; Fri, 4 Jul 2025 13:50:18 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 989CF6B804C; Fri, 4 Jul 2025 09:50:17 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 8E6196B803F; Fri, 4 Jul 2025 09:50:17 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 789086B804C; Fri, 4 Jul 2025 09:50:17 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 611EC6B803F for ; Fri, 4 Jul 2025 09:50:17 -0400 (EDT) Received: from smtpin28.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id E6DF0B6F0C for ; Fri, 4 Jul 2025 13:50:16 +0000 (UTC) X-FDA: 83626716432.28.082F10A Received: from nyc.source.kernel.org (nyc.source.kernel.org [147.75.193.91]) by imf15.hostedemail.com (Postfix) with ESMTP id 83343A0008 for ; Fri, 4 Jul 2025 13:50:15 +0000 (UTC) Authentication-Results: imf15.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=lYXunHQQ; spf=pass (imf15.hostedemail.com: domain of rppt@kernel.org designates 147.75.193.91 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=1751637015; 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=cL85dqgJh8rMS+Wc4O0V7gR/tO0vl1SzM8qtV0NKd28=; b=c0nEDb36c60E0wexudRoUiSy2a5wD5fyzol7WePH0IUsdmJSZ66HTbDvegQtbU2aSdpoy3 5eWL/XAmLPzLix8tfiIw7kjGLULeFVQ2BWS+bLiKeCHbPtz8CkBWf0ZwhhXC9d0HWycpjh CbELDBCGlEyQjBv2yRLR+8UWuQV4ocM= ARC-Authentication-Results: i=1; imf15.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=lYXunHQQ; spf=pass (imf15.hostedemail.com: domain of rppt@kernel.org designates 147.75.193.91 as permitted sender) smtp.mailfrom=rppt@kernel.org; dmarc=pass (policy=quarantine) header.from=kernel.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1751637015; a=rsa-sha256; cv=none; b=u/EJS4RHOr45KrHPVZ/UOl+9IYUbaAbDEX8fpNrqieWz6k0LSTaR8EpsBuUS9u0JVtSQpz rqsjjxB/oYzIgT9uDjk2GLYMfvUuNvoC4r6FmGzKyDgWB0iNadTUud5/4RpZYnEMH/R1EG YlgseN0kYORVjeFfbA6ceLnKr42IyMc= Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by nyc.source.kernel.org (Postfix) with ESMTP id CB302A53C4E; Fri, 4 Jul 2025 13:50:14 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 85F10C4CEF2; Fri, 4 Jul 2025 13:50:09 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1751637014; bh=ekIwqw7pcIPGCmYh23KJrg3hSMMH1+4weybXeR57thU=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=lYXunHQQS4Sf3pr+dPZ9lYeaAI+n4jw/7nwIoOrVZsWb2Q4gaKa1YzTt/ElGU7tN9 0qKqmk0pvsTKQDpXaO2TpSmlTRyqa8OAEU/1fHDtYJdUn605+KEBdvoJWI90DqPgpr PTnJ7xu+hMkerN6GeHmTvBARoLGZ9YNptJ6q/jCbF9WxC/UPjVlQ2ApO8io1D1QgYg TC+tfJjIpEyB411e6C9zyOe+6d0hGBwYX7++uarI2XlpcZrDlNAMylymrlYVd4W8kB nj20K765ZTibqLHYV6tuRsCyPhe403p3Ajhnqxgswy37kz0uNU1Tiyud9xOtaoTyRL QficFfSvv8d3w== From: Mike Rapoport To: Andrew Morton Cc: Andy Lutomirski , Borislav Petkov , Daniel Gomez , Dave Hansen , Ingo Molnar , Luis Chamberlain , Mark Rutland , Masami Hiramatsu , Mike Rapoport , "H. Peter Anvin" , Peter Zijlstra , Petr Pavlu , Sami Tolvanen , Steven Rostedt , Thomas Gleixner , 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 4/8] execmem: move execmem_force_rw() and execmem_restore_rox() before use Date: Fri, 4 Jul 2025 16:49:39 +0300 Message-ID: <20250704134943.3524829-5-rppt@kernel.org> X-Mailer: git-send-email 2.47.2 In-Reply-To: <20250704134943.3524829-1-rppt@kernel.org> References: <20250704134943.3524829-1-rppt@kernel.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Rspam-User: X-Rspamd-Queue-Id: 83343A0008 X-Rspamd-Server: rspam09 X-Stat-Signature: id518k7fmmsyts8d443jwmwprbkzod7z X-HE-Tag: 1751637015-592921 X-HE-Meta: U2FsdGVkX18WoLvSGv1Zngvao9ok2pRmady+AO0/q6RFWTEQztAOYHu/bcWZcBuANl+ozwLMVvHSkQXIHfKVur73aQcoaEBaAcE95BUWd1/WiRPmjOiOxOmSGBZUyJdjFYpLeTcxI6J3lEiMxtjerYxCWYpzAbR4+/OacaU0QliY7XD6VZjFVAuyJZ0cqk9RvDC2wdrnHHDnvcFISSuWF0imLJCJIhgX+fViGgi1ZV88cu0h+yv7cLb/ydtxHWUjrUsD6dC+qB2nndYmNCAKT2IrI/hDOORyJT/63PjjPq0pYYCm4Fl6rJXTa95VFjbXZN0/Imn3n/X1UzFvy5i5ZeQGGQjzpUH0HD1+vuGYMIesljRNlWN+3E6/sNNQ2W6ai5hXPW+3UQphwJ0brg/vFBgjUVcz5D0duxeJc8RqNV2IvHJJ0CNnm+T6NoFCjm0X7x3mk17il7UP6jaBAo9O3XKsA/Ay8TKMaWOjYXRk9xYIJc7mJaJALt1NcH6lkOTZItDrFzDRriSMgRh9s/ZLT5RQxi449uuqMG8C+R4KzB/J3cM85cYUw5DMajyKG50uNtFNFfqVYzCP+hlpcnHdElF6CHLRmJmG1Sejox/G+B/7kptmbgAe4kFzarOGfNZXLI36bAgQAI7GEb/UktGISZ1zOpLUPH8VMuQAsv9cARS5tcLON0/Gk1Hfzm7zaFmBRCYJ5u8j9JYaiByY6P/8SUZDYakaQZD21ceDT/JaQb3U1QYkxyOvtm2kZiDtl0ZjRLTfHtridumvEqzzQAxYl1q5mxXBgfu+0Pna6u15nRG001+1qn13Fy20KKi0O5p+ijfsZOxepTFP9t7JH6WAGZcio2np6V59HTBlb09XLijK2R6P2xNouGbcmRyQIlYI1BAbCwBB7T+k3jjfTSTirglvRCOyG/ncbjQrjVK64+N1ugHq8fGKW/LeBdYWGs+LJMpL+wdVLRU97hxuWaR YQtOpFuP sdaSBzRVMlbNHN7hDLSfyJDe3PlKrW8LUC9Qpnt2nmeGSH4s= 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 1cc781244593..3cb3a9d1c93f 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); @@ -410,27 +429,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