[PATCH] bpf: allocate the buffers BPF map to fit highest CPU id
Kris Van Hees <[email protected]>
| Newsgroups | dev.linux.lists.dtrace |
|---|---|
| Message-ID | <DS0PR10MB7522B465E54B5F7C69B0609EC2A1A@DS0PR10MB7522.namprd10.prod.outlook.com> |
Even when less than the possible number of CPUs are online, the 'buffers' BPF map should be allocated based on the highest possible CPU id because probe data is written to the bufer that corresponds to a given CPU id, which could be part of non-sequential CPU id configurations. Signed-off-by: Kris Van Hees <[email protected]> --- libdtrace/dt_bpf.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libdtrace/dt_bpf.c b/libdtrace/dt_bpf.c index 0a57b7d2..6568a572 100644 --- a/libdtrace/dt_bpf.c +++ b/libdtrace/dt_bpf.c @@ -755,7 +755,7 @@ gmap_create_buffers(dtrace_hdl_t *dtp) { return create_gmap(dtp, "buffers", BPF_MAP_TYPE_PERF_EVENT_ARRAY, sizeof(uint32_t), sizeof(uint32_t), - dtp->dt_conf.num_online_cpus); + dtp->dt_conf.max_cpuid); } /* -- 2.43.5