]> git.droids-corp.org - dpdk.git/commitdiff
fbarray: fix destruction
authorAnatoly Burakov <anatoly.burakov@intel.com>
Tue, 9 Jul 2019 14:00:27 +0000 (15:00 +0100)
committerThomas Monjalon <thomas@monjalon.net>
Wed, 10 Jul 2019 21:27:46 +0000 (23:27 +0200)
Currently, when fbarray is destroyed, the fbarray structure is not
zeroed out, which leads to stale data being there and confusing
secondary process init in legacy mem mode. Fix it by always
memsetting the fbarray to zero when destroying it.

Fixes: 5b61c62cfd76 ("fbarray: add internal tailq for mapped areas")
Cc: stable@dpdk.org
Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
lib/librte_eal/common/eal_common_fbarray.c

index b7ddb66e9ca39cfae4236128071fe5f21b52aff6..1312f936b83371aaca9cada5f40b9df6cacb1c89 100644 (file)
@@ -1055,6 +1055,9 @@ rte_fbarray_destroy(struct rte_fbarray *arr)
        TAILQ_REMOVE(&mem_area_tailq, tmp, next);
        free(tmp);
        ret = 0;
+
+       /* reset the fbarray structure */
+       memset(arr, 0, sizeof(*arr));
 out:
        rte_spinlock_unlock(&mem_area_lock);
        return ret;