This article explains the meaning of the "SMAC notification ring queue full" log message that is observed on PECHIP, and clarifies that the message is informational only and that no action is required for resolution. It also indicates the Junos OS releases in which the message is no longer seen.
The following syslog message is seen:
fpc2 fpc2 dcpfe: pechip_sal_cpu_notif_buf_enqueue:529: PECHIP[1]: pechip_sal_cpu_notif_buf_enqueue: Ring buffer full
fpc2 fpc2 dcpfe: pechip_sal_cpu_process_notif:695: pechip_sal_cpu_process_notif: SMAC notification ring queue full
From the above message, we can see that the error is triggered for FPC2 PECHIP here.
This message appears whenever a QFX device reaches the source MAC limit.
These messages appear when “mac_db_is_q_full” where messages towards L2ALM ( Layer 2 Address Learning Manager) are enqueued is full. This results in the notif ring buffer where new learning notifs are placed to become full.
A counter is not maintained in L2ALM to limit the MAC learnt. Hence, whatever is received from PFE, L2ALM will enqueue towards Layer 2 Address Learning Daemon (L2ALD). This would make L2ALD busy and it would not drain the queue due to the rate of event enqueued.
These messages are expected and are informational only. No action is required.
If you would want to suppress the message and prevent it from filling up your logs, you may do so by referring to the steps detailed in KB9382 - [Junos Platform] Example - How to prevent certain syslog messages from being written to the log file.
The fix to this issue is available in Junos OS release 15.1X53-D60, 16.1R2, and 17.1R1. In these Junos OS versions, you should not be seeing this informational log on the device.