المقدمة
يصف هذا المستند حدث إعادة تحميل DDF عند حدوث خطأ التحقق الدوري من التكرار (CRC). يتم الإبلاغ عن الحدث باستخدام DDFreload لملائمة بروتوكول إدارة الشبكة البسيط (SNMP). يتم تقديم الملائمة مع إعلام إعادة تشغيل خطأ CRC لميزة التشغيل والصيانة.
المشكلة
إن صفيف البوابات DDF القابل للبرمجة في الميدان (FPGA) هو محرك DMA على DPC و DPC2. تكون DDF FPGAs عرضة لاستقبال CRC_ERROR. يقرر برنامج تشغيل DDF FPGA ما إذا كان يمكن إسترداد الخطأ أم لا. يعتمد هذا القرار على عدد مرات حدوث هذه الأخطاء وسرعتها. عندما يقرر برنامج التشغيل إمكانية إسترداد هذه الأخطاء، فإنه يشير إلى حدوث هذا الخطأ لبرنامج التطبيق.
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
يمكن ملاحظة أعطال الاختبار باستخدام dhdr.bdh_magic هنا:
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=0xffd28a68
الحل
يقوم إعادة تحميل DDF بإصلاح مشكلة CRC_ERROR ولا يتطلب المزيد من العمليات عادة. نادرا ما يتم الإبلاغ عن تأثير المشترك بعد إعادة تحميل DDF في مثل هذه الحالة يقوم ترحيل البطاقة اليدوية بإصلاح مشكلة حركة مرور البيانات.
# card migrate from <affected card> to <standby card>
في الإصدار 21.19 (أو الأحدث) قدمت سمة إضافي، السمة يراقب التدفق الداخلي من FPGA ويبدأ إستعادة إن أي إصدار بعد ال DDF reload كشفت.