From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 28603 invoked by alias); 8 Oct 2013 18:03:20 -0000 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 Received: (qmail 28532 invoked by uid 48); 8 Oct 2013 18:03:17 -0000 From: "dsmith at redhat dot com" To: systemtap@sourceware.org Subject: [Bug tapsets/15219] syscall.exp failures on RHEL5, RHEL6, and rawhide Date: Tue, 08 Oct 2013 18:03:00 -0000 X-Bugzilla-Reason: AssignedTo X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: systemtap X-Bugzilla-Component: tapsets X-Bugzilla-Version: unspecified X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: dsmith at redhat dot com X-Bugzilla-Status: NEW X-Bugzilla-Priority: P2 X-Bugzilla-Assigned-To: systemtap at sourceware dot org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: attachments.created Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-Bugzilla-URL: http://sourceware.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-SW-Source: 2013-q4/txt/msg00034.txt.bz2 https://sourceware.org/bugzilla/show_bug.cgi?id=15219 --- Comment #10 from David Smith --- Created attachment 7226 --> https://sourceware.org/bugzilla/attachment.cgi?id=7226&action=edit different anti-nested syscall patch Here's a patch that attempts to fix this problem by avoiding nested syscalls. It does this by looking at the syscall number. If we're in syscall.clock_settime, but the syscall number isn't __NR_clock_settime, return. This is done with macros stored in tapset/linux/syscalls.stpm, called '__syscall_enter' and '__syscall_enter2'. With this patch, the syscall test case passes completely on rawhide x86_64 (3.12.0-0.rc2.git0.1.fc21.x86_64). Note that the patch isn't complete. The nd_syscall tapset files would need to modified in a similar manner. Also, all nested syscalls weren't avoided, just the ones needed for syscall.exp to pass. Also note that the macros could use better names, especially since they also get called in .return probes. Comments welcome. -- You are receiving this mail because: You are the assignee for the bug.