Re: [PATCH] basic perf support for sparc

From: Ingo Molnar
Date: Sun Aug 02 2009 - 16:25:42 EST



* David Miller <davem@xxxxxxxxxxxxx> wrote:

> From: Jens Axboe <jens.axboe@xxxxxxxxxx>
> Date: Wed, 29 Jul 2009 13:25:10 +0200
>
> > -#define NR_SYSCALLS 327
> > +#define NR_SYSCALLS 328
>
> When you increase this value, you have to add entries to all of
> the syscall tables. The syscall dispatch checks against this as a
> limit, so if you don't explicitly add an entry to all the tables,
> it's possible to deref garbage past the end of the table and try
> to jump to it as a syscall.
>
> And if you somehow arrange for adding a compat syscall entry here
> for this, and build the perf tools 32-bit, you can forego all of
> these rediculious issues with trying to get a 64-bit BFD library.
> If the perf tools are written portably and use types like u64 etc.
> for holding addresses and similar things, this should not be an
> issue.
>
> The 32-bit sparc BFD library has full support for all the 64-bit
> binary formats and whatnot.

That would work too. On x86 perf works all across the compatibility
spectrum, and we do use strict u32/u64 typing and ABIs.

Note that we'll also solve (remove) the binutils-devel dependency,
it creates a way too large set of external build constraints for
perf. But in any case both 32-bit and 64-bit perf should work just
fine.

Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/