Ticket #1151: nginx-cgroup-cpu-count.patch

File nginx-cgroup-cpu-count.patch, 864 bytes (added by nmeyer-otto@…, 9 years ago)
  • src/os/unix/ngx_posix_init.c

    diff -uNr nginx-1.11.6.orig/src/os/unix/ngx_posix_init.c nginx-1.11.6/src/os/unix/ngx_posix_init.c
    old new  
    3636{
    3737    ngx_time_t  *tp;
    3838    ngx_uint_t   n;
     39    cpu_set_t set;
    3940
    4041#if (NGX_HAVE_OS_SPECIFIC_INIT)
    4142    if (ngx_os_specific_init(log) != NGX_OK) {
     
    5152    ngx_cacheline_size = NGX_CPU_CACHE_LINE;
    5253
    5354    for (n = ngx_pagesize; n >>= 1; ngx_pagesize_shift++) { /* void */ }
    54 
    5555#if (NGX_HAVE_SC_NPROCESSORS_ONLN)
    5656    if (ngx_ncpu == 0) {
     57#ifdef CPU_COUNT
     58        if (sched_getaffinity (0, sizeof (set), &set) == 0)
     59        {
     60            ngx_ncpu = CPU_COUNT (&set);
     61        }
     62#else
    5763        ngx_ncpu = sysconf(_SC_NPROCESSORS_ONLN);
     64#endif
    5865    }
    5966#endif
    6067