[PATCH] eal: fix segment fault when exit trace

David Marchand david.marchand at redhat.com
Mon Jun 13 16:15:17 CEST 2022


On Tue, Jun 7, 2022 at 2:26 PM fengchengwen <fengchengwen at huawei.com> wrote:
> Hi Bruce,
>
>   Could you please test freebsd platform? I think it also have
> the same problem, but I hasn't freebsd enviorment.

I can reproduce a crash with FreeBSD 13.

Moving rte_trace_save() and co earlier (as is done for Linux in this
proposed patch) avoids the crash, so I can't tell the traces file is
valid.

dpdk at freebsd:~/dpdk $ git diff
diff --git a/lib/eal/freebsd/eal.c b/lib/eal/freebsd/eal.c
index a6b20960f2..26fbc91b26 100644
--- a/lib/eal/freebsd/eal.c
+++ b/lib/eal/freebsd/eal.c
@@ -893,11 +893,11 @@ rte_eal_cleanup(void)
                eal_get_internal_configuration();
        rte_service_finalize();
        rte_mp_channel_cleanup();
+       rte_trace_save();
+       eal_trace_fini();
        /* after this point, any DPDK pointers will become dangling */
        rte_eal_memory_detach();
        rte_eal_alarm_cleanup();
-       rte_trace_save();
-       eal_trace_fini();
        eal_cleanup_config(internal_conf);
        return 0;
 }


-- 
David Marchand



More information about the dev mailing list