Inleiding
In dit document wordt de gebeurtenis DDF-herladen beschreven toen de fout Cyclic Redundancy Check (CRC) optrad. De gebeurtenis wordt gemeld met Simple Network Management Protocol (SNMP) trap DDFreload. De trap wordt geïntroduceerd met de functie CRC Error Restart Notification for Operation and Maintenance.
Probleem
DDF Field-Programmable Gate Array (FPGA) is een DMA-engine op de DPC en DPC2. DDF-FPGA's kunnen een CRC_ERROR ontvangen. Het DDF FPGA-stuurprogramma bepaalt of de fout al dan niet kan worden hersteld. Deze beslissing is gebaseerd op het aantal keren en de snelheid waarmee deze fouten optreden. Wanneer het stuurprogramma besluit dat deze fouten kunnen worden hersteld, geeft het aan het toepassingsprogramma aan dat een dergelijke fout is opgetreden.
Thu Apr 01 02:54:09 2021 Internal trap notification 1332 (DDFreload) card 3 ddf-dev DDF1
2021-Apr-01+02:54:09.277 card 3-cpu1: Bad dheader magic number. previous=0xf1234567 (p[12345678.123456] mcdma: MDF/DDF FPGA 3 ch6 acket addr: 0xf2
2021-Apr-01+02:54:09.327 card 3-cpu0: [12345678.123789] DF2 Complex-0 Program DDF2 CAF_DF1_PROG_ERR error detected on SAD1234567
De sessmgr crasht met dhdr.bdh_magic kan hier worden waargenomen:
Assertion failure at midplane/libsn_midplane.c:1845
Function: sn_midplane_dma_buffer_packet_get()
Expression: packet->dhdr.bdh_magic == 0x1974
Proclet: sessmgr (f=87000,i=40)
Process: card=3 cpu=1 arch=X pid=40961 cpu=~18% argv0=sessmgr
Crash time: 2021-Apr-28+14:54:10 UTC
Recent errno: 11 Resource temporarily unavailable
Build_number: 76955
Stack (2680@0x0xffd28000):
[ffffe430/X] __kernel_vsyscall() sp=0xffd28378
[0d0d4c67/X] sn_assert() sp=0xffd283d8
[0d1cef88/X] sn_midplane_dma_buffer_packet_get() sp=0xffd28478
[06b85352/X] sessmgr_med_data_receive() sp=0xffd284f8
[0d15cca4/X] sn_epoll_run_events() sp=0xffd28548
[0d16979a/X] sn_loop_run() sp=0xffd289f8
[0ce5bc25/X] main() sp=0xffd28a68Oplossing
De DDF-herlading lost het probleem CRC_ERROR op en er zijn meestal geen verdere acties vereist. Zelden wordt de impact van de abonnee gerapporteerd na het opnieuw laden van de DDF, in een dergelijk geval lost de handmatige kaartmigratie het verkeersprobleem op.
# card migrate from <affected card> to <standby card>
In versie 21.19 (of later) wordt een extra functie geïntroduceerd, de functie bewaakt de interne pijplijn van de FPGA en activeert herstel als er problemen na het opnieuw laden van de DDF worden gedetecteerd.