On 24/02/15 15:32, Josh Boyer wrote:
> On Tue, Feb 24, 2015 at 5:46 AM, Adrian Hunter <[email protected]> 
> wrote:
>> Feature detection for pthread_attr_setaffinity_np was failing,
>> producing this error:
>>
>> In file included from bench/futex-hash.c:17:0:
>> bench/futex.h:73:19: error: conflicting types for 
>> 'pthread_attr_setaffinity_np'
>>  static inline int pthread_attr_setaffinity_np(pthread_attr_t *attr,
>>                    ^
>> In file included from bench/futex.h:72:0,
>>                  from bench/futex-hash.c:17:
>> /usr/include/pthread.h:407:12: note: previous declaration of 
>> 'pthread_attr_setaffinity_np' was here
>>  extern int pthread_attr_setaffinity_np (pthread_attr_t *__attr,
>>             ^
>> make[3]: *** [bench/futex-hash.o] Error 1
>> make[2]: *** [bench] Error 2
>> make[2]: *** Waiting for unfinished jobs....
>>
>> This was because compiling test-pthread-attr-setaffinity-np.c
>> failed due to the function arguments:
>>
>> test-pthread-attr-setaffinity-np.c: In function 'main':
>> test-pthread-attr-setaffinity-np.c:11:2: warning: null argument where 
>> non-null required (argument 3) [-Wnonnull]
>>   ret = pthread_attr_setaffinity_np(&thread_attr, 0, NULL);
>>   ^
>> So fix the arguments.
> 
> Erm, I sent a different fix for this a while ago.  It's queued in some
> -tip tree.  The feature test wasn't defining _GNU_SOURCE, which is
> required for pthread_attr_setaffinity_np.  Once that was set (passed
> via -D in the Makefile), the feature test worked fine.
> 
> Did you have to use your patch on top of the fix already queued?

Yes.

The error (warning + Werror) I got definitely seemed to be about the use of
NULL as an argument.

> 
> josh
> 
>>
>> Signed-off-by: Adrian Hunter <[email protected]>
>> ---
>>  tools/perf/config/feature-checks/test-pthread-attr-setaffinity-np.c | 3 ++-
>>  1 file changed, 2 insertions(+), 1 deletion(-)
>>
>> diff --git 
>> a/tools/perf/config/feature-checks/test-pthread-attr-setaffinity-np.c 
>> b/tools/perf/config/feature-checks/test-pthread-attr-setaffinity-np.c
>> index 0a0d3ec..2b81b72 100644
>> --- a/tools/perf/config/feature-checks/test-pthread-attr-setaffinity-np.c
>> +++ b/tools/perf/config/feature-checks/test-pthread-attr-setaffinity-np.c
>> @@ -5,10 +5,11 @@ int main(void)
>>  {
>>         int ret = 0;
>>         pthread_attr_t thread_attr;
>> +       cpu_set_t cs;
>>
>>         pthread_attr_init(&thread_attr);
>>         /* don't care abt exact args, just the API itself in libpthread */
>> -       ret = pthread_attr_setaffinity_np(&thread_attr, 0, NULL);
>> +       ret = pthread_attr_setaffinity_np(&thread_attr, sizeof(cs), &cs);
>>
>>         return ret;
>>  }
>> --
>> 1.9.1
>>
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
>> the body of a message to [email protected]
>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>> Please read the FAQ at  http://www.tux.org/lkml/
> 
> 

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

Reply via email to