Bug 295398 - KInfoCenter summary CPU output with more than 10 cores incorrect
Summary: KInfoCenter summary CPU output with more than 10 cores incorrect
Status: RESOLVED FIXED
Alias: None
Product: kinfocenter
Classification: Applications
Component: InfoSummary (other bugs)
Version First Reported In: unspecified
Platform: openSUSE Linux
: NOR normal
Target Milestone: ---
Assignee: David Hubner
URL:
Keywords:
: 316717 (view as bug list)
Depends on:
Blocks:
 
Reported: 2012-03-06 02:11 UTC by James C. Owens
Modified: 2020-01-20 09:42 UTC (History)
4 users (show)

See Also:
Latest Commit:
Version Fixed/Implemented In:
Sentry Crash Report:


Attachments
screenshot of bug (82.44 KB, image/jpeg)
2012-03-06 02:11 UTC, James C. Owens
Details
output of /proc/cpuinfo per request (10.35 KB, text/x-log)
2012-03-11 00:41 UTC, James C. Owens
Details

Note You need to log in before you can comment on or make changes to this bug.
Description James C. Owens 2012-03-06 02:11:21 UTC
Created attachment 69315 [details]
screenshot of bug

I have a i7-3960X which has 12 logical CPU's. The last two (above 0-9) are reported incorrectly.

See the attached jpg.

System is Opensuse 12.1 using KDE SC 4.8.00 (release 5).
Comment 1 Christoph Feck 2012-03-08 22:12:43 UTC
Could you attach the output of "cat /proc/cpuinfo"?
Comment 2 James C. Owens 2012-03-11 00:41:53 UTC
Created attachment 69478 [details]
output of /proc/cpuinfo per request

output of /proc/cpuinfo
Comment 3 Christoph Feck 2013-03-16 17:49:50 UTC
*** Bug 316717 has been marked as a duplicate of this bug. ***
Comment 4 cat22 2013-08-30 04:10:03 UTC
This is still true in kinfocenter 4.10.5 "release 1" on OpenSuse 12.3 with 12 thread i3960x processor.
I tried to walk back through the c++ code and figure out the problem , but its beyond my abilities, I'm a C guy not c++.  But here is what I could determine.

In infosum.cpp
  const Solid::Processor *prodev = dev.as<const Solid::Processor>();
    if(!prodev) return;
    cpuWidget->setLabelTwo(QString::number(prodev->number()));

The class Processor in namespace Solid has this:
   Q_PROPERTY(int number READ number)

Solid::Processor gets "number" here in processor.cpp
 int Solid::Processor::number() const
 {
     Q_D(const Processor);
     return_SOLID_CALL(Ifaces::Processor *, d->backendObject(), 0, number());
 }

I cant follow it from there, c++ is not easy to code read backtrace, its such a circle of defining items to define items etc. Where ever it reads number from is the issue.
Comment 5 Harald Sitter 2020-01-20 09:42:17 UTC
The summaryinfo view exists no more and the remaining views handle multiple cores correctly.