404

[ Avaa Bypassed ]




Upload:

Command:

elspacio@3.135.205.129: ~ $
from . import base
from .decorators import *
import os
import errno
import tuned.logs
from tuned.consts import ACPI_DIR

log = tuned.logs.get()


class ACPIPlugin(base.Plugin):
	"""
	`acpi`::

	Configures the ACPI driver.
	+
	The only currently supported option is
	[option]`platform_profile`, which sets the ACPI
	platform profile sysfs attribute,
	a generic power/performance preference API for other drivers.
	Multiple profiles can be specified, separated by `|`.
	The first available profile is selected.
	+
	--
	.Selecting a platform profile
	====
	----
	[acpi]
	platform_profile=balanced|low-power
	----
	Using this option, *TuneD* will try to set the platform profile
	to `balanced`. If that fails, it will try to set it to `low-power`.
	====
	--
	"""
	def __init__(self, *args, **kwargs):
		super(ACPIPlugin, self).__init__(*args, **kwargs)

	@classmethod
	def _get_config_options(cls):
		return {"platform_profile": None}

	def _instance_init(self, instance):
		instance._has_static_tuning = True
		instance._has_dynamic_tuning = False

	def _instance_cleanup(self, instance):
		pass

	@classmethod
	def _platform_profile_choices_path(cls):
		return os.path.join(ACPI_DIR, "platform_profile_choices")

	@classmethod
	def _platform_profile_path(cls):
		return os.path.join(ACPI_DIR, "platform_profile")

	@command_set("platform_profile")
	def _set_platform_profile(self, profiles, sim, remove):
		if not os.path.isfile(self._platform_profile_path()):
			log.debug("ACPI platform_profile is not supported on this system")
			return None
		profiles = [profile.strip() for profile in profiles.split('|')]
		avail_profiles = set(self._cmd.read_file(self._platform_profile_choices_path()).split())
		for profile in profiles:
			if profile in avail_profiles:
				if not sim:
					log.info("Setting platform_profile to '%s'" % profile)
					self._cmd.write_to_file(self._platform_profile_path(), profile, \
						no_error=[errno.ENOENT] if remove else False)
				return profile
			log.warn("Requested platform_profile '%s' unavailable" % profile)
		log.error("Failed to set platform_profile. Is the value in the profile correct?")
		return None

	@command_get("platform_profile")
	def _get_platform_profile(self, ignore_missing=False):
		if not os.path.isfile(self._platform_profile_path()):
			log.debug("ACPI platform_profile is not supported on this system")
			return None
		return self._cmd.read_file(self._platform_profile_path()).strip()

Filemanager

Name Type Size Permission Actions
__pycache__ Folder 0755
instance Folder 0755
__init__.py File 49 B 0644
base.py File 21.89 KB 0644
decorators.py File 983 B 0644
exceptions.py File 99 B 0644
hotplug.py File 3.84 KB 0644
plugin_acpi.py File 2.39 KB 0644
plugin_audio.py File 3.13 KB 0644
plugin_bootloader.py File 25.31 KB 0644
plugin_cpu.py File 27.56 KB 0644
plugin_disk.py File 16.46 KB 0644
plugin_eeepc_she.py File 2.88 KB 0644
plugin_irqbalance.py File 3.47 KB 0644
plugin_modules.py File 4.81 KB 0644
plugin_mounts.py File 5.45 KB 0644
plugin_net.py File 22.71 KB 0644
plugin_rtentsk.py File 1.08 KB 0644
plugin_scheduler.py File 54.94 KB 0644
plugin_script.py File 3.76 KB 0644
plugin_scsi_host.py File 3.08 KB 0644
plugin_selinux.py File 2.27 KB 0644
plugin_service.py File 10.47 KB 0644
plugin_sysctl.py File 6.74 KB 0644
plugin_sysfs.py File 2.63 KB 0644
plugin_systemd.py File 5.3 KB 0644
plugin_uncore.py File 4.61 KB 0644
plugin_usb.py File 1.97 KB 0644
plugin_video.py File 3.72 KB 0644
plugin_vm.py File 3.48 KB 0644
repository.py File 1.49 KB 0644