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 ]
Name | Type | Size | Last Modified | Actions |
---|---|---|---|---|
__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. |
from . import base import glob import re import os.path from .decorators import * import tuned.logs import tuned.consts as consts from subprocess import * from tuned.utils.commands import commands log = tuned.logs.get() class SysfsPlugin(base.Plugin): """ `sysfs`:: Sets various `sysfs` settings specified by the plug-in options. + The syntax is `_name_=_value_`, where `_name_` is the `sysfs` path to use and `_value_` is the value to write. The `sysfs` path supports the shell-style wildcard characters (see `man 7 glob` for additional detail). + Use this plugin in case you need to change some settings that are not covered by other plug-ins. Prefer specific plug-ins if they cover the required settings. + .Ignore corrected errors and associated scans that cause latency spikes ==== ---- [sysfs] /sys/devices/system/machinecheck/machinecheck*/ignore_ce=1 ---- ==== """ # TODO: resolve possible conflicts with sysctl settings from other plugins def __init__(self, *args, **kwargs): super(SysfsPlugin, self).__init__(*args, **kwargs) self._has_dynamic_options = True self._cmd = commands() def _instance_init(self, instance): instance._has_dynamic_tuning = False instance._has_static_tuning = True instance._sysfs = dict([(os.path.normpath(key_value[0]), key_value[1]) for key_value in list(instance.options.items())]) instance._sysfs_original = {} def _instance_cleanup(self, instance): pass def _instance_apply_static(self, instance): for key, value in list(instance._sysfs.items()): v = self._variables.expand(value) for f in glob.iglob(key): if self._check_sysfs(f): instance._sysfs_original[f] = self._read_sysfs(f) self._write_sysfs(f, v) else: log.error("rejecting write to '%s' (not inside /sys)" % f) def _instance_verify_static(self, instance, ignore_missing, devices): ret = True for key, value in list(instance._sysfs.items()): v = self._variables.expand(value) for f in glob.iglob(key): if self._check_sysfs(f): curr_val = self._read_sysfs(f) if self._verify_value(f, v, curr_val, ignore_missing) == False: ret = False return ret def _instance_unapply_static(self, instance, rollback = consts.ROLLBACK_SOFT): for key, value in list(instance._sysfs_original.items()): self._write_sysfs(key, value) def _check_sysfs(self, sysfs_file): return re.match(r"^/sys/.*", sysfs_file) def _read_sysfs(self, sysfs_file): data = self._cmd.read_file(sysfs_file).strip() if len(data) > 0: return self._cmd.get_active_option(data, False) else: return None def _write_sysfs(self, sysfs_file, value): return self._cmd.write_to_file(sysfs_file, value)
SILENT KILLER Tool