The "Enqueue upon free pool empty" or " Dequeue upon free pool full or eQ empty" message reports a transient hardware issue.This is a Troubleshooting Article for a PFE ASIC Syslog Event. To view other documented syslog events related to XMCHIP, XLCHIP, MQCHIP, LUCHIP, EACHIP, and PECHIP, see KB31893 - Master Index of Articles for Troubleshooting PFE ASIC Syslog Events [juniper.net] ..
When a "Enqueue upon free pool empty" event occurs, a message similar to the following is reported:Feb 15 12:40:51 router0 fpc1 XMCHIP(1): EPM0: Enqueue upon free pool emptyFeb 15 12:40:51 router0 fpc1 XMCHIP(1): EPM0: Dequeue upon free pool full or eQ empty Indications:
Feb 15 12:40:51 router0 fpc1 XMCHIP(1): EPM0: Enqueue upon free pool emptyFeb 15 12:40:51 router0 fpc1 XMCHIP(1): EPM0:
Dequeue upon free pool full or eQ empty
Single occurrence of syslog, not seen with other events, indicates a one time hardware error. Multiple continuous occurrences indicate persistent underlying issues.
"Dequeue upon free pool full" or "eQ empty" is usually a permanent impact of packet forwarding for one port-group.
Traffic impact or permanent impact of packet forwarding depending on which syslog entry.
This issue might be caused by hardware transient errors. EPM is the Egress Priority-Flow-Control Manager Block. EPM0 and EPM1 are for the WAN interfaces and each EPM block serves a subset of interfaces of the PFE. Parity error due to Enqueue upon free pool empty might not have visible impact and is a minor alarm. However, reporting in combination of "Dequeue upon free pool full" or "eQ empty" will be a major service impact and most likely causes port-group wedge. PR1220019 enhancements will check if the wedge is really true and reports “ READ/WRITE pointers in free pool FIFO stalled ”.
READ/WRITE pointers in free pool FIFO stalled
{DIDYOUKNOWSERVICENOWTOKEN.EN_US}Perform these steps to determine the cause and resolve the problem (if any). Continue through each step until the problem is resolved.
Collect the show command output.
Capture the output to a file (in case you have to open a technical support case). To do this, configure each SSH client/terminal emulator to log your session.
show log messages show log chassisd start shell network pfe <fpc#> show nvram show syslog messages exit
Analyze the show command output.
In the 'show log messages', review the events that occurred at or just before the appearance of the "Enqueue upon free pool empty" message. Frequently these events help identify the cause.
No RMA is required.
Restart the MPC and monitor the errors.
Contact your technical support representative if the issue is seen after the FPC restart.
Without all the PR fixes “The generic pfe-disable event script will detect a permanent impact on packet forwarding condition that happens as a result of this event and invoke the pfe-disable action”. KB31867 - Generic pfe-disable event script [juniper.net]
An FPC reboot at a later time is needed to bring the PFE back into service.
This article is indexed in KB31893 - primary Index of Articles for Troubleshooting PFE ASIC Syslog Events [juniper.net] ; tag XMCHIPTSGTip: When looking at an event in the logs, it is important to focus on the first error message in a collection of syslog messages. The first error message is usually the cause of all the follow-on error messages. The follow-on collateral damage error messages can be ignored.
2022-11-15: Updated to add "Recommended Action"2019-10-14: Article reviewed for accuracy; no changes required.