• Arnaldo Carvalho de Melo's avatar
    perf sched: Cast PTHREAD_STACK_MIN to int as it may turn into sysconf(__SC_THREAD_STACK_MIN_VALUE) · d08c84e0
    Arnaldo Carvalho de Melo authored
    In fedora rawhide the PTHREAD_STACK_MIN define may end up expanded to a
    sysconf() call, and that will return 'long int', breaking the build:
    
        45 fedora:rawhide                : FAIL gcc version 11.1.1 20210623 (Red Hat 11.1.1-6) (GCC)
          builtin-sched.c: In function 'create_tasks':
          /git/perf-5.14.0-rc1/tools/include/linux/kernel.h:43:24: error: comparison of distinct pointer types lacks a cast [-Werror]
             43 |         (void) (&_max1 == &_max2);              \
                |                        ^~
          builtin-sched.c:673:34: note: in expansion of macro 'max'
            673 |                         (size_t) max(16 * 1024, PTHREAD_STACK_MIN));
                |                                  ^~~
          cc1: all warnings being treated as errors
    
      $ grep __sysconf /usr/include/*/*.h
      /usr/include/bits/pthread_stack_min-dynamic.h:extern long int __sysconf (int __name) __THROW;
      /usr/include/bits/pthread_stack_min-dynamic.h:#   define PTHREAD_STACK_MIN __sysconf (__SC_THREAD_STACK_MIN_VALUE)
      /usr/include/bits/time.h:extern long int __sysconf (int);
      /usr/include/bits/time.h:# define CLK_TCK ((__clock_t) __sysconf (2))	/* 2 is _SC_CLK_TCK */
      $
    
    So cast it to int to cope with that.
    Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
    d08c84e0
builtin-sched.c 89 KB