OXIESEC PANEL
- Current Dir:
/
/
lib
/
python3.9
/
site-packages
/
tuned
/
profiles
/
functions
Server IP: 2a02:4780:11:1594:0:ef5:22d7:a
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
02/13/2025 09:25:13 PM
rwxr-xr-x
📄
__init__.py
35 bytes
08/07/2024 08:09:40 PM
rw-r--r--
📁
__pycache__
-
02/13/2025 09:25:13 PM
rwxr-xr-x
📄
base.py
1.02 KB
08/07/2024 08:09:40 PM
rw-r--r--
📄
function_assertion.py
767 bytes
08/07/2024 08:09:40 PM
rw-r--r--
📄
function_assertion_non_equal.py
811 bytes
08/07/2024 08:09:40 PM
rw-r--r--
📄
function_calc_isolated_cores.py
1.6 KB
08/07/2024 08:09:40 PM
rw-r--r--
📄
function_check_net_queue_count.py
653 bytes
08/07/2024 08:09:40 PM
rw-r--r--
📄
function_cpuinfo_check.py
1011 bytes
08/07/2024 08:09:40 PM
rw-r--r--
📄
function_cpulist2devs.py
460 bytes
08/07/2024 08:09:40 PM
rw-r--r--
📄
function_cpulist2hex.py
470 bytes
08/07/2024 08:09:40 PM
rw-r--r--
📄
function_cpulist2hex_invert.py
624 bytes
08/07/2024 08:09:40 PM
rw-r--r--
📄
function_cpulist_invert.py
659 bytes
08/07/2024 08:09:40 PM
rw-r--r--
📄
function_cpulist_online.py
651 bytes
08/07/2024 08:09:40 PM
rw-r--r--
📄
function_cpulist_pack.py
637 bytes
08/07/2024 08:09:40 PM
rw-r--r--
📄
function_cpulist_present.py
691 bytes
08/07/2024 08:09:40 PM
rw-r--r--
📄
function_cpulist_unpack.py
511 bytes
08/07/2024 08:09:40 PM
rw-r--r--
📄
function_exec.py
487 bytes
08/07/2024 08:09:40 PM
rw-r--r--
📄
function_hex2cpulist.py
472 bytes
08/07/2024 08:09:40 PM
rw-r--r--
📄
function_intel_recommended_pstate.py
1.33 KB
08/07/2024 08:09:40 PM
rw-r--r--
📄
function_kb2s.py
405 bytes
08/07/2024 08:09:40 PM
rw-r--r--
📄
function_log.py
451 bytes
08/07/2024 08:09:40 PM
rw-r--r--
📄
function_lscpu_check.py
1.02 KB
08/07/2024 08:09:40 PM
rw-r--r--
📄
function_package2cpus.py
1.24 KB
08/07/2024 08:09:40 PM
rw-r--r--
📄
function_package2uncores.py
1.6 KB
08/07/2024 08:09:40 PM
rw-r--r--
📄
function_regex_search_ternary.py
554 bytes
08/07/2024 08:09:40 PM
rw-r--r--
📄
function_s2kb.py
417 bytes
08/07/2024 08:09:40 PM
rw-r--r--
📄
function_strip.py
406 bytes
08/07/2024 08:09:40 PM
rw-r--r--
📄
function_virt_check.py
595 bytes
08/07/2024 08:09:40 PM
rw-r--r--
📄
functions.py
2.16 KB
08/07/2024 08:09:40 PM
rw-r--r--
📄
repository.py
1.25 KB
08/07/2024 08:09:40 PM
rw-r--r--
Editing: function_calc_isolated_cores.py
Close
import os import glob import tuned.logs from . import base import tuned.consts as consts log = tuned.logs.get() class calc_isolated_cores(base.Function): """ Calculates and returns isolated cores. The argument specifies how many cores per socket reserve for housekeeping. If not specified, 1 core per socket is reserved for housekeeping and the rest is isolated. """ def __init__(self): # max 1 argument super(calc_isolated_cores, self).__init__("calc_isolated_cores", 1) def execute(self, args): if not super(calc_isolated_cores, self).execute(args): return None cpus_reserve = 1 if len(args) > 0: if not args[0].isdecimal() or int(args[0]) < 0: log.error("invalid argument '%s' for builtin function '%s', it must be non-negative integer" % (args[0], self._name)) return None else: cpus_reserve = int(args[0]) topo = {} for cpu in glob.iglob(os.path.join(consts.SYSFS_CPUS_PATH, "cpu*")): cpuid = os.path.basename(cpu)[3:] if cpuid.isdecimal(): physical_package_id = os.path.join(cpu, "topology/physical_package_id") # Show no errors when the physical_package_id file does not exist -- the CPU may be offline. if not os.path.exists(physical_package_id): log.debug("file '%s' does not exist, cpu%s offline?" % (physical_package_id, cpuid)) continue socket = self._cmd.read_file(physical_package_id).strip() if socket.isdecimal(): topo[socket] = topo.get(socket, []) + [cpuid] isol_cpus = [] for cpus in topo.values(): cpus.sort(key = int) isol_cpus = isol_cpus + cpus[cpus_reserve:] isol_cpus.sort(key = int) return ",".join(isol_cpus)