@@ -908,36 +908,55 @@ def show_worker_list(cli, worker_ids):
908908
909909
910910def _limit_to_str (limit ):
911- buf = []
912-
913911 if 'count' in limit :
914- buf .append ('%d times' % limit ['count' ])
915-
916- if 'cycle' in limit :
917- buf .append ('%.3f Mhz' % (limit ['cycle' ] / 1e6 ))
918-
919- if 'packet' in limit :
912+ return '%d times/s' % limit ['count' ]
913+ elif 'cycle' in limit :
914+ return '%.3f MHz' % (limit ['cycle' ] / 1e6 )
915+ elif 'packet' in limit :
920916 if limit ['packet' ] < 1e3 :
921- buf . append ( '%.d pps' % limit ['packet' ])
917+ return '%.d pps' % limit ['packet' ]
922918 elif limit ['packet' ] < 1e6 :
923- buf . append ( '%.3f kpps' % (limit ['packet' ] / 1e3 ) )
919+ return '%.3f kpps' % (limit ['packet' ] / 1e3 )
924920 else :
925- buf .append ('%.3f Mpps' % (limit ['packet' ] / 1e6 ))
926-
927- if 'bit' in limit :
921+ return '%.3f Mpps' % (limit ['packet' ] / 1e6 )
922+ elif 'bit' in limit :
928923 if limit ['bit' ] < 1e3 :
929- buf . append ( '%.d bps' % limit ['bit' ])
924+ return '%.d bps' % limit ['bit' ]
930925 elif limit ['bit' ] < 1e6 :
931- buf . append ( '%.3f kbps' % (limit ['bit' ] / 1e3 ) )
926+ return '%.3f kbps' % (limit ['bit' ] / 1e3 )
932927 else :
933- buf .append ('%.3f Mbps' % (limit ['bit' ] / 1e6 ))
934-
935- if buf :
936- return 'limits: ' + ', ' .join (buf )
928+ return '%.3f Mbps' % (limit ['bit' ] / 1e6 )
937929 else :
938930 return 'unlimited'
939931
940932
933+ def _burst_to_str (burst ):
934+ # no output if max_burst is not set
935+ if len (burst .values ()) == 0 or burst .values ()[0 ] == 0 :
936+ return ''
937+
938+ if 'count' in burst :
939+ return 'burst: %d times' % burst ['count' ]
940+ elif 'cycle' in burst :
941+ return 'burst: %d cycles' % burst ['cycle' ]
942+ elif 'packet' in burst :
943+ if burst ['packet' ] < 1e3 :
944+ return 'burst: %.d pkts' % burst ['packet' ]
945+ elif burst ['packet' ] < 1e6 :
946+ return 'burst: %.3f kpkts' % (burst ['packet' ] / 1e3 )
947+ else :
948+ return 'burst: %.3f Mpkts' % (burst ['packet' ] / 1e6 )
949+ elif 'bit' in burst :
950+ if burst ['bit' ] < 1e3 :
951+ return 'burst: %.d bits' % burst ['bit' ]
952+ elif burst ['bit' ] < 1e6 :
953+ return 'burst: %.3f kbits' % (burst ['bit' ] / 1e3 )
954+ else :
955+ return 'burst: %.3f Mbits' % (burst ['bit' ] / 1e6 )
956+ else :
957+ return ''
958+
959+
941960def _show_tcs_node (cli , node , indent , prefix , lastsibling ):
942961 line = prefix
943962 if indent > 0 :
@@ -1010,6 +1029,7 @@ def _build_tcs_tree(tcs):
10101029
10111030 if c_ .policy == "rate_limit" :
10121031 nodes [c_ .name ]["show_list" ].append (_limit_to_str (c_ .limit ))
1032+ nodes [c_ .name ]["show_list" ].append (_burst_to_str (c_ .max_burst ))
10131033
10141034 return root
10151035
0 commit comments