[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-devel
Subject: [PATCH] powerdevil-remove-cpuhotplug.patch
From: Holger Macht <holger () homac ! de>
Date: 2010-03-07 22:57:44
Message-ID: 4B942F68.3090708 () homac ! de
[Download RAW message or body]
Remove all CPU hotplug related code from powerdevil and the kcm
module. The way the current Linux implementation and processors work
results in giving you no power savings at all. This options might lead
to a false impression/correlation between active CPUs and the actual
power consumption.
Regards,
Holger
["powerdevil-remove-cpuhotplug.patch" (text/x-patch)]
Index: KDE/kdebase/workspace/powerdevil/daemon/PowerDevilDaemon.cpp
===================================================================
--- KDE.orig/kdebase/workspace/powerdevil/daemon/PowerDevilDaemon.cpp
+++ KDE/kdebase/workspace/powerdevil/daemon/PowerDevilDaemon.cpp
@@ -361,26 +361,6 @@ void PowerDevilDaemon::applyProfile()
Solid::Control::PowerManager::setBrightness(settings->readEntry("brightness").toInt());
d->brightness = settings->readEntry("brightness").toInt();
- QVariant var = settings->readEntry("disabledCPUs", QVariant());
- QList<QVariant> list = var.toList();
-
- foreach(const Solid::Device &device, \
Solid::Device::listFromType(Solid::DeviceInterface::Processor,
- QString())) {
- Solid::Device d = device;
- Solid::Processor * processor = qobject_cast<Solid::Processor * > \
(d.asDeviceInterface(
- Solid::DeviceInterface::Processor));
-
- bool enable = true;
-
- foreach(const QVariant &ent, list) {
- if (processor->number() == ent.toInt()) {
- enable = false;
- }
- }
-
- Solid::Control::PowerManager::setCpuEnabled(processor->number(), enable);
- }
-
Solid::Control::PowerManager::setScheme(settings->readEntry("scheme"));
// Compositing!!
Index: KDE/kdebase/workspace/powerdevil/default.powerdevilprofiles
===================================================================
--- KDE.orig/kdebase/workspace/powerdevil/default.powerdevilprofiles
+++ KDE/kdebase/workspace/powerdevil/default.powerdevilprofiles
@@ -10,7 +10,6 @@ brightness=38
dimOnIdle=true
dimOnIdleTime=5
disableCompositing=true
-disabledCPUs=
iconname=security-medium
idleAction=2
idleTime=10
@@ -35,7 +34,6 @@ brightness=100
dimOnIdle=false
dimOnIdleTime=1
disableCompositing=false
-disabledCPUs=
iconname=preferences-system-performance
idleAction=0
idleTime=99
@@ -60,7 +58,6 @@ brightness=62
dimOnIdle=true
dimOnIdleTime=10
disableCompositing=false
-disabledCPUs=
iconname=preferences-system-power-management
idleAction=2
idleTime=15
@@ -85,7 +82,6 @@ brightness=100
dimOnIdle=false
dimOnIdleTime=1
disableCompositing=false
-disabledCPUs=
iconname=view-presentation
idleAction=0
idleTime=50
@@ -109,7 +105,6 @@ brightness=13
dimOnIdle=true
dimOnIdleTime=1
disableCompositing=true
-disabledCPUs=
iconname=battery-missing
idleAction=2
idleTime=5
Index: KDE/kdebase/workspace/powerdevil/kcmodule/EditPage.cpp
===================================================================
--- KDE.orig/kdebase/workspace/powerdevil/kcmodule/EditPage.cpp
+++ KDE/kdebase/workspace/powerdevil/kcmodule/EditPage.cpp
@@ -145,26 +145,6 @@ void EditPage::fillUi()
schemeCombo->addItems(Solid::Control::PowerManager::supportedSchemes());
- foreach(const Solid::Device &device, \
Solid::Device::listFromType(Solid::DeviceInterface::Processor, \
QString())) {
- Solid::Device d = device;
- Solid::Processor *processor = qobject_cast<Solid::Processor*> \
(d.asDeviceInterface(Solid::DeviceInterface::Processor));
-
- QString text = i18n("CPU <numid>%1</numid>", processor->number());
-
- QCheckBox *checkBox = new QCheckBox(this);
-
- checkBox->setText(text);
- checkBox->setToolTip(i18n("Disable CPU <numid>%1</numid>", \
processor->number()));
- checkBox->setWhatsThis(i18n("If this box is checked, the CPU \
<numid>%1</numid> "
- "will be disabled", processor->number()));
-
- checkBox->setEnabled(Solid::Control::PowerManager::canDisableCpu(processor->number()));
-
- connect(checkBox, SIGNAL(stateChanged(int)), SLOT(emitChanged()));
-
- CPUListLayout->addWidget(checkBox);
- }
-
reloadAvailableProfiles();
tabWidget->setTabIcon(0, KIcon("preferences-system-session-services"));
@@ -310,18 +290,6 @@ void EditPage::loadProfile()
DPMSPowerOffEnabled->setChecked(group->readEntry("DPMSPowerOffEnabled", false));
#endif
- QVariant var = group->readEntry("disabledCPUs", QVariant());
- QList<QVariant> list = var.toList();
-
- foreach(const QVariant &ent, list) {
- QCheckBox *box = qobject_cast<QCheckBox*> \
(CPUListLayout->itemAt(ent.toInt())->widget());
-
- if (!box)
- continue;
-
- box->setChecked(true);
- }
-
delete group;
m_profileEdited = false;
@@ -371,20 +339,6 @@ void EditPage::saveProfile(const QString
group->writeEntry("DPMSPowerOffEnabled", DPMSPowerOffEnabled->isChecked());
#endif
- QList<int> list;
-
- for (int i = 0; i < CPUListLayout->count(); ++i) {
- QCheckBox *box = qobject_cast<QCheckBox*> \
(CPUListLayout->itemAt(i)->widget());
-
- if (!box)
- continue;
-
- if (box->isChecked())
- list.append(i);
- }
-
- group->writeEntry("disabledCPUs", list);
-
group->sync();
delete group;
Index: KDE/kdebase/workspace/powerdevil/kcmodule/capabilitiesPage.ui
===================================================================
--- KDE.orig/kdebase/workspace/powerdevil/kcmodule/capabilitiesPage.ui
+++ KDE/kdebase/workspace/powerdevil/kcmodule/capabilitiesPage.ui
@@ -6,7 +6,7 @@
<rect>
<x>0</x>
<y>0</y>
- <width>400</width>
+ <width>466</width>
<height>380</height>
</rect>
</property>
@@ -65,48 +65,34 @@
</widget>
</item>
<item row="3" column="0">
- <widget class="QLabel" name="label_14">
- <property name="text">
- <string>CPU can be turned Off</string>
- </property>
- </widget>
- </item>
- <item row="3" column="1">
- <widget class="QLabel" name="isCPUOffSupported">
- <property name="text">
- <string/>
- </property>
- </widget>
- </item>
- <item row="4" column="0">
<widget class="QLabel" name="label_13">
<property name="text">
<string>Scheme support</string>
</property>
</widget>
</item>
- <item row="4" column="1">
+ <item row="3" column="1">
<widget class="QLabel" name="isSchemeSupported">
<property name="text">
<string/>
</property>
</widget>
</item>
- <item row="5" column="0">
+ <item row="4" column="0">
<widget class="Line" name="line_3">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
- <item row="6" column="0">
+ <item row="5" column="0">
<widget class="QLabel" name="label_17">
<property name="text">
<string>Supported suspend methods</string>
</property>
</widget>
</item>
- <item row="6" column="1">
+ <item row="5" column="1">
<widget class="QLabel" name="supportedMethods">
<property name="text">
<string/>
@@ -119,28 +105,28 @@
</property>
</widget>
</item>
- <item row="7" column="0">
+ <item row="6" column="0">
<widget class="QLabel" name="label_18">
<property name="text">
<string>Supported schemes</string>
</property>
</widget>
</item>
- <item row="7" column="1">
+ <item row="6" column="1">
<widget class="QLabel" name="supportedSchemes">
<property name="text">
<string/>
</property>
</widget>
</item>
- <item row="8" column="0">
+ <item row="7" column="0">
<widget class="Line" name="line">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
- <item row="9" column="0">
+ <item row="8" column="0">
<widget class="QLabel" name="label_4">
<property name="toolTip">
<string>Support for DPMS</string>
@@ -153,14 +139,14 @@
</property>
</widget>
</item>
- <item row="9" column="1">
+ <item row="8" column="1">
<widget class="QLabel" name="dpmsSupport">
<property name="text">
<string/>
</property>
</widget>
</item>
- <item row="10" column="0">
+ <item row="9" column="0">
<widget class="QLabel" name="label_6">
<property name="toolTip">
<string>Checks if ConsoleKit is active on your system</string>
@@ -173,28 +159,28 @@
</property>
</widget>
</item>
- <item row="10" column="1">
+ <item row="9" column="1">
<widget class="QLabel" name="ckSupport">
<property name="text">
<string/>
</property>
</widget>
</item>
- <item row="11" column="0">
+ <item row="10" column="0">
<widget class="Line" name="line_4">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
- <item row="12" column="0">
+ <item row="11" column="0">
<widget class="QLabel" name="label_3">
<property name="text">
<string>Status</string>
</property>
</widget>
</item>
- <item row="12" column="1">
+ <item row="11" column="1">
<layout class="QVBoxLayout" name="statusLayout"/>
</item>
</layout>
Index: KDE/kdebase/workspace/powerdevil/kcmodule/profileEditPage.ui
===================================================================
--- KDE.orig/kdebase/workspace/powerdevil/kcmodule/profileEditPage.ui
+++ KDE/kdebase/workspace/powerdevil/kcmodule/profileEditPage.ui
@@ -471,24 +471,7 @@
<property name="fieldGrowthPolicy">
<enum>QFormLayout::ExpandingFieldsGrow</enum>
</property>
- <item row="0" column="0">
- <widget class="QLabel" name="label_12">
- <property name="text">
- <string>Turn off the following CPU(s)</string>
- </property>
- </widget>
- </item>
- <item row="0" column="1">
- <layout class="QHBoxLayout" name="CPUListLayout"/>
- </item>
- <item row="2" column="0" colspan="2">
- <widget class="Line" name="line_5">
- <property name="orientation">
- <enum>Qt::Horizontal</enum>
- </property>
- </widget>
- </item>
- <item row="3" column="0">
+ <item row="1" column="0">
<widget class="QLabel" name="label_19">
<property name="text">
<string>System powersaving scheme:</string>
@@ -498,7 +481,7 @@
</property>
</widget>
</item>
- <item row="3" column="1">
+ <item row="1" column="1">
<widget class="KComboBox" name="schemeCombo">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
@@ -514,7 +497,7 @@
</property>
</widget>
</item>
- <item row="4" column="0">
+ <item row="2" column="0">
<widget class="QLabel" name="label_20">
<property name="text">
<string>When loading profile execute:</string>
@@ -524,7 +507,7 @@
</property>
</widget>
</item>
- <item row="4" column="1">
+ <item row="2" column="1">
<widget class="KUrlRequester" name="scriptRequester">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Preferred">
@@ -541,13 +524,10 @@
</widget>
</item>
</layout>
- <zorder>line_5</zorder>
<zorder>schemeCombo</zorder>
- <zorder>label_12</zorder>
<zorder>label_20</zorder>
<zorder>label_19</zorder>
<zorder>scriptRequester</zorder>
- <zorder></zorder>
</widget>
</widget>
</item>
Index: KDE/kdebase/workspace/powerdevil/kcmodule/CapabilitiesPage.cpp
===================================================================
--- KDE.orig/kdebase/workspace/powerdevil/kcmodule/CapabilitiesPage.cpp
+++ KDE/kdebase/workspace/powerdevil/kcmodule/CapabilitiesPage.cpp
@@ -108,18 +108,6 @@ void CapabilitiesPage::fillCapabilities(
cpuNumber->setText(QString::number(cpuCount));
batteriesNumber->setText(QString::number(batteryCount));
- bool turnOff = false;
-
- for (int i = 0; i < cpuCount; ++i) {
- if (Solid::Control::PowerManager::canDisableCpu(i))
- turnOff = true;
- }
-
- if (turnOff)
- isCPUOffSupported->setPixmap(KIcon("dialog-ok-apply").pixmap(16, 16));
- else
- isCPUOffSupported->setPixmap(KIcon("dialog-cancel").pixmap(16, 16));
-
QString sMethods;
Solid::Control::PowerManager::SuspendMethods methods = \
Solid::Control::PowerManager::supportedSuspendMethods();
>> Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub to unsubscribe <<
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic