AltraMayor / AltraMayor/gatekeeper

Free mbuf memory pools

Open
#697 0 comments 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
C
Stars
1.6k
Forks
252
PR merge metrics
No merged PRs in 30d

Description

Flesh out `include/gatekeeper_net.h:destroy_mempool()` using `rte_mempool_free()`. This change will require reviewing the functions that release resources at termination because the current code does not account for the proper release of mbuf memory pools. A simple test of this change produces a segmentation fault while Gatekeeper is shutting down with the following (simplified) backtrace: `... -> bond_mode_8023ad_periodic_cb() -> ... -> rte_is_zero_ether_addr()`. The probable cause of this segmentation fault is that memory pools are being released before the underlying interfaces are cleared.

The code review should also consider the possibility of assigning `NULL` to variables after the release of the associated resources to increase the chances of quickly identifying bugs in the future.

It is worth pointing out that this issue is not a problem since associated memory is automatically released once Gatekeeper terminates, so there is no immediate demand for it. However, it is a nice feature since it tightens the code.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.