From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dave Jones Subject: Re: [PATCH] Fix syscall32 to supply 6th arg to syscal Date: Wed, 2 Oct 2013 12:43:37 -0400 Message-ID: <20131002164337.GA17276@redhat.com> References: <20131002151244.GA10872@redhat.com> Mime-Version: 1.0 Return-path: Content-Disposition: inline In-Reply-To: Sender: trinity-owner@vger.kernel.org List-ID: Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: Ildar Muslukhov Cc: trinity@vger.kernel.org On Wed, Oct 02, 2013 at 09:14:43AM -0700, Ildar Muslukhov wrote: > On Wed, Oct 2, 2013 at 8:12 AM, Dave Jones wrote: > > On Thu, Sep 19, 2013 at 02:24:24PM -0700, Ildar Muslukhov wrote: > > > > > > This patch fixes missing 6th param for 32bit syscalls in i386 and x86_64 > > > archs. > > > > Something isn't quite right with this. > > I was looking at a log file and noticed that in a lot of cases, we end up > > doing a 32bit syscall, and then the child respawns. I suspected it > > was segfaulting, and running with -D confirms it. > > > > A whole bunch of core dumps appears, looking like this.. > > > > Core was generated by `../trinity -q -D'. > > Program terminated with signal 11, Segmentation fault. > > #0 0x0000000000403aa5 in syscall32 (a6=, a5=5, a4=9709, a3=29, a2=4, a1=, call=279, num_args=5) at syscall.c:76 > > 76 __syscall_return(long,__res); > > > > This is running on x86-64, I haven't tested actually running on a 32-bit machine, > > but I suspect it's a problem there too. > > Yes, it gave me problems in the beginning, but after removing static > from the function and taking care of ebp it worked. Will test it on my > machine in a moment. BTW which kernel version are you running against? Happens with 3.11, and Linus' git. Seems to not matter. Dave