- Aug 11, 2016
-
-
Adam Wujek authored
Hal creates shmem before waiting for SoftPLL to lock. By this other programs waiting for HAL's shmem can start. Please note that after this fix PPSi does not create shmem before lock. It waits for HALs minipc server to be ready. Before shmem is created, read hal mode first. Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
- Aug 05, 2016
-
-
Adam Wujek authored
When wrsVersionFpgaType or wrsVersionSwitchSerialNumber is UNKNOWN, or wrsVersionScbVersion = 000 then probably hwinfo was erased or replaced with the wersion without a serial number. Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
- Jul 26, 2016
-
-
Adam Wujek authored
Add a script to gather data via SNMP in the given interval, store it a file and draw a graph. Example use: ./snmp_graph.sh -f oids_temp_ip.txt --ip 192.168.1.10 ./snmp_graph.sh -f oids_temp.txt --ip 192.168.1.12 --mibs-path "/var/lib/mibs/ietf:../snmpd" --mibs-load WR-SWITCH-MIB" Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
- Jul 20, 2016
-
-
Adam Wujek authored
adding support for NIC TX Frames counter and update SNMP due to that
-
It requires update of FPGA's bitstream. At least to the one including the commit from wr-switch-hdl repo: d6cf3c7 adding rmon events in NIC for per-port tx frames
-
-
-
-
-
Adam Wujek authored
Add verbose messages to the SNMP Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
- Jul 19, 2016
-
-
Adam Wujek authored
snmp_set_var_typed_value function does not epxect counter64 values as a uint64_t, but as a struct counter64. Their binary representation differs by order of 32bit words. By this it was wrongly seen as a endianess problem. Since some status objects use 64bit values for calculations it is more convenient to use uint64_t in our structures, then convert to struct counter64 just before passing data to the SNMP engine. Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
There was a special case when there was no update of pstats, but status was recalculated. Since counters were not updated then deltas of counters were within limits. It could happen that counters are growing, but statuses are returning "ok". For example problem was in the case, when object wrsPstatsHCRXDropRTUFull.1 was increasing at every read: $ snmpget WR-SWITCH-MIB::wrsPortStatusSfpError.1 # this triggers a read of status ports $ sleep 2 WR-SWITCH-MIB::wrsPortStatusSfpError.1 = INTEGER: sfpOk(1) $ snmpget WR-SWITCH-MIB::wrsRTUStatus.0 # triggers only read of pstats, values of status ports are cached (only 2 seconds elapsed) WR-SWITCH-MIB::wrsRTUStatus.0 = INTEGER: error(2) $ sleep 4 $ snmpget WR-SWITCH-MIB::wrsRTUStatus.0 # pstats value are cached, but deltas are re-calculated and are equal to 0. This sould report error as well. WR-SWITCH-MIB::wrsRTUStatus.0 = INTEGER: ok(1) After the code is fixed the last one returns error(2) Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
There are some side effects of this commit: -- Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
There are some side effects of this commit: --use WRS_PORT_STATUS_SFP_IN_DB_* and WRS_PORT_STATUS_SFP_GBE_* instead of numbers Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
There are some side effects of this commit: --add macro SLOG_IF_COMP_WNSG --fields in the struct wrsNetworkingStatus_config are changed from int to float to avoid warning about a wrong parameter for macro SLOG_IF_COMP_WNSG (printf) Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
There are some side effects of this commit: --print error/warning/warning_na for every partition that causes a problem; before error was reported only only for first parition causin a problem --print warning when at least one temperature threshold is not set; before when all were not set --report WRS_TEMPERATURE_WARNING_TOO_HIGH, even one of the threshold is not set Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
Rename fields in structures to correspond to the MIB names. Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
Rename fields in the struct wrsSpllVersionGroup_s to reflect SNMP objects' names. index -> wrsPtpDataIndex port_name -> wrsPtpPortName gm_id -> wrsPtpGrandmasterID my_id -> wrsPtpOwnID ppsi_mode -> wrsPtpMode servo_state_name -> wrsPtpServoState servo_state -> wrsPtpServoStateN tracking_enabled -> wrsPtpPhaseTracking sync_source -> wrsPtpSyncSource clock_offset -> wrsPtpClockOffsetPs clock_offsetHR -> wrsPtpClockOffsetPsHR skew -> wrsPtpSkew rtt -> wrsPtpRTT llength -> wrsPtpLinkLength servo_updates -> wrsPtpServoUpdates delta_tx_m -> wrsPtpDeltaTxM delta_rx_m -> wrsPtpDeltaRxM delta_tx_s -> wrsPtpDeltaTxS delta_rx_s -> wrsPtpDeltaRxS n_err_state -> wrsPtpServoStateErrCnt n_err_offset -> wrsPtpClockOffsetErrCnt n_err_delta_rtt -> wrsPtpRTTErrCnt update_time -> wrsPtpServoUpdateTime Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
Rename fields in the struct wrsPstatsHCTable_s to reflect SNMP objects' names (add "wrsPstatsHC" prefix). As a side effect do the same with struct ns_pstats. --Changes in wrsPstatsHCTable_s: index -> wrsPstatsHCIndex port_name[12] -> WrsPstatsHCPortName[12] TXUnderrun -> wrsPstatsHCTXUnderrun RXOverrun -> wrsPstatsHCRXOverrun RXInvalidCode -> wrsPstatsHCRXInvalidCode RXSyncLost -> wrsPstatsHCRXSyncLost RXPauseFrames -> wrsPstatsHCRXPauseFrames RXPfilterDropped -> wrsPstatsHCRXPfilterDropped RXPCSErrors -> wrsPstatsHCRXPCSErrors RXGiantFrames -> wrsPstatsHCRXGiantFrames RXRuntFrames -> wrsPstatsHCRXRuntFrames RXCRCErrors -> wrsPstatsHCRXCRCErrors RXPclass0 -> wrsPstatsHCRXPclass0 RXPclass1 -> wrsPstatsHCRXPclass1 RXPclass2 -> wrsPstatsHCRXPclass2 RXPclass3 -> wrsPstatsHCRXPclass3 RXPclass4 -> wrsPstatsHCRXPclass4 RXPclass5 -> wrsPstatsHCRXPclass5 RXPclass6 -> wrsPstatsHCRXPclass6 RXPclass7 -> wrsPstatsHCRXPclass7 TXFrames -> wrsPstatsHCTXFrames RXFrames -> wrsPstatsHCRXFrames RXDropRTUFull -> wrsPstatsHCRXDropRTUFull RXPrio0 -> wrsPstatsHCRXPrio0 RXPrio1 -> wrsPstatsHCRXPrio1 RXPrio2 -> wrsPstatsHCRXPrio2 RXPrio3 -> wrsPstatsHCRXPrio3 RXPrio4 -> wrsPstatsHCRXPrio4 RXPrio5 -> wrsPstatsHCRXPrio5 RXPrio6 -> wrsPstatsHCRXPrio6 RXPrio7 -> wrsPstatsHCRXPrio7 RTUValid -> wrsPstatsHCRTUValid RTUResponses -> wrsPstatsHCRTUResponses RTUDropped -> wrsPstatsHCRTUDropped FastMatchPriority -> wrsPstatsHCFastMatchPriority FastMatchFastForward -> wrsPstatsHCFastMatchFastForward FastMatchNonForward -> wrsPstatsHCFastMatchNonForward FastMatchRespValid -> wrsPstatsHCFastMatchRespValid FullMatchRespValid -> wrsPstatsHCFullMatchRespValid Forwarded -> wrsPstatsHCForwarded TRURespValid -> wrsPstatsHCTRURespValid --changes in ns_pstats: TXUnderrun -> wrsPstatsHCTXUnderrun RXOverrun -> wrsPstatsHCRXOverrun RXInvalidCode -> wrsPstatsHCRXInvalidCode RXSyncLost -> wrsPstatsHCRXSyncLost RXPfilterDropped -> wrsPstatsHCRXPfilterDropped RXPCSErrors -> wrsPstatsHCRXPCSErrors RXCRCErrors -> wrsPstatsHCRXCRCErrors RXFrames -> wrsPstatsHCRXFrames RXPrio0 -> wrsPstatsHCRXPrio0 RXPrio1 -> wrsPstatsHCRXPrio1 RXPrio2 -> wrsPstatsHCRXPrio2 RXPrio3 -> wrsPstatsHCRXPrio3 RXPrio4 -> wrsPstatsHCRXPrio4 RXPrio5 -> wrsPstatsHCRXPrio5 RXPrio6 -> wrsPstatsHCRXPrio6 RXPrio7 -> wrsPstatsHCRXPrio7 FastMatchPriority -> wrsPstatsHCFastMatchPriority RXDropRTUFull -> wrsPstatsHCRXDropRTUFull Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
Rename fields in the struct wrsSpllVersionGroup_s to reflect SNMP objects' names. commit_id -> wrsSpllVersion build_date -> wrsSpllBuildDate build_by -> wrsSpllBuildBy Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
Rename fields in the struct wrsTemperature_s to reflect SNMP objects' names. temp_fpga -> wrsTempFPGA temp_pll -> wrsTempPLL temp_psl -> wrsTempPSL temp_psr -> wrsTempPSR temp_fpga_thold -> wrsTempThresholdFPGA temp_pll_thold -> wrsTempThresholdPLL temp_psl_thold -> wrsTempThresholdPSL temp_psr_thold -> wrsTempThresholdPSR Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
- Jul 13, 2016
-
-
Adam Wujek authored
/etc/init.d/dot-config can save information e.g. that it failed to get dot-config form the given URL. However, apply_dot-config called from /etc/init.d/dot-config overwrites this information by the result of checking the dot-config. The checking of the dot-config has to be done also in apply_dot-config, because the webinterface writes down changed dot-config and executes only apply_dot-config. Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
Rename fields in the struct wrsPortStatusTable_s to reflect SNMP objects' names. link_up -> wrsPortStatusLink port_mode -> wrsPortStatusConfiguredMode port_locked -> wrsPortStatusLocked sfp_vn[16] -> wrsPortStatusSfpVN[16] sfp_pn[16] -> wrsPortStatusSfpPN[16] sfp_vs[16] -> wrsPortStatusSfpVS[16] sfp_in_db -> wrsPortStatusSfpInDB sfp_GbE -> wrsPortStatusSfpGbE sfp_error -> wrsPortStatusSfpError ptp_tx_count -> wrsPortStatusPtpTxFrames ptp_rx_count -> wrsPortStatusPtpRxFrames Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
- Jul 07, 2016
-
-
Adam Wujek authored
Postpone the printout of the fibers alpha. Alpha is known after fiber match, not after SFP match as it was before. Also print RX/TX wave lengths of SFPs. Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
Zero also sfp->rx_wl (not only sfp->tx_wl) when wl_txrx not found for specific SFP entry. Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
Add the following SNMP objects: --wrsSpllBuildBy --wrsPtpServoUpdateTime --wrsFwUpdateStatus Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
Inform if last firmware update was successful. Uses previous commit: rootfs: check md5sum of firmware before update Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
Check md5sums of files in the wrs-firmware.tar with stored in file checksums.md5. When checksum does not match abort the update. Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
Try to source in the subshell downloaded dot-config. This test can detect problems like unterminated quoted string: /bin/sh: /tmp/dot-config: line 59: syntax error: unterminated quoted string Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
In some rare cases it can happen that locally stored dot-config is not valid. For example, when firmware on the switch was updated, but the old dot-config is still used. However, such scenario is unlikely because new firmware should contain new dot-config. --check whether sourcing was successful --Replace "." with "source" when sourcing dot-config. --Redirect errors to the stderr. Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
Perform uplift of the buildroot to the 2016.02. Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
When switch's firmware with buildroot older than 2016.02 was updated via copying wrs-firmware.tar with buildroot at least 2016.02 to the /update partition, then hwinfo in the flash was overwriten. Such behaviour was caused by crashing during execution of /wr/bin/sdb-read. Crashing sdb-read caused the following if's condition from the file /etc/init.d/hwinfo to be false. if /wr/bin/sdb-read /dev/mtd5ro > /dev/null; then This triggered later overwrite of hwinfo partition. /wr/bin/sdb-read was crashing because during update the binary /wr/bin/sdb-read was called from just extracted firmware. Problem pops up when libraries required by sdb-read are in the different versions in the old and the new firmware. Unfortunatelly, this problem cannot be easily solved, since we cannot change the update procedure in already installed firmware (the one that is performing update). Implemented solution does the following: --change the name of /wr/etc/sdb-for-dataflash to /wr/etc/sdb-for-dataflash.bin by this /etc/init.d/hwinfo script exits with an error without modification to the hwinfo partition. --rename link /etc/rcS/S90hwinfo to /etc/rcS/S10hwinfo, which will trigger update of hwinfo partition earlier during the boot. --restart switch after update of hwinfo in the flash --remove calls of /etc/init.d/hwinfo during the update Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
The problem is that the "reboot" command sends the signal to the init. However, it looks like init queues all incoming signals. They're handled after all "sysinit" commands from the inittab are finished. reboot -f skip sending the signal and triggers the reboot immediately. This problem pop up after update of a buildroot to version 2016.02. Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-