403 Forbidden


Disable Functions:
Path : /usr/libexec/perf-core/scripts/python/
File Upload :
Command :
Current File : //usr/libexec/perf-core/scripts/python/netdev-times.pyc

�
G��dc@s2ddlZddlZejjejdd�ddlTddlTddlTgZiZ	iZ
gZgZdZ
dagZdagZdagZdadadadadZdZdZd	Zd
ZdZd�Zd
�ZdZ dZ!dZ"dZ#dZ$dZ%dZ&dZ'dZ(dZ)d�Z*d�Z+d�Z,d�Z-d�Z.d�Z/d�Z0d�Z1ddd �Z3d!�Z4d"�Z5d#�Z6d$�Z7d%�Z8d&�Z9d'�Z:d(�Z;d)�Z<d*�Z=d+�Z>d,�Z?d-�Z@d.�ZAd/�ZBd0�ZCd1�ZDd2�ZEd3�ZFd4�ZGdS(5i����NtPERF_EXEC_PATHs./scripts/python/Perf-Trace-Util/lib/Perf/Trace(t*iiiiiiicCs||dS(Ng��.A((tsrctdst((s5/usr/libexec/perf-core/scripts/python/netdev-times.pyt	diff_msec9scCs�tdkr)|djt�dkr)dSd|d|dt|d�t|d�dt|d|d�t|d|d�fGHdS(	Nitdevs.%7s %5d %6d.%06dsec %12.3fmsec      %12.3fmsectlentqueue_ti�txmit_ttfree_t(Rtfindt
nsecs_secstnsecs_nsecsR(thunk((s5/usr/libexec/perf-core/scripts/python/netdev-times.pytprint_transmit=s%
s   irq_entry(+%.3fmsec irq=%d:%s)s  softirq_entry(+%.3fmsec)s  napi_poll_exit(+%.3fmsec %s)s
         |s         |            |s7         |---netif_receive_skb(+%.3fmsec skb=%x len=%d)s'         |---netif_rx(+%.3fmsec skb=%x)s8         |      skb_copy_datagram_iovec(+%.3fmsec %d:%s)s0         |      kfree_skb(+%.3fmsec location=%x)s&         |      consume_skb(+%.3fmsec)cCsd}|d}|dd}|dd}tdkrxJtt|��D]-}||djt�dkrKd}PqKqKWnd}|dkr�dSdt|�t|�d|fGHx�tt|��D]�}tt|||d�||d	||dfGHtGH||d
}x\tt|��D]H}||}|ddkr)t	t||d
�|dfGHtGHq)q)Wq�Wt
t||d�GHtGH|d
}	x]tt|	��D]I}|	|}
|
ddkrtt||
d�|
dfGH|t|	�dkrdGHq�tGHq�tt||
d�|
d|
dfGHd|
j
�krtGHtt||
d�|
d|
dfGHnvd|
j
�kr�tGH|
ddkr�tt||
d�|
dfGHq�|
ddkr�tt||
d�GHq�ntGHq�WdS(Nitirq_listtcput	irq_ent_ttnameis%d.%06dsec cpu=%di�tirqt
event_listteventtnetif_rxttimetskbaddrt
sirq_ent_tt
event_namet	napi_polltevent_tRtRtcommtcomm_ttpidthandlet	kfree_skbtlocationtconsume_skb(RtrangeRR
RRtPF_IRQ_ENTRYRtPF_JOINTt	PF_NET_RXt
PF_SOFT_ENTRYtPF_NAPI_POLLtPF_NET_RECVtkeyst	PF_WJOINTtPF_CPY_DGRAMtPF_KFREE_SKBtPF_CONS_SKB(R
t	show_hunkRRtbase_ttitirq_event_listtjt	irq_eventRR((s5/usr/libexec/perf-core/scripts/python/netdev-times.pyt
print_receiveUsv






cCs�x�tttj��D]�}|dkr.qntj|}|dkrPdaq|dkredaq|jddd�dkr�|daq|dkrdaqqWtdkr�tdkr�dadandS(Nittxitrxsdev=itdebug(	R%Rtsystargvtshow_txtshow_rxR
RR:(R3targ((s5/usr/libexec/perf-core/scripts/python/netdev-times.pyttrace_begin�s
		

cCsItjd��xsttt��D]_}t|}|t}|dkrVt|�q#|dkrot|�q#|dkr�t|�q#|dkr�t|�q#|dkr�t	|�q#|dkr�t
|�q#|dkr�t|�q#|d	krt|�q#|d
krt
|�q#|dkr7t|�q#|dkrPt|�q#|d
krit|�q#|dkr#t|�q#q#Wtr�x+ttt��D]}tt|�q�Wntr�dGHx+ttt��D]}tt|�q�WntrEdGHdGHdtt�tfGHdtt�tfGHdtt�tfGHndS(NcSst|t|t�S(N(tcmptEINFO_IDX_TIME(tatb((s5/usr/libexec/perf-core/scripts/python/netdev-times.pyt<lambda>�s
tirq__softirq_exittirq__softirq_entrytirq__softirq_raisetirq__irq_handler_entrytirq__irq_handler_exittnapi__napi_polltnet__netif_receive_skbt
net__netif_rxtskb__skb_copy_datagram_iovectnet__net_dev_queuetnet__net_dev_xmittskb__kfree_skbtskb__consume_skbsA   dev    len      Qdisc               netdevice             freesdebug buffer statuss----------------------------s xmit Qdisc:remain:%d overflow:%ds$xmit netdevice:remain:%d overflow:%dsreceive:remain:%d overflow:%d(tall_event_listtsortR%RtEINFO_IDX_NAMEthandle_irq_softirq_exitthandle_irq_softirq_entrythandle_irq_softirq_raisethandle_irq_handler_entrythandle_irq_handler_exitthandle_napi_pollthandle_netif_receive_skbthandle_netif_rxthandle_skb_copy_datagram_iovecthandle_net_dev_queuethandle_net_dev_xmitthandle_kfree_skbthandle_consume_skbR>treceive_hunk_listR7R=ttx_free_listRR:t
tx_queue_listtof_count_tx_queue_listttx_xmit_listtof_count_tx_xmit_listtrx_skb_listtof_count_rx_skb_list(R3t
event_infoR((s5/usr/libexec/perf-core/scripts/python/netdev-times.pyt	trace_end�s\













c	
CsQtdd|�dkrdS|||t||�|||f}	tj|	�dS(NRGtvectNET_RX(t
symbol_strtnsecsRStappend(
RtcontextRtsectnsecR Rt	callchainRmRk((s5/usr/libexec/perf-core/scripts/python/netdev-times.pyRG�s$c	
CsQtdd|�dkrdS|||t||�|||f}	tj|	�dS(NRGRmRn(RoRpRSRq(
RRrRRsRtR RRuRmRk((s5/usr/libexec/perf-core/scripts/python/netdev-times.pyRF�s$c	
CsQtdd|�dkrdS|||t||�|||f}	tj|	�dS(NRGRmRn(RoRpRSRq(
RRrRRsRtR RRuRmRk((s5/usr/libexec/perf-core/scripts/python/netdev-times.pyRH�s$c
Cs8|||t||�||||	f}
tj|
�dS(N(RpRSRq(RRrRRsRtR RRuRtirq_nameRk((s5/usr/libexec/perf-core/scripts/python/netdev-times.pyRI�sc
Cs8|||t||�||||	f}
tj|
�dS(N(RpRSRq(RRrRRsRtR RRuRtretRk((s5/usr/libexec/perf-core/scripts/python/netdev-times.pyRJ�s'c

Cs>|||t||�||||	|
|f
}tj|�dS(N(RpRSRq(
RRrRRsRtR RRutnapitdev_nametworktbudgetRk((s5/usr/libexec/perf-core/scripts/python/netdev-times.pyRKsc	Cs;|||t||�||||	|
f	}tj|�dS(N(RpRSRq(RRrRRsRtR RRuRtskblenRyRk((s5/usr/libexec/perf-core/scripts/python/netdev-times.pyRLsc	Cs;|||t||�||||	|
f	}tj|�dS(N(RpRSRq(RRrRRsRtR RRuRR|RyRk((s5/usr/libexec/perf-core/scripts/python/netdev-times.pyRMsc	Cs;|||t||�||||	|
f	}tj|�dS(N(RpRSRq(RRrRRsRtR RRuRR|RyRk((s5/usr/libexec/perf-core/scripts/python/netdev-times.pyROsc

Cs>|||t||�||||	|
|f
}tj|�dS(N(RpRSRq(
RRrRRsRtR RRuRR|trcRyRk((s5/usr/libexec/perf-core/scripts/python/netdev-times.pyRPsc	Cs;|||t||�||||	|
f	}tj|�dS(N(RpRSRq(RRrRRsRtR RRuRtprotocolR#Rk((s5/usr/libexec/perf-core/scripts/python/netdev-times.pyRQsc	
Cs5|||t||�|||f}	tj|	�dS(N(RpRSRq(
RRrRRsRtR RRuRRk((s5/usr/libexec/perf-core/scripts/python/netdev-times.pyRR$s	c
Cs8|||t||�||||	f}
tj|
�dS(N(RpRSRq(RRrRRsRtR RRuRR|Rk((s5/usr/libexec/perf-core/scripts/python/netdev-times.pyRN)sc
Cst|\}}}}}}}}|tj�kr=gt|<ni|d6|d6|d6|d6}	t|j|	�dS(NRRRR(tirq_dicR,Rq(
RkRRrRRR RRRvt
irq_record((s5/usr/libexec/perf-core/scripts/python/netdev-times.pyRY/s

"c
Cs�|\}}}}}}}}|tj�kr4dSt|j�}	||	dkrXdS|	ji|d6�d|	j�kr�t|j|	�ndS(NRt	irq_ext_tR(RR,tpoptupdateRq(
RkRRrRRR RRRwR�((s5/usr/libexec/perf-core/scripts/python/netdev-times.pyRZ6sc
Cs�|\}}}}}}}|tj�ksCtt|�dkrGdSt|j�}d|j�krv|d}	ng}	|	ji|d6dd6�|ji|	d6�t|j|�dS(NiRRt
sirq_raiseR(RR,RR�RqR�(
RkRRrRRR RRmR�R4((s5/usr/libexec/perf-core/scripts/python/netdev-times.pyRXBs
cCs7|\}}}}}}}i|d6gd6t|<dS(NRR(t
net_rx_dic(RkRRrRRR RRm((s5/usr/libexec/perf-core/scripts/python/netdev-times.pyRWPscCs�|\}}}}}}}g}d}	|tj�krMt|}t|=n|tj�kr�t|d}
t|d}	t|=n|gks�|	dkr�dSi|
d6|d6|d6|	d6}tj|�dS(NiRRt
sirq_ext_tR(RR,R�RcRq(RkRRrRRR RRmRRRtrec_data((s5/usr/libexec/perf-core/scripts/python/netdev-times.pyRVTs


c

Cs�|\
}}}}}}}}}	}
|tj�kr}t|d}idd6|d6|d6|	d6|
d6}|j|�ndS(NRRRRRRzR{(R�R,Rq(
RkRRrRRR RRxRyRzR{RR�((s5/usr/libexec/perf-core/scripts/python/netdev-times.pyR[fs$
c	Cs�|\	}}}}}}}}}	|tj�ksItt|�dkrMdSt|j�}
d|
j�kr||
d}ng}|ji|d6dd6|d6|d6|	d6�|
ji|d6�t|j|
�dS(	NiRRRRRR|Ry(RR,RR�RqR�(RkRRrRRR RRR|RyR�R4((s5/usr/libexec/perf-core/scripts/python/netdev-times.pyR]ps!
c	Cs�|\	}}}}}}}}}	|tj�kr�idd6|d6|d6|d6}
t|d}|j|
�tjd|
�tt�tkr�tj�td7aq�ndS(	Ntnetif_receive_skbRRRRRii(	R�R,RqRitinsertRt
buffer_budgetR�Rj(RkRRrRRR RRR|RyR�R((s5/usr/libexec/perf-core/scripts/python/netdev-times.pyR\�s!


c	Cs�|\	}}}}}}}}}	i|	d6|d6|d6|d6}
tjd|
�tt�tkr|tj�td7andS(NRRRRii(ReR�RR�R�Rf(RkRRrRRR RRR|Rytskb((s5/usr/libexec/perf-core/scripts/python/netdev-times.pyR_�s!"
c

Cs�|\
}}}}}}}}}	}
|	dkr�x�ttt��D]n}t|}|d|krC||d<tjd|�t|=tt�tkr�tj�td7andSqCWndS(NiRRi(R%RReRgR�R�R�Rh(
RkRRrRRR RRR|R}RyR3R�((s5/usr/libexec/perf-core/scripts/python/netdev-times.pyR`�s$



c
	Cs+|\	}}}}}}}}}	x?ttt��D]+}
t|
}|d|kr4t|
=dSq4WxVttt��D]B}
t|
}|d|krv||d<tj|�t|
=dSqvWxhttt��D]T}
t|
}|d|kr�|jidd6|d6|d6|d6�t|
=dSq�WdS(NRR	R"R!RR R(R%RReRgRdRqRiR�(
RkRRrRRR RRR~R#R3R�R�((s5/usr/libexec/perf-core/scripts/python/netdev-times.pyRa�s(!




c
Csx|\}}}}}}}xVttt��D]B}t|}	|	d|kr.||	d<tj|	�t|=dSq.WdS(NRR	(R%RRgRdRq(
RkRRrRRR RRR3R�((s5/usr/libexec/perf-core/scripts/python/netdev-times.pyRb�s


cCs�|\}}}}}}}}xhttt��D]T}	t|	}
||
dkr1|
jidd6|d6|d6|d6�t|	=dSq1WdS(NRtskb_copy_datagram_iovecR!RR R(R%RRiR�(RkRRrRRR RRR|R3R�((s5/usr/libexec/perf-core/scripts/python/netdev-times.pyR^�s
(HtosR;tpathRqtenvirontperf_trace_contexttCoretUtilRSRR�RcRiR�RjReRfRgRhRdR=R>RR:RUtEINFO_IDX_CONTEXTt
EINFO_IDX_CPURBt
EINFO_IDX_PIDtEINFO_IDX_COMMRRR&R)R*R'R-R+R(R.R/R0R7R@RlRGRFRHRIRJtNoneRKRLRMRORPRQRRRNRYRZRXRWRVR[R]R\R_R`RaRbR^(((s5/usr/libexec/perf-core/scripts/python/netdev-times.pyt<module>s�


			B		7																		
						

404 Not Found
[ LogOut ]