Skip to contentSkip to conversation

FIB insertion error(-28) after remove all rules

DPDK/other Bug 1731 [email protected] 1 participant 1 message Jun 26, 2025

lore
Share & tools
lore
#0 lore raw

https://bugs.dpdk.org/show_bug.cgi?id=1731

            Bug ID: 1731
           Summary: FIB insertion error(-28) after remove all rules
           Product: DPDK
           Version: 25.03
          Hardware: All
                OS: All
            Status: UNCONFIRMED
          Severity: normal
          Priority: Normal
         Component: other
          Assignee: [email protected]
          Reporter: [email protected]

Target Milestone: ---

Created attachment 321
--> https://bugs.dpdk.org/attachment.cgi?id=321&action=edit
FIB error example

The error is due to overflow of the internal FIB counter "rsvd_tbl8s". After this error occurs, it is impossible to add any rules even the FIB is empty.

To reproduce this error, simply insert two IP addresses of the following type with the same next-hope parameter (this is important):

struct Network {
    uint32_t ip;
    uint16_t prefix;
};

/*
first insertion with prefix less than 25 doesn't allocate tbl8 entry second insertion with prefix more than 24 will allocate tbl8 entry BUT only
when we pass the different next hope
*/

const struct Network state[] = {
    {0x3000000, 15}, {0x3000520, 29}
};

and delete them. Deleting the first rule will allocate tbl8 entry but "rsvd_tbl8s" counter won't increment. Deleting the second rule will decrease the counter "rsvd_tbl8s" and it will overflow.

The full reproduce program is in attachment.

Signature · 2 lines
You are receiving this mail because:
You are the assignee for the bug.