From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id E762D15E97; Sat, 20 Apr 2024 09:15:11 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1713604512; cv=none; b=XkvVgKg40754WGadFyEP5bPSTb6qIzsLABd/NEOmdfxp1uULQTqydmU8LlnEWZJVp0Ksg0i6nl+FJD7LQox7GL3dTy1bXE5Mkzx54enwU7x2Bx8Cex8pD+40AZQJ3rL8SJohMnYQfI2GPtIE8ZavBE96euD54zytdK81UQqL1mE= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1713604512; c=relaxed/simple; bh=gV7rq1jKylsNR0A2TW7KiHW+6f/l5HNOVcKuwfOfcOQ=; h=Date:From:To:Cc:Subject:Message-Id:In-Reply-To:References: Mime-Version:Content-Type; b=LBjTs2hbsPCIAlgtvKbUgbsqypO+T/7MtQzE4jgD+cAGVxcc/xrDf3ITUoWA3LzKWAe+LFhGzal4YkujVQ82v0vsslL9Zf9vUHB720HlqtGt/Mhhms+vjPgP/FaA0CQqXRlnThRmYxpCklI99eVO7DbFyJknsUMnJ0Opqdz7VPA= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=aBds/mgW; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="aBds/mgW" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 25CFFC072AA; Sat, 20 Apr 2024 09:15:01 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1713604511; bh=gV7rq1jKylsNR0A2TW7KiHW+6f/l5HNOVcKuwfOfcOQ=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=aBds/mgWklBGTNfKNq4+Z+94Zp0L3MS4pRFwWjdivOkW3wt77ZSOQfMjY+YYfJZ22 EbOsSdkOWssNdBi3AWqliDK9OwzxsFKXe7srGGHbb4foIL1rR+4xeE7wz/4thWRvf3 BmKK1D9Se8H0/h0Uw/vLAld6i8akxChgiSs8Oa4Avx+zJ1C5hFs5npdPznTRfCWZrf th5mEJA/mw5c94mvYsJOBeAvvZwpVWPpCkBwxsqSy7LgrPU1ayqlu8b38rvXCOVsAE WTdAfWWtTcOpMJCjvDynmh95BCxhT0vOjYzaGiV5GDS7KPjZZmh5efTkoPiO6btvOI JgxLZzkBg4/CA== Date: Sat, 20 Apr 2024 18:15:00 +0900 From: Masami Hiramatsu (Google) To: Mike Rapoport Cc: Christophe Leroy , "linux-kernel@vger.kernel.org" , Alexandre Ghiti , Andrew Morton , =?UTF-8?B?QmrDtnJuIFTDtnBlbA==?= , Catalin Marinas , "David S. Miller" , Dinh Nguyen , Donald Dutile , Eric Chanudet , Heiko Carstens , Helge Deller , Huacai Chen , Kent Overstreet , Luis Chamberlain , Mark Rutland , Michael Ellerman , Nadav Amit , Palmer Dabbelt , Puranjay Mohan , Rick Edgecombe , Russell King , Song Liu , Steven Rostedt , Thomas Bogendoerfer , Thomas Gleixner , Will Deacon , "bpf@vger.kernel.org" , "linux-arch@vger.kernel.org" , "linux-arm-kernel@lists.infradead.org" , "linux-mips@vger.kernel.org" , "linux-mm@kvack.org" , "linux-modules@vger.kernel.org" , "linux-parisc@vger.kernel.org" , "linux-riscv@lists.infradead.org" , "linux-s390@vger.kernel.org" , "linux-trace-kernel@vger.kernel.org" , "linuxppc-dev@lists.ozlabs.org" , "loongarch@lists.linux.dev" , "netdev@vger.kernel.org" , "sparclinux@vger.kernel.org" , "x86@kernel.org" Subject: Re: [PATCH v4 14/15] kprobes: remove dependency on CONFIG_MODULES Message-Id: <20240420181500.07b39c77f1ca086e8a5161b4@kernel.org> In-Reply-To: References: <20240411160051.2093261-1-rppt@kernel.org> <20240411160051.2093261-15-rppt@kernel.org> <20240418061615.5fad23b954bf317c029acc4d@gmail.com> <321def3e-8bf1-4920-92dd-037b20f1272d@csgroup.eu> X-Mailer: Sylpheed 3.7.0 (GTK+ 2.24.33; x86_64-pc-linux-gnu) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit On Sat, 20 Apr 2024 10:33:38 +0300 Mike Rapoport wrote: > On Fri, Apr 19, 2024 at 03:59:40PM +0000, Christophe Leroy wrote: > > > > > > Le 19/04/2024 à 17:49, Mike Rapoport a écrit : > > > Hi Masami, > > > > > > On Thu, Apr 18, 2024 at 06:16:15AM +0900, Masami Hiramatsu wrote: > > >> Hi Mike, > > >> > > >> On Thu, 11 Apr 2024 19:00:50 +0300 > > >> Mike Rapoport wrote: > > >> > > >>> From: "Mike Rapoport (IBM)" > > >>> > > >>> kprobes depended on CONFIG_MODULES because it has to allocate memory for > > >>> code. > > >>> > > >>> Since code allocations are now implemented with execmem, kprobes can be > > >>> enabled in non-modular kernels. > > >>> > > >>> Add #ifdef CONFIG_MODULE guards for the code dealing with kprobes inside > > >>> modules, make CONFIG_KPROBES select CONFIG_EXECMEM and drop the > > >>> dependency of CONFIG_KPROBES on CONFIG_MODULES. > > >> > > >> Thanks for this work, but this conflicts with the latest fix in v6.9-rc4. > > >> Also, can you use IS_ENABLED(CONFIG_MODULES) instead of #ifdefs in > > >> function body? We have enough dummy functions for that, so it should > > >> not make a problem. > > > > > > The code in check_kprobe_address_safe() that gets the module and checks for > > > __init functions does not compile with IS_ENABLED(CONFIG_MODULES). > > > I can pull it out to a helper or leave #ifdef in the function body, > > > whichever you prefer. > > > > As far as I can see, the only problem is MODULE_STATE_COMING. > > Can we move 'enum module_state' out of #ifdef CONFIG_MODULES in module.h ? > > There's dereference of 'struct module' there: > > (*probed_mod)->state != MODULE_STATE_COMING) { > ... > } > > so moving out 'enum module_state' won't be enough. Hmm, this part should be inline functions like; #ifdef CONFIG_MODULES static inline bool module_is_coming(struct module *mod) { return mod->state == MODULE_STATE_COMING; } #else #define module_is_coming(mod) (false) #endif Then we don't need the enum. Thank you, > > > > > > >> -- > > >> Masami Hiramatsu > > > > > -- > Sincerely yours, > Mike. > -- Masami Hiramatsu (Google) 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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 3B737C05023 for ; Sat, 20 Apr 2024 09:15:23 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:Mime-Version:References:In-Reply-To: Message-Id:Subject:Cc:To:From:Date:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=9jLgJwZdjcKaC6lieDSx1pqEP4nEdYL7MftCoBiIqNg=; b=aM1lNuArlvaxnd AB/tkAelZ+xPnfKHaAZZxjdMScDwAlhXcpUSnNT0l7LeR5TgzJyQMGm4yHrRezObjthw7tC71Dy0t e5mE4p1smqJurwyt4AhH5lrvC1QAl/WQHDgR9DCtwMyP8UQIXntoA5mottkE13nW27UDRaKxXWLEG VgqjhbYeppz2I/XI02tE143qNS15vFE5zCqQLbDVVlBEELldGoNSr/GFm80p3/qWg1S8ZCfysaLpP o4vJkMp6YsqywbYlsopsduuYUpRcOOz/iBaFSCviOcYk/2AyY2g/NzBPQAIGWFY7IZ3CE2fStHuDx CoFgqXZMMio5fs/CQwzg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1ry6oY-00000008BHE-1alI; Sat, 20 Apr 2024 09:15:18 +0000 Received: from sin.source.kernel.org ([2604:1380:40e1:4800::1]) by bombadil.infradead.org with esmtps (Exim 4.97.1 #2 (Red Hat Linux)) id 1ry6oU-00000008BFF-14po; Sat, 20 Apr 2024 09:15:15 +0000 Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by sin.source.kernel.org (Postfix) with ESMTP id 58511CE0B43; Sat, 20 Apr 2024 09:15:12 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 25CFFC072AA; Sat, 20 Apr 2024 09:15:01 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1713604511; bh=gV7rq1jKylsNR0A2TW7KiHW+6f/l5HNOVcKuwfOfcOQ=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=aBds/mgWklBGTNfKNq4+Z+94Zp0L3MS4pRFwWjdivOkW3wt77ZSOQfMjY+YYfJZ22 EbOsSdkOWssNdBi3AWqliDK9OwzxsFKXe7srGGHbb4foIL1rR+4xeE7wz/4thWRvf3 BmKK1D9Se8H0/h0Uw/vLAld6i8akxChgiSs8Oa4Avx+zJ1C5hFs5npdPznTRfCWZrf th5mEJA/mw5c94mvYsJOBeAvvZwpVWPpCkBwxsqSy7LgrPU1ayqlu8b38rvXCOVsAE WTdAfWWtTcOpMJCjvDynmh95BCxhT0vOjYzaGiV5GDS7KPjZZmh5efTkoPiO6btvOI JgxLZzkBg4/CA== Date: Sat, 20 Apr 2024 18:15:00 +0900 From: Masami Hiramatsu (Google) To: Mike Rapoport Cc: Christophe Leroy , "linux-kernel@vger.kernel.org" , Alexandre Ghiti , Andrew Morton , =?UTF-8?B?QmrDtnJuIFTDtnBlbA==?= , Catalin Marinas , "David S. Miller" , Dinh Nguyen , Donald Dutile , Eric Chanudet , Heiko Carstens , Helge Deller , Huacai Chen , Kent Overstreet , Luis Chamberlain , Mark Rutland , Michael Ellerman , Nadav Amit , Palmer Dabbelt , Puranjay Mohan , Rick Edgecombe , Russell King , Song Liu , Steven Rostedt , Thomas Bogendoerfer , Thomas Gleixner , Will Deacon , "bpf@vger.kernel.org" , "linux-arch@vger.kernel.org" , "linux-arm-kernel@lists.infradead.org" , "linux-mips@vger.kernel.org" , "linux-mm@kvack.org" , "linux-modules@vger.kernel.org" , "linux-parisc@vger.kernel.org" , "linux-riscv@lists.infradead.org" , "linux-s390@vger.kernel.org" , "linux-trace-kernel@vger.kernel.org" , "linuxppc-dev@lists.ozlabs.org" , "loongarch@lists.linux.dev" , "netdev@vger.kernel.org" , "sparclinux@vger.kernel.org" , "x86@kernel.org" Subject: Re: [PATCH v4 14/15] kprobes: remove dependency on CONFIG_MODULES Message-Id: <20240420181500.07b39c77f1ca086e8a5161b4@kernel.org> In-Reply-To: References: <20240411160051.2093261-1-rppt@kernel.org> <20240411160051.2093261-15-rppt@kernel.org> <20240418061615.5fad23b954bf317c029acc4d@gmail.com> <321def3e-8bf1-4920-92dd-037b20f1272d@csgroup.eu> X-Mailer: Sylpheed 3.7.0 (GTK+ 2.24.33; x86_64-pc-linux-gnu) Mime-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20240420_021514_700323_1A1AFC46 X-CRM114-Status: GOOD ( 28.53 ) X-BeenThere: linux-riscv@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-riscv" Errors-To: linux-riscv-bounces+linux-riscv=archiver.kernel.org@lists.infradead.org T24gU2F0LCAyMCBBcHIgMjAyNCAxMDozMzozOCArMDMwMApNaWtlIFJhcG9wb3J0IDxycHB0QGtl cm5lbC5vcmc+IHdyb3RlOgoKPiBPbiBGcmksIEFwciAxOSwgMjAyNCBhdCAwMzo1OTo0MFBNICsw MDAwLCBDaHJpc3RvcGhlIExlcm95IHdyb3RlOgo+ID4gCj4gPiAKPiA+IExlIDE5LzA0LzIwMjQg w6AgMTc6NDksIE1pa2UgUmFwb3BvcnQgYSDDqWNyaXTCoDoKPiA+ID4gSGkgTWFzYW1pLAo+ID4g PiAKPiA+ID4gT24gVGh1LCBBcHIgMTgsIDIwMjQgYXQgMDY6MTY6MTVBTSArMDkwMCwgTWFzYW1p IEhpcmFtYXRzdSB3cm90ZToKPiA+ID4+IEhpIE1pa2UsCj4gPiA+Pgo+ID4gPj4gT24gVGh1LCAx MSBBcHIgMjAyNCAxOTowMDo1MCArMDMwMAo+ID4gPj4gTWlrZSBSYXBvcG9ydCA8cnBwdEBrZXJu ZWwub3JnPiB3cm90ZToKPiA+ID4+Cj4gPiA+Pj4gRnJvbTogIk1pa2UgUmFwb3BvcnQgKElCTSki IDxycHB0QGtlcm5lbC5vcmc+Cj4gPiA+Pj4KPiA+ID4+PiBrcHJvYmVzIGRlcGVuZGVkIG9uIENP TkZJR19NT0RVTEVTIGJlY2F1c2UgaXQgaGFzIHRvIGFsbG9jYXRlIG1lbW9yeSBmb3IKPiA+ID4+ PiBjb2RlLgo+ID4gPj4+Cj4gPiA+Pj4gU2luY2UgY29kZSBhbGxvY2F0aW9ucyBhcmUgbm93IGlt cGxlbWVudGVkIHdpdGggZXhlY21lbSwga3Byb2JlcyBjYW4gYmUKPiA+ID4+PiBlbmFibGVkIGlu IG5vbi1tb2R1bGFyIGtlcm5lbHMuCj4gPiA+Pj4KPiA+ID4+PiBBZGQgI2lmZGVmIENPTkZJR19N T0RVTEUgZ3VhcmRzIGZvciB0aGUgY29kZSBkZWFsaW5nIHdpdGgga3Byb2JlcyBpbnNpZGUKPiA+ ID4+PiBtb2R1bGVzLCBtYWtlIENPTkZJR19LUFJPQkVTIHNlbGVjdCBDT05GSUdfRVhFQ01FTSBh bmQgZHJvcCB0aGUKPiA+ID4+PiBkZXBlbmRlbmN5IG9mIENPTkZJR19LUFJPQkVTIG9uIENPTkZJ R19NT0RVTEVTLgo+ID4gPj4KPiA+ID4+IFRoYW5rcyBmb3IgdGhpcyB3b3JrLCBidXQgdGhpcyBj b25mbGljdHMgd2l0aCB0aGUgbGF0ZXN0IGZpeCBpbiB2Ni45LXJjNC4KPiA+ID4+IEFsc28sIGNh biB5b3UgdXNlIElTX0VOQUJMRUQoQ09ORklHX01PRFVMRVMpIGluc3RlYWQgb2YgI2lmZGVmcyBp bgo+ID4gPj4gZnVuY3Rpb24gYm9keT8gV2UgaGF2ZSBlbm91Z2ggZHVtbXkgZnVuY3Rpb25zIGZv ciB0aGF0LCBzbyBpdCBzaG91bGQKPiA+ID4+IG5vdCBtYWtlIGEgcHJvYmxlbS4KPiA+ID4gCj4g PiA+IFRoZSBjb2RlIGluIGNoZWNrX2twcm9iZV9hZGRyZXNzX3NhZmUoKSB0aGF0IGdldHMgdGhl IG1vZHVsZSBhbmQgY2hlY2tzIGZvcgo+ID4gPiBfX2luaXQgZnVuY3Rpb25zIGRvZXMgbm90IGNv bXBpbGUgd2l0aCBJU19FTkFCTEVEKENPTkZJR19NT0RVTEVTKS4KPiA+ID4gSSBjYW4gcHVsbCBp dCBvdXQgdG8gYSBoZWxwZXIgb3IgbGVhdmUgI2lmZGVmIGluIHRoZSBmdW5jdGlvbiBib2R5LAo+ ID4gPiB3aGljaGV2ZXIgeW91IHByZWZlci4KPiA+IAo+ID4gQXMgZmFyIGFzIEkgY2FuIHNlZSwg dGhlIG9ubHkgcHJvYmxlbSBpcyBNT0RVTEVfU1RBVEVfQ09NSU5HLgo+ID4gQ2FuIHdlIG1vdmUg J2VudW0gbW9kdWxlX3N0YXRlJyBvdXQgb2YgI2lmZGVmIENPTkZJR19NT0RVTEVTIGluIG1vZHVs ZS5oICA/Cj4gCj4gVGhlcmUncyBkZXJlZmVyZW5jZSBvZiAnc3RydWN0IG1vZHVsZScgdGhlcmU6 Cj4gIAo+IAkJKCpwcm9iZWRfbW9kKS0+c3RhdGUgIT0gTU9EVUxFX1NUQVRFX0NPTUlORykgewo+ IAkJCS4uLgo+IAkJfQo+IAo+IHNvIG1vdmluZyBvdXQgJ2VudW0gbW9kdWxlX3N0YXRlJyB3b24n dCBiZSBlbm91Z2guCgpIbW0sIHRoaXMgcGFydCBzaG91bGQgYmUgaW5saW5lIGZ1bmN0aW9ucyBs aWtlOwoKI2lmZGVmIENPTkZJR19NT0RVTEVTCnN0YXRpYyBpbmxpbmUgYm9vbCBtb2R1bGVfaXNf Y29taW5nKHN0cnVjdCBtb2R1bGUgKm1vZCkKewoJcmV0dXJuIG1vZC0+c3RhdGUgPT0gTU9EVUxF X1NUQVRFX0NPTUlORzsKfQojZWxzZQojZGVmaW5lIG1vZHVsZV9pc19jb21pbmcobW9kKSAoZmFs c2UpCiNlbmRpZgoKVGhlbiB3ZSBkb24ndCBuZWVkIHRoZSBlbnVtLgpUaGFuayB5b3UsCgo+ICAK PiA+ID4gICAKPiA+ID4+IC0tIAo+ID4gPj4gTWFzYW1pIEhpcmFtYXRzdQo+ID4gPiAKPiAKPiAt LSAKPiBTaW5jZXJlbHkgeW91cnMsCj4gTWlrZS4KPiAKCgotLSAKTWFzYW1pIEhpcmFtYXRzdSAo R29vZ2xlKSA8bWhpcmFtYXRAa2VybmVsLm9yZz4KCl9fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fCmxpbnV4LXJpc2N2IG1haWxpbmcgbGlzdApsaW51eC1yaXNj dkBsaXN0cy5pbmZyYWRlYWQub3JnCmh0dHA6Ly9saXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4v bGlzdGluZm8vbGludXgtcmlzY3YK 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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id BCAAAC4345F for ; Sat, 20 Apr 2024 09:15:29 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:Mime-Version:References:In-Reply-To: Message-Id:Subject:Cc:To:From:Date:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=TGSqw6yO6iM1ZGh0WsPgODRWWHkeJCuvKhxdkxOJbA4=; b=CgIx85cfbgryjF SvpbN4mdh+4wQmf06gZNhA4vSHGk4BTCpSpyOHiBOKSc1d37hySC4HC5jDV06yAZpsb5VMVSi/q5V BZMWJVYq/tSb45cdBxy5NHpkD0SbCm3TdqnpMFbrV3nmuoZRiZZOnHISWZSzyYf3SN3DQ3gj3zDqD WMoiJajce4szNthirNwe2p2W2EcLADCd8JRyOCjVs2SFoXG7z2WpJiYhy8vaczePHJimipvugLTZ+ cV6OqM9FhF2+LIbHH8Ax2fRbHNiJLwuImbjLvxU8Bs/cCjiI7A1vDSDKk1tNS+v5RKudxNy6h8X8z 0gD5UlEq/HH7pyOka/JA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1ry6oX-00000008BGw-2xyw; Sat, 20 Apr 2024 09:15:17 +0000 Received: from sin.source.kernel.org ([2604:1380:40e1:4800::1]) by bombadil.infradead.org with esmtps (Exim 4.97.1 #2 (Red Hat Linux)) id 1ry6oU-00000008BFF-14po; Sat, 20 Apr 2024 09:15:15 +0000 Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by sin.source.kernel.org (Postfix) with ESMTP id 58511CE0B43; Sat, 20 Apr 2024 09:15:12 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 25CFFC072AA; Sat, 20 Apr 2024 09:15:01 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1713604511; bh=gV7rq1jKylsNR0A2TW7KiHW+6f/l5HNOVcKuwfOfcOQ=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=aBds/mgWklBGTNfKNq4+Z+94Zp0L3MS4pRFwWjdivOkW3wt77ZSOQfMjY+YYfJZ22 EbOsSdkOWssNdBi3AWqliDK9OwzxsFKXe7srGGHbb4foIL1rR+4xeE7wz/4thWRvf3 BmKK1D9Se8H0/h0Uw/vLAld6i8akxChgiSs8Oa4Avx+zJ1C5hFs5npdPznTRfCWZrf th5mEJA/mw5c94mvYsJOBeAvvZwpVWPpCkBwxsqSy7LgrPU1ayqlu8b38rvXCOVsAE WTdAfWWtTcOpMJCjvDynmh95BCxhT0vOjYzaGiV5GDS7KPjZZmh5efTkoPiO6btvOI JgxLZzkBg4/CA== Date: Sat, 20 Apr 2024 18:15:00 +0900 From: Masami Hiramatsu (Google) To: Mike Rapoport Cc: Christophe Leroy , "linux-kernel@vger.kernel.org" , Alexandre Ghiti , Andrew Morton , =?UTF-8?B?QmrDtnJuIFTDtnBlbA==?= , Catalin Marinas , "David S. Miller" , Dinh Nguyen , Donald Dutile , Eric Chanudet , Heiko Carstens , Helge Deller , Huacai Chen , Kent Overstreet , Luis Chamberlain , Mark Rutland , Michael Ellerman , Nadav Amit , Palmer Dabbelt , Puranjay Mohan , Rick Edgecombe , Russell King , Song Liu , Steven Rostedt , Thomas Bogendoerfer , Thomas Gleixner , Will Deacon , "bpf@vger.kernel.org" , "linux-arch@vger.kernel.org" , "linux-arm-kernel@lists.infradead.org" , "linux-mips@vger.kernel.org" , "linux-mm@kvack.org" , "linux-modules@vger.kernel.org" , "linux-parisc@vger.kernel.org" , "linux-riscv@lists.infradead.org" , "linux-s390@vger.kernel.org" , "linux-trace-kernel@vger.kernel.org" , "linuxppc-dev@lists.ozlabs.org" , "loongarch@lists.linux.dev" , "netdev@vger.kernel.org" , "sparclinux@vger.kernel.org" , "x86@kernel.org" Subject: Re: [PATCH v4 14/15] kprobes: remove dependency on CONFIG_MODULES Message-Id: <20240420181500.07b39c77f1ca086e8a5161b4@kernel.org> In-Reply-To: References: <20240411160051.2093261-1-rppt@kernel.org> <20240411160051.2093261-15-rppt@kernel.org> <20240418061615.5fad23b954bf317c029acc4d@gmail.com> <321def3e-8bf1-4920-92dd-037b20f1272d@csgroup.eu> X-Mailer: Sylpheed 3.7.0 (GTK+ 2.24.33; x86_64-pc-linux-gnu) Mime-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20240420_021514_700323_1A1AFC46 X-CRM114-Status: GOOD ( 28.53 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org T24gU2F0LCAyMCBBcHIgMjAyNCAxMDozMzozOCArMDMwMApNaWtlIFJhcG9wb3J0IDxycHB0QGtl cm5lbC5vcmc+IHdyb3RlOgoKPiBPbiBGcmksIEFwciAxOSwgMjAyNCBhdCAwMzo1OTo0MFBNICsw MDAwLCBDaHJpc3RvcGhlIExlcm95IHdyb3RlOgo+ID4gCj4gPiAKPiA+IExlIDE5LzA0LzIwMjQg w6AgMTc6NDksIE1pa2UgUmFwb3BvcnQgYSDDqWNyaXTCoDoKPiA+ID4gSGkgTWFzYW1pLAo+ID4g PiAKPiA+ID4gT24gVGh1LCBBcHIgMTgsIDIwMjQgYXQgMDY6MTY6MTVBTSArMDkwMCwgTWFzYW1p IEhpcmFtYXRzdSB3cm90ZToKPiA+ID4+IEhpIE1pa2UsCj4gPiA+Pgo+ID4gPj4gT24gVGh1LCAx MSBBcHIgMjAyNCAxOTowMDo1MCArMDMwMAo+ID4gPj4gTWlrZSBSYXBvcG9ydCA8cnBwdEBrZXJu ZWwub3JnPiB3cm90ZToKPiA+ID4+Cj4gPiA+Pj4gRnJvbTogIk1pa2UgUmFwb3BvcnQgKElCTSki IDxycHB0QGtlcm5lbC5vcmc+Cj4gPiA+Pj4KPiA+ID4+PiBrcHJvYmVzIGRlcGVuZGVkIG9uIENP TkZJR19NT0RVTEVTIGJlY2F1c2UgaXQgaGFzIHRvIGFsbG9jYXRlIG1lbW9yeSBmb3IKPiA+ID4+ PiBjb2RlLgo+ID4gPj4+Cj4gPiA+Pj4gU2luY2UgY29kZSBhbGxvY2F0aW9ucyBhcmUgbm93IGlt cGxlbWVudGVkIHdpdGggZXhlY21lbSwga3Byb2JlcyBjYW4gYmUKPiA+ID4+PiBlbmFibGVkIGlu IG5vbi1tb2R1bGFyIGtlcm5lbHMuCj4gPiA+Pj4KPiA+ID4+PiBBZGQgI2lmZGVmIENPTkZJR19N T0RVTEUgZ3VhcmRzIGZvciB0aGUgY29kZSBkZWFsaW5nIHdpdGgga3Byb2JlcyBpbnNpZGUKPiA+ ID4+PiBtb2R1bGVzLCBtYWtlIENPTkZJR19LUFJPQkVTIHNlbGVjdCBDT05GSUdfRVhFQ01FTSBh bmQgZHJvcCB0aGUKPiA+ID4+PiBkZXBlbmRlbmN5IG9mIENPTkZJR19LUFJPQkVTIG9uIENPTkZJ R19NT0RVTEVTLgo+ID4gPj4KPiA+ID4+IFRoYW5rcyBmb3IgdGhpcyB3b3JrLCBidXQgdGhpcyBj b25mbGljdHMgd2l0aCB0aGUgbGF0ZXN0IGZpeCBpbiB2Ni45LXJjNC4KPiA+ID4+IEFsc28sIGNh biB5b3UgdXNlIElTX0VOQUJMRUQoQ09ORklHX01PRFVMRVMpIGluc3RlYWQgb2YgI2lmZGVmcyBp bgo+ID4gPj4gZnVuY3Rpb24gYm9keT8gV2UgaGF2ZSBlbm91Z2ggZHVtbXkgZnVuY3Rpb25zIGZv ciB0aGF0LCBzbyBpdCBzaG91bGQKPiA+ID4+IG5vdCBtYWtlIGEgcHJvYmxlbS4KPiA+ID4gCj4g PiA+IFRoZSBjb2RlIGluIGNoZWNrX2twcm9iZV9hZGRyZXNzX3NhZmUoKSB0aGF0IGdldHMgdGhl IG1vZHVsZSBhbmQgY2hlY2tzIGZvcgo+ID4gPiBfX2luaXQgZnVuY3Rpb25zIGRvZXMgbm90IGNv bXBpbGUgd2l0aCBJU19FTkFCTEVEKENPTkZJR19NT0RVTEVTKS4KPiA+ID4gSSBjYW4gcHVsbCBp dCBvdXQgdG8gYSBoZWxwZXIgb3IgbGVhdmUgI2lmZGVmIGluIHRoZSBmdW5jdGlvbiBib2R5LAo+ ID4gPiB3aGljaGV2ZXIgeW91IHByZWZlci4KPiA+IAo+ID4gQXMgZmFyIGFzIEkgY2FuIHNlZSwg dGhlIG9ubHkgcHJvYmxlbSBpcyBNT0RVTEVfU1RBVEVfQ09NSU5HLgo+ID4gQ2FuIHdlIG1vdmUg J2VudW0gbW9kdWxlX3N0YXRlJyBvdXQgb2YgI2lmZGVmIENPTkZJR19NT0RVTEVTIGluIG1vZHVs ZS5oICA/Cj4gCj4gVGhlcmUncyBkZXJlZmVyZW5jZSBvZiAnc3RydWN0IG1vZHVsZScgdGhlcmU6 Cj4gIAo+IAkJKCpwcm9iZWRfbW9kKS0+c3RhdGUgIT0gTU9EVUxFX1NUQVRFX0NPTUlORykgewo+ IAkJCS4uLgo+IAkJfQo+IAo+IHNvIG1vdmluZyBvdXQgJ2VudW0gbW9kdWxlX3N0YXRlJyB3b24n dCBiZSBlbm91Z2guCgpIbW0sIHRoaXMgcGFydCBzaG91bGQgYmUgaW5saW5lIGZ1bmN0aW9ucyBs aWtlOwoKI2lmZGVmIENPTkZJR19NT0RVTEVTCnN0YXRpYyBpbmxpbmUgYm9vbCBtb2R1bGVfaXNf Y29taW5nKHN0cnVjdCBtb2R1bGUgKm1vZCkKewoJcmV0dXJuIG1vZC0+c3RhdGUgPT0gTU9EVUxF X1NUQVRFX0NPTUlORzsKfQojZWxzZQojZGVmaW5lIG1vZHVsZV9pc19jb21pbmcobW9kKSAoZmFs c2UpCiNlbmRpZgoKVGhlbiB3ZSBkb24ndCBuZWVkIHRoZSBlbnVtLgpUaGFuayB5b3UsCgo+ICAK PiA+ID4gICAKPiA+ID4+IC0tIAo+ID4gPj4gTWFzYW1pIEhpcmFtYXRzdQo+ID4gPiAKPiAKPiAt LSAKPiBTaW5jZXJlbHkgeW91cnMsCj4gTWlrZS4KPiAKCgotLSAKTWFzYW1pIEhpcmFtYXRzdSAo R29vZ2xlKSA8bWhpcmFtYXRAa2VybmVsLm9yZz4KCl9fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fCmxpbnV4LWFybS1rZXJuZWwgbWFpbGluZyBsaXN0CmxpbnV4 LWFybS1rZXJuZWxAbGlzdHMuaW5mcmFkZWFkLm9yZwpodHRwOi8vbGlzdHMuaW5mcmFkZWFkLm9y Zy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LWFybS1rZXJuZWwK 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 lists.ozlabs.org (lists.ozlabs.org [112.213.38.117]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 659CBC4345F for ; Sat, 20 Apr 2024 09:16:00 +0000 (UTC) Authentication-Results: lists.ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=kernel.org header.i=@kernel.org header.a=rsa-sha256 header.s=k20201202 header.b=aBds/mgW; dkim-atps=neutral Received: from boromir.ozlabs.org (localhost [IPv6:::1]) by lists.ozlabs.org (Postfix) with ESMTP id 4VM5Tp378Vz3dLK for ; Sat, 20 Apr 2024 19:15:58 +1000 (AEST) Authentication-Results: lists.ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=kernel.org header.i=@kernel.org header.a=rsa-sha256 header.s=k20201202 header.b=aBds/mgW; dkim-atps=neutral Authentication-Results: lists.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=kernel.org (client-ip=145.40.73.55; helo=sin.source.kernel.org; envelope-from=mhiramat@kernel.org; receiver=lists.ozlabs.org) Received: from sin.source.kernel.org (sin.source.kernel.org [145.40.73.55]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by lists.ozlabs.org (Postfix) with ESMTPS id 4VM5T03nK1z3bqB for ; Sat, 20 Apr 2024 19:15:16 +1000 (AEST) Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by sin.source.kernel.org (Postfix) with ESMTP id 58511CE0B43; Sat, 20 Apr 2024 09:15:12 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 25CFFC072AA; Sat, 20 Apr 2024 09:15:01 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1713604511; bh=gV7rq1jKylsNR0A2TW7KiHW+6f/l5HNOVcKuwfOfcOQ=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=aBds/mgWklBGTNfKNq4+Z+94Zp0L3MS4pRFwWjdivOkW3wt77ZSOQfMjY+YYfJZ22 EbOsSdkOWssNdBi3AWqliDK9OwzxsFKXe7srGGHbb4foIL1rR+4xeE7wz/4thWRvf3 BmKK1D9Se8H0/h0Uw/vLAld6i8akxChgiSs8Oa4Avx+zJ1C5hFs5npdPznTRfCWZrf th5mEJA/mw5c94mvYsJOBeAvvZwpVWPpCkBwxsqSy7LgrPU1ayqlu8b38rvXCOVsAE WTdAfWWtTcOpMJCjvDynmh95BCxhT0vOjYzaGiV5GDS7KPjZZmh5efTkoPiO6btvOI JgxLZzkBg4/CA== Date: Sat, 20 Apr 2024 18:15:00 +0900 From: Masami Hiramatsu (Google) To: Mike Rapoport Subject: Re: [PATCH v4 14/15] kprobes: remove dependency on CONFIG_MODULES Message-Id: <20240420181500.07b39c77f1ca086e8a5161b4@kernel.org> In-Reply-To: References: <20240411160051.2093261-1-rppt@kernel.org> <20240411160051.2093261-15-rppt@kernel.org> <20240418061615.5fad23b954bf317c029acc4d@gmail.com> <321def3e-8bf1-4920-92dd-037b20f1272d@csgroup.eu> X-Mailer: Sylpheed 3.7.0 (GTK+ 2.24.33; x86_64-pc-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: linuxppc-dev@lists.ozlabs.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Mark Rutland , "x86@kernel.org" , Catalin Marinas , "linux-mips@vger.kernel.org" , Song Liu , Donald Dutile , Luis Chamberlain , "sparclinux@vger.kernel.org" , "linux-riscv@lists.infradead.org" , Nadav Amit , "linux-arch@vger.kernel.org" , "linux-s390@vger.kernel.org" , Helge Deller , Huacai Chen , Russell King , "linux-trace-kernel@vger.kernel.org" , Alexandre Ghiti , Will Deacon , Heiko Carstens , Steven Rostedt , "loongarch@lists.linux.dev" , Thomas Gleixner , "bpf@vger.kerne l.org" , "linux-arm-kernel@lists.infradead.org" , Thomas Bogendoerfer , "linux-parisc@vger.kernel.org" , Puranjay Mohan , "linux-mm@kvack.org" , "netdev@vger.kernel.org" , Kent Overstreet , "linux-kernel@vger.kernel.org" , Dinh Nguyen , =?UTF-8?B?QmrDtnJuIFTDtnBlbA==?= , Eric Chanudet , Palmer Dabbelt , Andrew Morton , Rick Edgecombe , "linuxppc-dev@lists.ozlabs.org" , "David S. Miller" , "linux-modules@vger.kernel.org" Errors-To: linuxppc-dev-bounces+linuxppc-dev=archiver.kernel.org@lists.ozlabs.org Sender: "Linuxppc-dev" On Sat, 20 Apr 2024 10:33:38 +0300 Mike Rapoport wrote: > On Fri, Apr 19, 2024 at 03:59:40PM +0000, Christophe Leroy wrote: > > > > > > Le 19/04/2024 à 17:49, Mike Rapoport a écrit : > > > Hi Masami, > > > > > > On Thu, Apr 18, 2024 at 06:16:15AM +0900, Masami Hiramatsu wrote: > > >> Hi Mike, > > >> > > >> On Thu, 11 Apr 2024 19:00:50 +0300 > > >> Mike Rapoport wrote: > > >> > > >>> From: "Mike Rapoport (IBM)" > > >>> > > >>> kprobes depended on CONFIG_MODULES because it has to allocate memory for > > >>> code. > > >>> > > >>> Since code allocations are now implemented with execmem, kprobes can be > > >>> enabled in non-modular kernels. > > >>> > > >>> Add #ifdef CONFIG_MODULE guards for the code dealing with kprobes inside > > >>> modules, make CONFIG_KPROBES select CONFIG_EXECMEM and drop the > > >>> dependency of CONFIG_KPROBES on CONFIG_MODULES. > > >> > > >> Thanks for this work, but this conflicts with the latest fix in v6.9-rc4. > > >> Also, can you use IS_ENABLED(CONFIG_MODULES) instead of #ifdefs in > > >> function body? We have enough dummy functions for that, so it should > > >> not make a problem. > > > > > > The code in check_kprobe_address_safe() that gets the module and checks for > > > __init functions does not compile with IS_ENABLED(CONFIG_MODULES). > > > I can pull it out to a helper or leave #ifdef in the function body, > > > whichever you prefer. > > > > As far as I can see, the only problem is MODULE_STATE_COMING. > > Can we move 'enum module_state' out of #ifdef CONFIG_MODULES in module.h ? > > There's dereference of 'struct module' there: > > (*probed_mod)->state != MODULE_STATE_COMING) { > ... > } > > so moving out 'enum module_state' won't be enough. Hmm, this part should be inline functions like; #ifdef CONFIG_MODULES static inline bool module_is_coming(struct module *mod) { return mod->state == MODULE_STATE_COMING; } #else #define module_is_coming(mod) (false) #endif Then we don't need the enum. Thank you, > > > > > > >> -- > > >> Masami Hiramatsu > > > > > -- > Sincerely yours, > Mike. > -- Masami Hiramatsu (Google)