diff --git a/pythonbpf/codegen.py b/pythonbpf/codegen.py index 7ce974b..7d05d3e 100644 --- a/pythonbpf/codegen.py +++ b/pythonbpf/codegen.py @@ -27,8 +27,8 @@ def processor(source_code, filename, module): for func_node in bpf_chunks: print(f"Found BPF function: {func_node.name}") - maps_proc(tree, module, bpf_chunks) - func_proc(tree, module, bpf_chunks) + map_sym_tab = maps_proc(tree, module, bpf_chunks) + func_proc(tree, module, bpf_chunks, map_sym_tab) # For now, we will parse the BPF specific parts of AST # constants_processing(tree, module) diff --git a/pythonbpf/functions_pass.py b/pythonbpf/functions_pass.py index 69b488d..cfbc04f 100644 --- a/pythonbpf/functions_pass.py +++ b/pythonbpf/functions_pass.py @@ -86,7 +86,8 @@ def process_bpf_chunk(func_node, module, return_type): return func -def func_proc(tree, module, chunks): + +def func_proc(tree, module, chunks, map_sym_tab): for func_node in chunks: is_global = False for decorator in func_node.decorator_list: diff --git a/pythonbpf/maps_pass.py b/pythonbpf/maps_pass.py index 91bfbcf..782b2f6 100644 --- a/pythonbpf/maps_pass.py +++ b/pythonbpf/maps_pass.py @@ -17,6 +17,7 @@ def maps_proc(tree, module, chunks): print(f"Found BPF map: {func_node.name}") process_bpf_map(func_node, module) continue + return map_sym_tab def create_bpf_map(module, map_name, map_params):