From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp-out1.suse.de (smtp-out1.suse.de [IPv6:2a07:de40:b251:101:10:150:64:1]) by sourceware.org (Postfix) with ESMTPS id 2B897389000C for ; Thu, 20 Jun 2024 18:32:11 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 2B897389000C Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=suse.de Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=suse.de ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 2B897389000C Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2a07:de40:b251:101:10:150:64:1 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1718908332; cv=none; b=KWBN5PWMnh/geZVdjktlqISE5tpnwxoaNf+xl+KN1qrLeOnVQBt3e7Xfp7AVM3MuNBz+m7hHRgT3hPjBVUTIDUKhxvhuckMEHXJMJ/ayCyHR2zFvIrHp0vkTgNi01Q9e7sbVNnDrgAR7BEgoTeVgjojhx1nddeNW61M95IvDQXw= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1718908332; c=relaxed/simple; bh=p+PwI43EEhBG5+FOkUIHfa/dzVMHVOgBvjIqPhQ43fg=; h=DKIM-Signature:DKIM-Signature:DKIM-Signature:DKIM-Signature:Date: From:To:Subject:Message-ID:MIME-Version; b=pa+KJ7Ogas4nCOlJFCAJXRlHgdos9bjnYgw7cq/y108flJmQ2F+Rh0qbTySK/V0y5TW1aYpxKmr1MS5AtIsU+HhvXIlsFxYwjAFeeMYDQEAG+sRvzTt9cbgapM0ugFQwAHc8zebZtjKWlJF3Rk6R080dobO+rR0tPr5fZGAujBo= ARC-Authentication-Results: i=1; server2.sourceware.org Received: from imap1.dmz-prg2.suse.org (imap1.dmz-prg2.suse.org [IPv6:2a07:de40:b281:104:10:150:64:97]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id E573E21A86; Thu, 20 Jun 2024 18:32:09 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_rsa; t=1718908330; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=wLUVhU+ebv+jSZAst4BaDwrvWF8px4i6eUFQoHo6h/Q=; b=zbXcRaIvz7yruJWa5CY2YTWXXCtYL5ilt36H5iw5bqNE/SkZUmBgkOHgvYOWUqxumOph1U +W+8S1Q8FZKX1dM33qyNF3T2OrIQ9MhozboObRsOPWoXSV93MRUrO6qSOKFlp0PBd2Tx35 dGfFSHKuNn53nd9ClzdKJwCn6Y6oxQU= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_ed25519; t=1718908330; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=wLUVhU+ebv+jSZAst4BaDwrvWF8px4i6eUFQoHo6h/Q=; b=osIMKbGzcqxNdWZuVFUbialSCrxkSccE0TVUJc3WzEy2A4SbzU6j8hgWPnT1GeHYtRlFR3 CBHh1BAegayI0dDg== Authentication-Results: smtp-out1.suse.de; dkim=pass header.d=suse.de header.s=susede2_rsa header.b=xG4XZTNo; dkim=pass header.d=suse.de header.s=susede2_ed25519 header.b=qNRAALas DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_rsa; t=1718908329; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=wLUVhU+ebv+jSZAst4BaDwrvWF8px4i6eUFQoHo6h/Q=; b=xG4XZTNoKtBbzqKAfgupp/vru6CpZAfSjvq+vEb/cNtjbQw4OwvqoAtTipyK/5L6LwoodG IYvbENF4g4P0G88vCdJ4kl7FtP+bSJMWRLwU/kDzWCrpMK4jldodDTo+wqTgSv+hkx3iun vhx8GXV2nqUJvpV1fEkJI1Zag7sdyUg= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_ed25519; t=1718908329; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=wLUVhU+ebv+jSZAst4BaDwrvWF8px4i6eUFQoHo6h/Q=; b=qNRAALas8NlYQIE2cyd4WLVDvDq2gx8JOo8Gz6YFYasRl0qbk8Vd0/n8Xn9+S2wzIdHfpr 0SxWg1r1Yx8h4RCQ== Received: from imap1.dmz-prg2.suse.org (localhost [127.0.0.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by imap1.dmz-prg2.suse.org (Postfix) with ESMTPS id EA0991369F; Thu, 20 Jun 2024 18:32:08 +0000 (UTC) Received: from dovecot-director2.suse.de ([2a07:de40:b281:106:10:150:64:167]) by imap1.dmz-prg2.suse.org with ESMTPSA id dYRRLah1dGZEMAAAD6G6ig (envelope-from ); Thu, 20 Jun 2024 18:32:08 +0000 Date: Thu, 20 Jun 2024 11:32:04 -0700 From: tonyj@suse.de To: William Cohen Cc: systemtap@sourceware.org, mcermak@redhat.com Subject: Re: [PATCH] sym.c: fix module_kallsyms_on_each_symbol not exported Message-ID: References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-Rspamd-Queue-Id: E573E21A86 X-Spam-Score: -6.51 X-Spam-Level: X-Spamd-Result: default: False [-6.51 / 50.00]; BAYES_HAM(-3.00)[100.00%]; DWL_DNSWL_MED(-2.00)[suse.de:dkim]; NEURAL_HAM_LONG(-1.00)[-1.000]; R_DKIM_ALLOW(-0.20)[suse.de:s=susede2_rsa,suse.de:s=susede2_ed25519]; NEURAL_HAM_SHORT(-0.20)[-1.000]; MIME_GOOD(-0.10)[text/plain]; MX_GOOD(-0.01)[]; DKIM_SIGNED(0.00)[suse.de:s=susede2_rsa,suse.de:s=susede2_ed25519]; FUZZY_BLOCKED(0.00)[rspamd.com]; ARC_NA(0.00)[]; TO_MATCH_ENVRCPT_ALL(0.00)[]; MIME_TRACE(0.00)[0:+]; RCVD_COUNT_TWO(0.00)[2]; RCVD_TLS_ALL(0.00)[]; DKIM_TRACE(0.00)[suse.de:+]; MID_RHS_MATCH_FROM(0.00)[]; FROM_EQ_ENVFROM(0.00)[]; TO_DN_SOME(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; MISSING_XM_UA(0.00)[]; FROM_NO_DN(0.00)[]; RCPT_COUNT_THREE(0.00)[3]; DBL_BLOCKED_OPENRESOLVER(0.00)[imap1.dmz-prg2.suse.org:helo,imap1.dmz-prg2.suse.org:rdns,suse.de:email,suse.de:dkim] X-Rspamd-Action: no action X-Rspamd-Server: rspamd1.dmz-prg2.suse.org X-Spam-Status: No, score=-12.0 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,GIT_PATCH_0,KAM_STOCKGEN,SPF_HELO_NONE,SPF_PASS,TXREP,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: On Wed, Jun 19, 2024 at 09:37:58PM -0400, William Cohen wrote: > Hi, > I plan on taking a look at this patch Thursday. Do you have a pointer to the environment (distribution, specific kernel) where systemtap failed WITHOUT this patch? Thanks, Hi. In SLE15SP5/SP6 we historically have reverted upstream 0bd476e6c671 (see: https://github.com/SUSE/kernel-source/commit/d62679f1948 It only started showing up in SP6 because we updated to stap 5.0 and so picked up stap commit 33fae2d0107f (tags/release-5.0a~94). I suspect the issue would show on any upstream kernel prior to 0bd476e6c671 (tags/v5.7-rc1~58^2~15) The issue is fairly simple. module_kallsyms_on_each_symbol has never been exported so it can't be guarded by STAPCONF_KALLSYMS_ON_EACH_SYMBOL_EXPORTED Thanks Tony > > -Will > On 6/18/24 12:52, tonyj@suse.de wrote: > > module_kallsyms_on_each_symbol has never been exported (as noted by > > 33fae2d0107f ("This one seems simply like a non-export"). > > > > If kallsyms_on_each_symbol is exported (a revert of upstream in our > > SLES case) then '!defined(STAPCONF_KALLSYMS_ON_EACH_SYMBOL_EXPORTED)' > > is false and the local definition of module_kallsyms_on_each_symbol is > > skipped. > > > > This results in: > > ERROR: modpost: "module_kallsyms_on_each_symbol" undefined! > > > > Fixes: 33fae2d0107fb6166b4eac3fdffd277829849ab0 > > Signed-off-by: Tony Jones > > > > diff --git a/runtime/sym.c b/runtime/sym.c > > index 23dd3be30..102257965 100644 > > --- a/runtime/sym.c > > +++ b/runtime/sym.c > > @@ -1180,7 +1180,8 @@ unsigned long kallsyms_lookup_name (const char *name) > > } > > #endif > > > > -#if defined(STAPCONF_KALLSYMS_ON_EACH_SYMBOL) && !defined(STAPCONF_KALLSYMS_ON_EACH_SYMBOL_EXPORTED) > > +#if defined(STAPCONF_KALLSYMS_ON_EACH_SYMBOL) > > +#if !defined(STAPCONF_KALLSYMS_ON_EACH_SYMBOL_EXPORTED) > > #ifndef KALLSYMS_H_INCLUDED > > #include > > #endif > > @@ -1209,11 +1210,12 @@ int kallsyms_on_each_symbol(int (*fn)(void *, const char *, struct module *, > > _stp_error("BUG: attempting to use unavailable kallsyms_on_each_symbol!!\n"); > > return 0; > > } > > +#endif // !defined(STAPCONF_KALLSYMS_ON_EACH_SYMBOL_EXPORTED) > > > > +// XXX module_kallsyms_on_each_symbol has never been exported > > #if LINUX_VERSION_CODE >= KERNEL_VERSION(5,12,0) > > typedef typeof(&module_kallsyms_on_each_symbol) module_kallsyms_on_each_symbol_fn; > > > > -// XXX Will be linked in place of the kernel's module_kallsyms_on_each_symbol: > > #if defined(STAPCONF_KALLSYMS_6_4) > > int module_kallsyms_on_each_symbol(const char *modname, > > int (*fn)(void *, const char *, > > > -- Tony Jones SUSE Kernel Performance Team