SILENT KILLERPanel

Current Path: > > usr > lib > python3.6 > site-packages > tuned > > > plugins


Operation   : Linux host59.registrar-servers.com 4.18.0-513.18.1.lve.2.el8.x86_64 #1 SMP Sat Mar 30 15:36:11 UTC 2024 x86_64
Software     : Apache
Server IP    : 198.54.126.42 | Your IP: 216.73.216.8
Domains      : 1034 Domain(s)
Permission   : [ 0755 ]

Files and Folders in: //usr/lib/python3.6/site-packages/tuned///plugins

NameTypeSizeLast ModifiedActions
__pycache__ Directory - -
instance Directory - -
__init__.py File 49 bytes February 22 2024 12:23:28.
base.py File 22417 bytes February 22 2024 12:23:28.
decorators.py File 983 bytes February 22 2024 12:23:28.
exceptions.py File 99 bytes February 22 2024 12:23:28.
hotplug.py File 3928 bytes February 22 2024 12:23:28.
plugin_acpi.py File 2446 bytes February 22 2024 12:23:28.
plugin_audio.py File 3209 bytes February 22 2024 12:23:28.
plugin_bootloader.py File 25914 bytes February 22 2024 12:23:28.
plugin_cpu.py File 28218 bytes February 22 2024 12:23:28.
plugin_disk.py File 17049 bytes March 11 2025 07:42:24.
plugin_eeepc_she.py File 2947 bytes February 22 2024 12:23:28.
plugin_irqbalance.py File 3554 bytes February 22 2024 12:23:28.
plugin_modules.py File 4925 bytes February 22 2024 12:23:28.
plugin_mounts.py File 5580 bytes February 22 2024 12:23:28.
plugin_net.py File 23252 bytes February 22 2024 12:23:28.
plugin_rtentsk.py File 1109 bytes February 22 2024 12:23:28.
plugin_scheduler.py File 56255 bytes February 22 2024 12:23:28.
plugin_script.py File 3852 bytes February 22 2024 12:23:28.
plugin_scsi_host.py File 3153 bytes February 22 2024 12:23:28.
plugin_selinux.py File 2320 bytes February 22 2024 12:23:28.
plugin_service.py File 10721 bytes February 22 2024 12:23:28.
plugin_sysctl.py File 6906 bytes February 22 2024 12:23:28.
plugin_sysfs.py File 2694 bytes February 22 2024 12:23:28.
plugin_systemd.py File 5428 bytes February 22 2024 12:23:28.
plugin_uncore.py File 4723 bytes February 22 2024 12:23:28.
plugin_usb.py File 2015 bytes February 22 2024 12:23:28.
plugin_video.py File 3807 bytes February 22 2024 12:23:28.
plugin_vm.py File 3561 bytes February 22 2024 12:23:28.
repository.py File 1530 bytes February 22 2024 12:23:28.

Reading File: //usr/lib/python3.6/site-packages/tuned///plugins/plugin_usb.py

from . import base
from .decorators import *
import tuned.logs
from tuned.utils.commands import commands
import glob
import errno

log = tuned.logs.get()

class USBPlugin(base.Plugin):
	"""
	`usb`::
	
	Sets autosuspend timeout of USB devices to the value specified by the
	[option]`autosuspend` option in seconds. If the [option]`devices`
	option is specified, the [option]`autosuspend` option applies to only
	the USB devices specified, otherwise it applies to all USB devices.
	+
	The value `0` means that autosuspend is disabled.
	+
	.To turn off USB autosuspend for USB devices `1-1` and `1-2`
	====
	----
	[usb]
	devices=1-1,1-2
	autosuspend=0
	----
	====
	"""

	def _init_devices(self):
		self._devices_supported = True
		self._free_devices = set()
		self._assigned_devices = set()

		for device in self._hardware_inventory.get_devices("usb").match_property("DEVTYPE", "usb_device"):
			self._free_devices.add(device.sys_name)

		self._cmd = commands()

	def _get_device_objects(self, devices):
		return [self._hardware_inventory.get_device("usb", x) for x in devices]

	@classmethod
	def _get_config_options(self):
		return {
			"autosuspend" : None,
		}

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

	def _instance_cleanup(self, instance):
		pass

	def _autosuspend_sysfile(self, device):
		return "/sys/bus/usb/devices/%s/power/autosuspend" % device

	@command_set("autosuspend", per_device=True)
	def _set_autosuspend(self, value, device, sim, remove):
		enable = self._option_bool(value)
		if enable is None:
			return None

		val = "1" if enable else "0"
		if not sim:
			sys_file = self._autosuspend_sysfile(device)
			self._cmd.write_to_file(sys_file, val, \
				no_error = [errno.ENOENT] if remove else False)
		return val

	@command_get("autosuspend")
	def _get_autosuspend(self, device, ignore_missing=False):
		sys_file = self._autosuspend_sysfile(device)
		return self._cmd.read_file(sys_file, no_error=ignore_missing).strip()

SILENT KILLER Tool