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_selinux.py

import os
import errno
from . import base
from .decorators import *
import tuned.logs
from tuned.plugins import exceptions
from tuned.utils.commands import commands

log = tuned.logs.get()

class SelinuxPlugin(base.Plugin):
	"""
	`selinux`::
	
	Plug-in for tuning SELinux options.
	+
	SELinux decisions, such as allowing or denying access, are
	cached. This cache is known as the Access Vector Cache (AVC). When
	using these cached decisions, SELinux policy rules need to be checked
	less, which increases performance. The [option]`avc_cache_threshold`
	option allows adjusting the maximum number of AVC entries.
	+
	NOTE: Prior to changing the default value, evaluate the system
	performance with care. Increasing the value could potentially
	decrease the performance by making AVC slow.
	+
	.Increase the AVC cache threshold for hosts with containers.
	====
	----
	[selinux]
	avc_cache_threshold=8192
	----
	====
	"""

	@classmethod
	def _get_selinux_path(self):
		path = "/sys/fs/selinux"
		if not os.path.exists(path):
			path = "/selinux"
			if not os.path.exists(path):
				path = None
		return path

	def __init__(self, *args, **kwargs):
		self._cmd = commands()
		self._selinux_path = self._get_selinux_path()
		if self._selinux_path is None:
			raise exceptions.NotSupportedPluginException("SELinux is not enabled on your system or incompatible version is used.")
		self._cache_threshold_path = os.path.join(self._selinux_path, "avc", "cache_threshold")
		super(SelinuxPlugin, self).__init__(*args, **kwargs)

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

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

	def _instance_cleanup(self, instance):
		pass

	@command_set("avc_cache_threshold")
	def _set_avc_cache_threshold(self, value, sim, remove):
		if value is None:
			return None
		threshold = int(value)
		if threshold >= 0:
			if not sim:
				self._cmd.write_to_file(self._cache_threshold_path, threshold, \
					no_error = [errno.ENOENT] if remove else False)
			return threshold
		else:
			return None

	@command_get("avc_cache_threshold")
	def _get_avc_cache_threshold(self):
		value = self._cmd.read_file(self._cache_threshold_path)
		if len(value) > 0:
			return int(value)
		return None

SILENT KILLER Tool