2323except ImportError :
2424 corr2 = None
2525
26- parser = argparse .ArgumentParser (description = 'Display TenGBE interface information about a MeerKAT fpga host.' ,
27- formatter_class = argparse .ArgumentDefaultsHelpFormatter )
28- parser .add_argument ('--hosts' , dest = 'hosts' , type = str , action = 'store' , default = '' ,
29- help = 'comma-delimited list of hosts, or a corr2 config file' )
30- parser .add_argument ('-p' , '--polltime' , dest = 'polltime' , action = 'store' , default = 1 , type = int ,
31- help = 'time at which to poll data, in seconds' )
32- parser .add_argument ('-r' , '--reset' , dest = 'resetctrs' , action = 'store_true' , default = False ,
33- help = 'reset the GBE debug counters' )
34- parser .add_argument ('--comms' , dest = 'comms' , action = 'store' , default = 'katcp' , type = str ,
35- help = 'katcp (default) or dcp?' )
36- parser .add_argument ('--loglevel' , dest = 'log_level' , action = 'store' , default = '' ,
37- help = 'log level to use, default None, options INFO, DEBUG, ERROR' )
26+ parser = argparse .ArgumentParser (
27+ description = 'Display TenGBE interface information about a MeerKAT '
28+ 'fpga host.' ,
29+ formatter_class = argparse .ArgumentDefaultsHelpFormatter )
30+ parser .add_argument (
31+ '--hosts' , dest = 'hosts' , type = str , action = 'store' , default = '' ,
32+ help = 'comma-delimited list of hosts, or a corr2 config file' )
33+ parser .add_argument (
34+ '-p' , '--polltime' , dest = 'polltime' , action = 'store' , default = 1 , type = int ,
35+ help = 'time at which to poll data, in seconds' )
36+ parser .add_argument (
37+ '-r' , '--reset' , dest = 'resetctrs' , action = 'store_true' , default = False ,
38+ help = 'reset the GBE debug counters' )
39+ parser .add_argument (
40+ '--comms' , dest = 'comms' , action = 'store' , default = 'katcp' , type = str ,
41+ help = 'katcp (default) or dcp?' )
42+ parser .add_argument (
43+ '--loglevel' , dest = 'log_level' , action = 'store' , default = '' ,
44+ help = 'log level to use, default None, options INFO, DEBUG, ERROR' )
3845args = parser .parse_args ()
3946polltime = args .polltime
4047
6875 numgbes = len (fpga .tengbes )
6976 if numgbes < 1 :
7077 raise RuntimeWarning ('Host %s has no 10gbe cores' , fpga .host )
71- print '%s: found %i 10gbe core%s.' % (fpga .host , numgbes , '' if numgbes == 1 else 's' )
78+ print '%s: found %i 10gbe core%s.' % (
79+ fpga .host , numgbes , '' if numgbes == 1 else 's' )
7280
7381if args .resetctrs :
7482 def reset_gbe_debug (fpga_ ):
@@ -121,9 +129,10 @@ def get_tap_data(fpga):
121129 fpga_headers .append (reg )
122130fpga_headers = [fpga_headers ]
123131
124- fpga_headers = [['tap_running' , 'ip' , 'gbe_rxctr' , 'gbe_rxofctr' , 'gbe_rxerrctr' ,
125- 'gbe_rxbadctr' , 'gbe_txerrctr' , 'gbe_txfullctr' , 'gbe_txofctr' ,
126- 'gbe_txctr' , 'gbe_txvldctr' ]]
132+ fpga_headers = [['tap_running' , 'ip' , 'gbe_rxctr' , 'gbe_rxofctr' ,
133+ 'gbe_rxerrctr' , 'gbe_rxbadctr' , 'gbe_txerrctr' ,
134+ 'gbe_txfullctr' , 'gbe_txofctr' , 'gbe_txctr' , 'gbe_txvldctr' ]]
135+
127136
128137def exit_gracefully (sig , frame ):
129138 print sig , frame
@@ -146,22 +155,25 @@ def exit_gracefully(sig, frame):
146155 if keypress == - 1 :
147156 break
148157 elif keypress > 0 :
149- # if character == 'c':
150- # for f in fpgas:
151- # f.reset_counters()
158+ # if character == 'c':
159+ # for f in fpgas:
160+ # f.reset_counters()
152161 scroller .draw_screen ()
153162 if time .time () > last_refresh + polltime :
154163 scroller .clear_buffer ()
155- scroller .add_line ('Polling %i host%s every %s - %is elapsed.' %
156- (len (fpgas ), '' if len (fpgas ) == 1 else 's' ,
157- 'second' if polltime == 1 else ('%i seconds' % polltime ),
158- time .time () - STARTTIME ), 0 , 0 , absolute = True )
164+ scroller .add_line (
165+ 'Polling %i host%s every %s - %is elapsed.' % (
166+ len (fpgas ),
167+ '' if len (fpgas ) == 1 else 's' ,
168+ 'second' if polltime == 1 else ('%i seconds' % polltime ),
169+ time .time () - STARTTIME ), 0 , 0 , absolute = True )
159170 start_pos = 20
160171 pos_increment = 15
161172 if len (fpga_headers ) == 1 :
162173 scroller .add_line ('Host' , 0 , 1 , absolute = True )
163174 for reg in fpga_headers [0 ]:
164- scroller .add_line (reg .rjust (pos_increment ), start_pos , 1 , absolute = True )
175+ scroller .add_line (
176+ reg .rjust (pos_increment ), start_pos , 1 , absolute = True )
165177 start_pos += pos_increment
166178 scroller .set_ypos (newpos = 2 )
167179 scroller .set_ylimits (ymin = 2 )
@@ -173,23 +185,32 @@ def exit_gracefully(sig, frame):
173185 fpga_data = gbe_data [fpga .host ]
174186 scroller .add_line (fpga .host )
175187 for core , core_data in fpga_data .items ():
176- fpga_data [core ]['tap_running' ] = \
177- {'data' : {'reg' : False if tap_data [fpga .host ][core ]['name' ] == '' else True }}
178- fpga_data [core ]['ip' ] = {'data' : {'reg' : tap_data [fpga .host ][core ]['ip' ]}}
188+ fpga_data [core ]['tap_running' ] = {
189+ 'data' : {
190+ 'reg' : not (tap_data [fpga .host ][core ]['name' ] == '' )
191+ }
192+ }
193+ fpga_data [core ]['ip' ] = {
194+ 'data' : {
195+ 'reg' : tap_data [fpga .host ][core ]['ip' ]
196+ }
197+ }
179198 start_pos = 20
180199 scroller .add_line (core , 5 )
181200 for header_register in fpga_headers [0 ]:
182- core_register_name = header_register .replace ('gbe' , core )
201+ core_regname = header_register .replace ('gbe' , core )
183202 if start_pos < 200 :
184- if core_register_name in core_data .keys ():
185- if not isinstance (core_data [core_register_name ]['data' ]['reg' ], str ):
186- regval = '%d' % core_data [core_register_name ]['data' ]['reg' ]
203+ if core_regname in core_data .keys ():
204+ if not isinstance (core_data [core_regname ]['data' ]['reg' ], str ):
205+ regval = '%d' % core_data [core_regname ]['data' ]['reg' ]
187206 else :
188- regval = core_data [core_register_name ]['data' ]['reg' ]
207+ regval = core_data [core_regname ]['data' ]['reg' ]
189208 else :
190209 regval = 'n/a'
191210 # all on the same line
192- scroller .add_line (regval .rjust (pos_increment ), start_pos , scroller .get_current_line () - 1 )
211+ scroller .add_line (regval .rjust (pos_increment ),
212+ start_pos ,
213+ scroller .get_current_line () - 1 )
193214 start_pos += pos_increment
194215 scroller .draw_screen ()
195216 last_refresh = time .time ()
0 commit comments