#include /* This program fakes the output of the mx_counters util */ /* for testing purposes */ #define MAX_LABELS 101 char labels[MAX_LABELS][100]={ " Lanai uptime (seconds)", " Counters uptime (seconds)", " Bad CRC8 (Port 0)", " Bad CRC32 (Port 0)", " Unstripped route (Port 0)", " pkt_desc_invalid (Port 0)", " recv_pkt_errors (Port 0)", " pkt_misrouted (Port 0)", " data_src_unknown", " data_bad_endpt", " data_endpt_closed", " data_bad_session", " push_bad_window", " push_duplicate", " push_obsolete", " push_race_driver", " push_bad_send_handle_magic", " push_bad_src_magic", " pull_obsolete", " pull_notify_obsolete", " pull_race_driver", " pull_notify_race", " ack_bad_type", " ack_bad_magic", " ack_resend_race", " Late ack", " ack_nack_frames_in_pipe", " nack_bad_endpt", " nack_endpt_closed", " nack_bad_session", " nack_bad_rdmawin", " nack_eventq_full", " send_bad_rdmawin", " connect_timeout", " connect_src_unknown", " query_bad_magic", " query_timed_out", " query_src_unknown", " Raw sends (Port 0)", " Raw receives (Port 0)", " Raw oversized packets (Port 0)", " raw_recv_overrun", " raw_disabled", " connect_send", " connect_recv", " ack_send (Port 0)", " ack_recv (Port 0)", " push_send (Port 0)", " push_recv (Port 0)", " query_send (Port 0)", " query_recv (Port 0)", " reply_send (Port 0)", " reply_recv (Port 0)", " query_unknown (Port 0)", " query_unknown (Port 0)", " data_send_null (Port 0)", " data_send_small (Port 0)", " data_send_medium (Port 0)", " data_send_rndv (Port 0)", " data_send_pull (Port 0)", " data_recv_null (Port 0)", " data_recv_small_inline (Port 0)", " data_recv_small_copy (Port 0)", " data_recv_medium (Port 0)", " data_recv_rndv (Port 0)", " data_recv_pull (Port 0)", " ether_send_unicast_cnt (Port 0)", " ether_send_multicast_cnt (Port 0)", " ether_recv_small_cnt (Port 0)", " ether_recv_big_cnt (Port 0)", " ether_overrun", " ether_oversized", " data_recv_no_credits", " Packets resent", " Packets dropped (data send side)", " Mapper routes update", " Route dispersion (Port 0)", " out_of_send_handles", " out_of_pull_handles", " out_of_push_handles", " medium_cont_race", " cmd_type_unknown", " ureq_type_unknown", " Interrupts overrun", " Waiting for interrupt DMA", " Waiting for interrupt Ack", " Waiting for interrupt Timer", " Slabs recycling", " Slabs pressure", " Slabs starvation", " out_of_rdma handles", " eventq_full", " buffer_drop (Port 0)", " memory_drop (Port 0)", " Hardware flow control (Port 0)", "(Devel) Simulated packets lost (Port 0)", " (Logging) Logging frames dumped", " Wake interrupts", " Averted wakeup race", " Dma metadata race", " foo", }; int main(int argc, char **argv) { int i,multiplier=1; FILE *fff; fff=fopen("state","r"); if (fff!=NULL) { fscanf(fff,"%d",&multiplier); fclose(fff); } fff=fopen("state","w"); if (fff!=NULL) { fprintf(fff,"%d\n",multiplier+1); fclose(fff); } printf("1 ports\n"); for(i=0;i