[cairo-bugs] [Bug 66783] New: cairo-perf does not deal with cpus larger then 1024 well.

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Wed Jul 10 09:32:21 PDT 2013


https://bugs.freedesktop.org/show_bug.cgi?id=66783

          Priority: medium
            Bug ID: 66783
          Assignee: chris at chris-wilson.co.uk
           Summary: cairo-perf does not deal with cpus larger then 1024
                    well.
        QA Contact: cairo-bugs at cairographics.org
          Severity: normal
    Classification: Unclassified
                OS: Linux (All)
          Reporter: nzimmer at sgi.com
          Hardware: Other
            Status: NEW
           Version: 1.12.14
         Component: general
           Product: cairo

The function check_cpu_affinity (void) can return incorrect results.

This function is attempting to confirm that the process is only running on a
single cpu.  On a large box it can report success where it should have failed.

For example if it has affinity with cpus 600, 1200 check_cpu_affinity will
report it is ok when that true.

This issue is that CPU_SETSIZE on some distros is 1024, but the kernel is quite
capable of handling 4096 cpus.

The code in question is here.

    cpu_set_t affinity

    for(i = 0, cpu_count = 0; i < CPU_SETSIZE; ++i) {
        if (CPU_ISSET(i, &affinity))
            ++cpu_count;
    }

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.cairographics.org/archives/cairo-bugs/attachments/20130710/bbfb53f4/attachment.html>


More information about the cairo-bugs mailing list