Re: [PATCH v2] perf tools: Work around lack of sched_getcpu in glibc < 2.6.

From: Vinson Lee
Date: Thu Mar 19 2015 - 17:12:16 EST


On Thu, Mar 19, 2015 at 6:14 AM, Arnaldo Carvalho de Melo
<acme@xxxxxxxxxx> wrote:
> Em Thu, Mar 19, 2015 at 11:13:04AM +0100, Jiri Olsa escreveu:
>> On Wed, Mar 18, 2015 at 04:11:52PM -0700, Vinson Lee wrote:
>> > This patch fixes this build error with glibc < 2.6.
>
>> > +#ifdef __GLIBC_PREREQ
>> > +#if !__GLIBC_PREREQ(2, 6)
>> > +static int sched_getcpu(void)
>> > +{
>> > + errno = ENOSYS;
>> > + return -1;
>> > +}
>> > +#endif
>> > +#endif
>
>> you could mark it as __weak and get rid of those ifdef's
>> like we do for strlcpy in utilpath.c
>
> Agreed.
>
> - Arnaldo

I tried this approach but am having trouble getting a patch to compile
with both older glibc and recent glibc.

With older glibc I will get a "no previous prototype" compilation
error. I can fix this error by adding a prototype but this results in
a "redundant redeclaration" error with newer glibc.
--
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/