HEX
Server: LiteSpeed
System: Linux my-kul-web2054.main-hosting.eu 5.14.0-611.13.1.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Dec 11 04:57:59 EST 2025 x86_64
User: u665686179 (665686179)
PHP: 8.2.30
Disabled: system, exec, shell_exec, passthru, mysql_list_dbs, ini_alter, dl, symlink, link, chgrp, leak, popen, apache_child_terminate, virtual, mb_send_mail
Upload Files
File: //lib/python3.9/site-packages/bcc/__pycache__/perf.cpython-39.pyc
a

u*�h!�@sxddlZddlZddlmZGdd�dej�ZGdd�dej�ZGdd	�d	ej�ZGd
d�dej�Z	Gdd
�d
e
�ZdS)�N�)�get_online_cpusc@s eZdZdejfdejfgZdS)�_sample_period_union�
sample_periodZsample_freqN��__name__�
__module__�__qualname__�ct�c_ulong�_fields_�r
r
�,/usr/lib/python3.9/site-packages/bcc/perf.pyrs�rc@s eZdZdejfdejfgZdS)�_wakeup_events_union�
wakeup_eventsZwakeup_watermarkN)rrr	r
�c_uintrr
r
r
rrs�rc@s0eZdZdejfdejfdejfdejfgZdS)�_bp_addr_unionZbp_addrZkprobe_funcZuprobe_pathZconfig1Nrr
r
r
rrs
�rc@s0eZdZdejfdejfdejfdejfgZdS)�
_bp_len_unionZbp_lenZkprobe_addrZprobe_offsetZconfig2Nrr
r
r
rr's
�rc@s�eZdZGdd�dej�ZdZdZdZdZ	dZ
dZd	Zd
Z
dZejdd
d�ZejZejZeddd��Zede	dfdd��Zeddd��ZdS)�Perfc7seZdZgd�Zdejfdejfdejfdefdejfdejfdejd	fd
ejd	fdejd	fdejd	fd
ejd	fdejd	fdejd	fdejd	fdejd	fdejd	fdejd	fdejd	fdejd	fdejd	fdejd	fdejdfdejd	fdejd	fdejd	fdejd	fdejd	fdejd	fd ejd	fd!ejd	fd"ejd	fd#ejd	fd$ejd	fd%ejd	fd&ejd	fd'ejd	fd(ejd	fd)ejd	fd*ejd	fd+ejd,fd-efd.ejfd/e	fd0e
fd1ejfd2ejfd3ejfd4ejfd5ejfd6ejfd7ejfd8ejfd9ejfd:ejfg6Z
d;d<�Z�fd=d>�Z�ZS)?zPerf.perf_event_attr)rrrr�type�size�configr�sample_typeZread_formatZdisabledrZinheritZpinnedZ	exclusiveZexclude_userZexclude_kernelZ
exclude_hvZexclude_idleZmmapZcomm�freqZinherit_statZenable_on_execZtaskZ	watermarkZ
precise_ip�Z	mmap_dataZ
sample_id_allZexclude_hostZ
exclude_guestZexclude_callchain_kernelZexclude_callchain_userZmmap2Z	comm_execZuse_clockidZcontext_switchZwrite_backwardZ
namespacesZksymbolZ	bpf_eventZ
aux_outputZcgroupZ	text_pokeZ__reserved_1�rZbp_typerrZbranch_sample_typeZsample_regs_userZsample_stack_userZclockidZsample_regs_intrZ
aux_watermarkZsample_max_stackZ__reserved_2Zaux_sample_sizeZ__reserved_3cCs|d|_dd�|jD�|_|j�dd�tjD��|j�dd�tjD��|j�dd�tjD��|j�dd�tjD��dS)N�xcSsg|]}|d�qS�rr
��.0�itemr
r
r�
<listcomp>t�z1Perf.perf_event_attr.__init__.<locals>.<listcomp>cSsg|]}|d�qSrr
rr
r
rr!ur"cSsg|]}|d�qSrr
rr
r
rr!vr"cSsg|]}|d�qSrr
rr
r
rr!wr"cSsg|]}|d�qSrr
rr
r
rr!xr")rr�ctype_fields�extendrrrr)�selfr
r
r�__init__rszPerf.perf_event_attr.__init__cs<t|d�r$||jvr$td�||��ttj|��||�dS)Nr#zoWarning: Setting field {} on perf_event_attr that isn't part of the ctype - {} won't make it to perf_event_open)�hasattrr#�print�format�superr�perf_event_attr�__setattr__)r%�key�value��	__class__r
rr,zsz Perf.perf_event_attr.__setattr__)rrr	Z_anonymous_r
rrrrrrZc_intZc_uint16rr&r,�
__classcell__r
r
r/rr+1st

































�9r+i*rrr�i�i$@i$z	libc.so.6T)Z	use_errno���cCs�t�tjt�|�||dtj�}|dkr>t��}t|t�	|���|j
tjkrvt�|tj
d�dkrvt��}t|t�	|���t�|tjd�dkr�t��}t|t�	|���dS)Nr4rzcommon_pid == -17)r�syscall�NR_PERF_EVENT_OPENr
Zbyref�PERF_FLAG_FD_CLOEXECZ	get_errno�OSError�os�strerrorr�PERF_TYPE_TRACEPOINT�ioctl�PERF_EVENT_IOC_SET_FILTER�PERF_EVENT_IOC_ENABLE)�cpu�attr�pidZpfdZerrno_r
r
r�
_open_for_cpu�s$�
��zPerf._open_for_cpucCs\t��}||_||_tj|_|dkr2d|_||_nd|_d|_t	�D]}t�
|||�qDdS)Nrri��)rr+rr�PERF_SAMPLE_RAWrrrrrrB)Z	tpoint_idrAZptyperr@r?r
r
r�perf_event_open�s
zPerf.perf_event_opencCst�D]}t�|||�qdS)N)rrrB)r@rAr?r
r
r�perf_custom_event_open�s
zPerf.perf_custom_event_openN)r4)r4)rrr	r
Z	Structurer+r6ZPERF_TYPE_HARDWAREZPERF_TYPE_SOFTWAREr;ZPERF_TYPE_HW_CACHErCr7r=r>ZCDLLZlibcr5r<�staticmethodrBrDrEr
r
r
rr/s*O�r)Zctypesr
r9Zutilsr�Unionrrrr�objectrr
r
r
r�<module>s