Error: "Failed to alloc ENS page, drop pkt" on bnxtnet uplinks
search cancel

Error: "Failed to alloc ENS page, drop pkt" on bnxtnet uplinks

book

Article ID: 442798

calendar_today

Updated On:

Products

VMware vSphere ESXi

Issue/Introduction

Network adapters using the bnxtnet driver with the Enhanced Network Stack (ENS) / Enhanced Data Path intermittently drop large or jumbo frames. Small frames continue to pass normally, but frames above the standard 1500-byte Maximum Transmission Unit (MTU) stop transmitting and receiving on the affected uplinks. The behavior is intermittent: jumbo traffic works at some times and fails at others with no configuration change.

The following is observed on the affected host:

  • vmkping with the do-not-fragment flag succeeds at a small payload (for example, -d -s 1472) but fails with 100% packet loss at a jumbo payload (for example, -d -s 8972).
  • vMotion operations fail with a TCP send timeout (msg.vmk.status.VMK_TCP_SEND_TIMEOUT).
  • esxtop network view shows packet drops on the affected uplinks.
  • vmkernel.log records repeated bnxtnet ENS page allocation failures.

The vmkernel.log entries appear as follows, repeating rapidly while the condition is active:

2026-01-15T10:00:12.646Z cpu3:2100107)bnxtnet: bnxtnet_ens_rx_pages:895: [vmnic0 : 0x430bf4c0a000] Failed to alloc ENS page, drop pkt
2026-01-15T10:00:13.086Z cpu3:2100107)bnxtnet: bnxtnet_ens_rx_pages:895: [vmnic0 : 0x430bf4c0a000] Failed to alloc ENS page, drop pkt
2026-01-15T10:00:13.526Z cpu3:2100107)bnxtnet: bnxtnet_ens_rx_pages:895: [vmnic0 : 0x430bf4c0a000] Failed to alloc ENS page, drop pkt

This message is the ENS-datapath form of bnxtnet packet page pool (NetPagePool) exhaustion. A different message, alloc_rx_buffers ... Failed to allocate all, init'ed rx ring, indicates the same underlying pool exhaustion at RX ring initialization and is covered in the related article linked under Additional Information.

Environment

  • VMware vSphere ESXi 8.x
  • VMware vSphere ESXi 9.x
  • Broadcom network adapters using the bnxtnet driver
  • Enhanced Network Stack (ENS) / Enhanced Data Path enabled
  • Jumbo frames (MTU greater than 4000, typically 9000) configured on the uplinks

Cause

The bnxtnet driver uses a dedicated memory pool, NetPagePool (netPktPagePool), to receive Large Receive Offload (LRO) packets and packets larger than 4 KB. When the Enhanced Network Stack (ENS) / Enhanced Data Path is active, RX ring usage is higher, so the pool reaches its size limit faster.

Once the pool is exhausted, the ENS receive path cannot allocate a page for an incoming packet and drops it, logging the bnxtnet_ens_rx_pages message. Small frames continue to pass while larger or jumbo frames are dropped, which produces the intermittent behavior. This is the same NetPagePool exhaustion described in the related parent article; only the log signature differs because the drop occurs in the ENS receive path.

Resolution

The cause and the fix are identical to the parent article. Follow the full resolution steps in RX packet drops seen on network adapters due to page allocation failure "Failed to allocate all, init'ed rx ring" (318584). In summary, either increase the packet page pool (netPagePoolLimitCap and netPagePoolLimitPerGB) and reboot the host, or reduce the MTU to 4000 or smaller and disable hardware LRO, then reboot.

After applying the change and rebooting, confirm the bnxtnet_ens_rx_pages "Failed to alloc ENS page" entries no longer appear in vmkernel.log, and that jumbo connectivity is consistent (vmkping with the do-not-fragment flag at a jumbo payload).

If the issue persists after following the steps in KB 318584, contact Broadcom Support for further assistance. Provide an ESXi host support bundle from the affected host or hosts, along with the vmkernel.log entries showing the bnxtnet ENS page allocation drops.

Additional Information