-
Sasha Goldshtein authored
When the `BPFModule` object is destroyed, shared tables were closed, but non-shared tables were not. Add `close` call to close non-shared tables in `~BPFModule`. Make sure the `BPF.cleanup` function in the Python module calls `bpf_module_destroy` to clean up the module. Otherwise, we have hanging table fds that aren't destroyed. Fixes #806. This would have been an issue for any tool that repeatedly runs a BPF program with new maps. It's just that most tools we have haven't exhibited this behavior.
c085977e