On Wed, Oct 19, 2005 at 05:48:43PM +0200, Thiemo Seufer wrote: > Date: Wed, 19 Oct 2005 17:48:43 +0200 > To: Ralf Baechle <ralf@xxxxxxxxxxxxxx> > Cc: David Daney <ddaney@xxxxxxxxxx>, > oprofile-list@xxxxxxxxxxxxxxxxxxxxx, linux-mips@xxxxxxxxxxxxxx > Subject: Re: [Patch] Fix lookup_dcookie for MIPS o32 > Content-Type: text/plain; charset=us-ascii > From: Thiemo Seufer <ths@xxxxxxxxxxxx> > > Ralf Baechle wrote: > > On Mon, Oct 17, 2005 at 02:44:07PM -0700, David Daney wrote: > > > > > This patch fixes the lookup_dcookie for the MIPS o32 ABI. Although I > > > only tested with little-endian, the big-endian case needed fixing as > > > well but is untested (but what are the chances that this is not the > > > correct fix?). > > > > > > This is the only patch I needed to get the user space oprofile > > > programs to work for mipsel-linux. > > > > > > I am CCing the linux-mips list as this may be of interest there as well. > > > > Good catch. > > > > > 2005-10-17 David Daney <ddaney@xxxxxxxxxx> > > > > > > * daemon/opd_cookie.c (lookup_dcookie): Handle MIPS o32 for both big > > > and little endian. > > > > > > Index: oprofile/daemon/opd_cookie.c > > > =================================================================== > > > RCS file: /cvsroot/oprofile/oprofile/daemon/opd_cookie.c,v > > > retrieving revision 1.19 > > > diff -p -a -u -r1.19 opd_cookie.c > > > --- oprofile/daemon/opd_cookie.c 26 May 2005 00:00:02 -0000 1.19 > > > +++ oprofile/daemon/opd_cookie.c 17 Oct 2005 21:29:13 -0000 > > > @@ -60,12 +60,21 @@ > > > #endif /* __NR_lookup_dcookie */ > > > > > > #if (defined(__powerpc__) && !defined(__powerpc64__)) || defined(__hppa__)\ > > > - || (defined(__s390__) && !defined(__s390x__)) > > > + || (defined(__s390__) && !defined(__s390x__)) \ > > > + || (defined(__mips__) && (_MIPS_SIM == _MIPS_SIM_ABI32) \ > > > + && defined(_MIPSEB)) > > > > Small nit - please use __MIPSEB__ rsp. __MIPSEL__; I think there are > > some compilers floating around that don't define the single underscore > > variant. > > AFAIR it's the other way, some compilers fail to define __MIPSEB__ and/or > __MIPSEB but all have _MIPSEB. None of these compilers would _ever_ have been able to compile a kernel without the __*__ variant. Ralf