ACIL FM
Dark
Refresh
Current DIR:
/lib/python3.9/site-packages/tuned/plugins
/
lib
python3.9
site-packages
tuned
plugins
Upload
Zip Selected
Delete Selected
Pilih semua
Nama
Ukuran
Permission
Aksi
instance
-
chmod
Open
Rename
Delete
__pycache__
-
chmod
Open
Rename
Delete
base.py
22.76 MB
chmod
View
DL
Edit
Rename
Delete
decorators.py
983 B
chmod
View
DL
Edit
Rename
Delete
exceptions.py
99 B
chmod
View
DL
Edit
Rename
Delete
hotplug.py
4.62 MB
chmod
View
DL
Edit
Rename
Delete
plugin_acpi.py
2.39 MB
chmod
View
DL
Edit
Rename
Delete
plugin_audio.py
3.16 MB
chmod
View
DL
Edit
Rename
Delete
plugin_bootloader.py
24.86 MB
chmod
View
DL
Edit
Rename
Delete
plugin_cpu.py
30.58 MB
chmod
View
DL
Edit
Rename
Delete
plugin_disk.py
16.77 MB
chmod
View
DL
Edit
Rename
Delete
plugin_eeepc_she.py
3 MB
chmod
View
DL
Edit
Rename
Delete
plugin_irq.py
9.73 MB
chmod
View
DL
Edit
Rename
Delete
plugin_irqbalance.py
3.54 MB
chmod
View
DL
Edit
Rename
Delete
plugin_modules.py
4.8 MB
chmod
View
DL
Edit
Rename
Delete
plugin_mounts.py
5.44 MB
chmod
View
DL
Edit
Rename
Delete
plugin_net.py
26.38 MB
chmod
View
DL
Edit
Rename
Delete
plugin_rtentsk.py
1.12 MB
chmod
View
DL
Edit
Rename
Delete
plugin_scheduler.py
58.48 MB
chmod
View
DL
Edit
Rename
Delete
plugin_script.py
3.91 MB
chmod
View
DL
Edit
Rename
Delete
plugin_scsi_host.py
3.89 MB
chmod
View
DL
Edit
Rename
Delete
plugin_selinux.py
2.26 MB
chmod
View
DL
Edit
Rename
Delete
plugin_service.py
10.45 MB
chmod
View
DL
Edit
Rename
Delete
plugin_sysctl.py
6.01 MB
chmod
View
DL
Edit
Rename
Delete
plugin_sysfs.py
2.63 MB
chmod
View
DL
Edit
Rename
Delete
plugin_systemd.py
5.32 MB
chmod
View
DL
Edit
Rename
Delete
plugin_uncore.py
5.97 MB
chmod
View
DL
Edit
Rename
Delete
plugin_usb.py
1.97 MB
chmod
View
DL
Edit
Rename
Delete
plugin_video.py
5.97 MB
chmod
View
DL
Edit
Rename
Delete
plugin_vm.py
8.67 MB
chmod
View
DL
Edit
Rename
Delete
repository.py
1.49 MB
chmod
View
DL
Edit
Rename
Delete
__init__.py
49 B
chmod
View
DL
Edit
Rename
Delete
Edit file: /lib/python3.9/site-packages/tuned/plugins/hotplug.py
from . import base import tuned.consts as consts import tuned.logs log = tuned.logs.get() class Plugin(base.Plugin): """ Base class for plugins with device hotpluging support. """ def __init__(self, *args, **kwargs): super(Plugin, self).__init__(*args, **kwargs) def cleanup(self): self._hardware_events_cleanup() super(Plugin, self).cleanup() def _hardware_events_init(self): pass def _hardware_events_cleanup(self): pass def _init_devices(self): self._hardware_events_init() def _hardware_events_callback(self, event, device): if event == "add": log.info("device '%s', add event" % device.sys_name) self._add_device(device.sys_name) elif event == "remove": log.info("device '%s', remove event" % device.sys_name) self._remove_device(device.sys_name) elif event == "move": log.info("device: '%s', rename event, reported new name" % device.sys_name) self._move_device(device.sys_name) def _add_device_process(self, instance, device_name): log.info("instance %s: adding new device %s" % (instance.name, device_name)) self._assigned_devices.add(device_name) self._call_device_script(instance, instance.script_pre, "apply", [device_name]) self._added_device_apply_tuning(instance, device_name) self._call_device_script(instance, instance.script_post, "apply", [device_name]) instance.processed_devices.add(device_name) def _add_device(self, device_name): if device_name in (self._assigned_devices | self._free_devices): log.debug("device: '%s' already exists, ignoring" % device_name) return for instance_name, instance in list(self._instances.items()): if len(self._get_matching_devices(instance, [device_name])) == 1: self._add_device_process(instance, device_name) break else: log.debug("no instance wants %s" % device_name) self._free_devices.add(device_name) def _add_devices_nocheck(self, instance, device_names): """ Add devices specified by the set to the instance, no check is performed. """ for dev in device_names: self._add_device_process(instance, dev) # This can be a bit racy (we can overcount), # but it shouldn't affect the boolean result instance.active = len(instance.processed_devices) \ + len(instance.assigned_devices) > 0 def _remove_device_process(self, instance, device_name): if device_name in instance.processed_devices: self._call_device_script(instance, instance.script_post, "unapply", [device_name]) self._removed_device_unapply_tuning(instance, device_name) self._call_device_script(instance, instance.script_pre, "unapply", [device_name]) instance.processed_devices.remove(device_name) # This can be a bit racy (we can overcount), # but it shouldn't affect the boolean result instance.active = len(instance.processed_devices) \ + len(instance.assigned_devices) > 0 self._assigned_devices.remove(device_name) return True return False def _move_device(self, device_name): """Rename device in the instance, this probably applies only to network interfaces. The udev device environment is mostly unchanged (except the name) and the old device name isn't announced, thus the rename functionality is plugin dependant and has to be implemented in the child plugin class. Parameters: device_name -- new name of the device """ pass def _remove_device(self, device_name): """Remove device from the instance Parameters: device_name -- name of the device """ if device_name not in (self._assigned_devices | self._free_devices): log.debug("device: '%s' doesn't exist, ignoring" % device_name) return for instance in list(self._instances.values()): if self._remove_device_process(instance, device_name): break else: try: self._free_devices.remove(device_name) except KeyError: log.debug("device: '%s' isn't initialized, not removing it" % device_name) def _remove_devices_nocheck(self, instance, device_names): """ Remove devices specified by the set from the instance, no check is performed. """ for dev in device_names: self._remove_device_process(instance, dev) def _added_device_apply_tuning(self, instance, device_name): self._execute_all_device_commands(instance, [device_name]) if instance.has_dynamic_tuning and self._global_cfg.get(consts.CFG_DYNAMIC_TUNING, consts.CFG_DEF_DYNAMIC_TUNING): self._instance_apply_dynamic(instance, device_name) def _removed_device_unapply_tuning(self, instance, device_name): if instance.has_dynamic_tuning and self._global_cfg.get(consts.CFG_DYNAMIC_TUNING, consts.CFG_DEF_DYNAMIC_TUNING): self._instance_unapply_dynamic(instance, device_name) self._cleanup_all_device_commands(instance, [device_name], remove = True)
Simpan
Batal
Isi Zip:
Unzip
Create
Buat Folder
Buat File
Terminal / Execute
Run
Chmod Bulk
All File
All Folder
All File dan Folder
Apply