From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 3021 invoked by alias); 6 May 2010 00:13:30 -0000 Received: (qmail 2931 invoked by uid 48); 6 May 2010 00:13:15 -0000 Date: Thu, 06 May 2010 11:22:00 -0000 Message-ID: <20100506001315.2930.qmail@sourceware.org> From: "roland at gnu dot org" To: systemtap@sources.redhat.com In-Reply-To: <20100505235727.11573.fche@redhat.com> References: <20100505235727.11573.fche@redhat.com> Reply-To: sourceware-bugzilla@sourceware.org Subject: [Bug runtime/11573] uprobe_get_pc, sayonara X-Bugzilla-Reason: AssignedTo Mailing-List: contact systemtap-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Post: List-Help: , Sender: systemtap-owner@sourceware.org X-SW-Source: 2010-q2/txt/msg00267.txt.bz2 ------- Additional Comments From roland at gnu dot org 2010-05-06 00:13 ------- AFAICT uprobe_get_pc exists purely to hide the uretprobes perturbations to userland PCs. So if uprobes is not around, there is nothing to be done. Hence, 3) makes sense and 1) would regress in the presence of uprobes. The translator should know when emitting the module C code whether it uses uprobes or not, no? So it could emit a macro for the runtime headers to see, rather than literally using a weak symbol definition of the function (which is bloaty). OTOH, uprobe_get_pc is something you want every PC-sampling thing to do if there are any uprobes in use on the system, no? So if you load a non-uprobes-using stap script first, then later another stap run uses uprobes, the first script's ubacktrace()s of processes uprobed by the second script could have uprobe-bogon PCs in their traces. Hence, you really want uprobe_get_pc to kick in whenever uprobes is in fact loaded, even after the fact. The .ko symbol reloc won't do that for you, i.e. change it later on uprobes loading. So to do it dynamic would require e.g. a fn ptr and dynamically switching it from a stub to uprobes.ko's defn based on a module-loading notifier seeing uprobes arrive. That is hairy enough to make 2) attractive, certainly for the short term. -- http://sourceware.org/bugzilla/show_bug.cgi?id=11573 ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee.