a Á]›i, ã @ sŒ d dl Z d dlZddlmZ ddlT d dlZd dlT d dlm Z d dl mZ d dlZd dl Z ej ¡ ZddgZdd gZG d d„ dejƒZdS )é Né )Úbase)Ú*)ÚcommandsZbase_reachable_timeZretrans_timez /run/sysctl.dz /etc/sysctl.dc sˆ e Zd ZdZ‡ fdd„Zdd„ Zdd„ Zdd „ Zd d„ Ze j fdd „Zdd„ Zdd„ Z dd„ Zdd„ Zdd„ Zdd„ Zddd„Z‡ ZS )ÚSysctlPlugina5 Sets various kernel parameters at runtime. This plug-in is used for applying custom `sysctl` settings and should only be used to change system settings that are not covered by other *TuneD* plug-ins. If the settings are covered by other *TuneD* plug-ins, use those plug-ins instead. The syntax for this plug-in is `_key_=_value_`, where `_key_` is the same as the key name provided by the `sysctl` utility. .Adjusting the kernel runtime kernel.sched_min_granularity_ns value ==== ---- [sysctl] kernel.sched_min_granularity_ns=3000000 ---- ==== c s( t t| ƒj|i |¤Ž d| _tƒ | _d S )NT)Úsuperr Ú__init__Z_has_dynamic_optionsr Ú_cmd)ÚselfÚargsÚkwargs©Ú __class__© ú?/usr/lib/python3.9/site-packages/tuned/plugins/plugin_sysctl.pyr ) s zSysctlPlugin.__init__c C sh d|_ d|_| |j¡}| j |i ¡|_t|jƒdkr\t d¡ | |¡ i |_| j |¡ |j|_ d S )NFTr z0recovering old sysctl settings from previous run)Z_has_dynamic_tuningZ_has_static_tuningÚ_storage_keyÚnameÚ_storageÚgetÚ_sysctl_originalÚlenÚlogÚinfoÚ_instance_unapply_staticÚunsetÚoptionsÚ_sysctl©r ÚinstanceÚstorage_keyr r r Ú_instance_init. s zSysctlPlugin._instance_initc C s | |j¡}| j |¡ d S ©N)r r r r r r r r Ú_instance_cleanup> s zSysctlPlugin._instance_cleanupc C sÀ t |j ¡ ƒD ]h\}}| |¡}|d u r8t d| ¡ q| j | j |¡¡}| ||¡}|d ur||j|<