-
Yonghong Song authored
In bcc, internal BPF_F_TABLE defines a structure to contain all the table information for later easy extraction. A global structure will be defined with this type. Note that this structure will be allocated by LLVM during compilation. In the table structure, one of field is: _leaf_type data[_max_entries] If the _leaf_type and _max_entries are big, significant memory will be consumed. A big _leaf_type size example is for BPF_STACK_TRACE map with 127*8=1016 bytes. If max_entries is bigger as well, significant amount of memory will be consumed by LLVM. This patch replaces _leaf_type data[_max_entries] to unsigned ing max_entries The detail of a test example can be found in issue #1291. For the example in #1291, without this patch, for a BPF_STACK_TRACE map with 1M entries, the RSS is roughly 3GB (roughly 3KB per entry). With this patch, it is 5.8MB. Signed-off-by: Yonghong Song <yhs@fb.com>
067219b2