From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id 01CEB393880A; Wed, 18 Mar 2020 16:19:43 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 01CEB393880A From: "me at serhei dot io" To: systemtap@sourceware.org Subject: [Bug translator/10280] allow relaxing of `uname -r` matching runtime assertion ro ABI-compatible kernel series Date: Wed, 18 Mar 2020 16:19:43 +0000 X-Bugzilla-Reason: AssignedTo X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: systemtap X-Bugzilla-Component: translator X-Bugzilla-Version: unspecified X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: me at serhei dot io X-Bugzilla-Status: NEW X-Bugzilla-Resolution: X-Bugzilla-Priority: P2 X-Bugzilla-Assigned-To: systemtap at sourceware dot org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://sourceware.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-BeenThere: systemtap@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Systemtap mailing list List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 16:19:44 -0000 https://sourceware.org/bugzilla/show_bug.cgi?id=3D10280 --- Comment #6 from Serhei Makarov --- This issue came up again in connection with PR25580. My current thinking outlined below. Desired: We want to compile a guru-mode module and ship the compiled module. The module should continue to load on new kernel versions, as long as the stap compiler would have produced the same module as before. SystemTap compiles modules differently depending on - kernel version (explicitly checked by #if preprocessor conditionals) - However, the explicit kernel-version #if are written only for already-released versions. Therefore, the appearance of a new version won't cause any of these checks to trigger. - modsymvers (built into the kernel-module build system) - stapconf results (may change with future kernel version or config tweaks) - (anything else?) Checking for modsymvers is given to us by the kernel-module build system. Although modsymvers only tracks changes to the public kernel ABI, SystemTap uses both public and private ABIs. However, changes to private ABIs not detected by stapconf would not cause the same SystemTap version to start compiling things differently. In essence, we already assume that updating the kernel but not the SystemTap module will be safe in this situation. For the stapconf result, we need to evaluate if the stapconf results are actually useful to guard against breakage in new kernel versions. If they are useful, we may need to generate a table of stapconf results for each new kernel and have it be checked on module load, similarly to modsymv= ers. (Not every module uses every stapconf result.) If they are not, it's sufficient to add an option to relax any explicit kernel-version checks and then close this bug. --=20 You are receiving this mail because: You are the assignee for the bug.=