"Bucket size of stats (%s) is not zero",
                                    pdesc->name);
                }
-               size_data += pdesc->size * sizeof(*stats_data);
+               size_data = max(size_data, pdesc->offset + pdesc->size * sizeof(*stats_data));
        }
 
        /*
        TEST_ASSERT(size_data >= header.num_desc * sizeof(*stats_data),
                    "Data size is not correct");
 
-       /* Check stats offset */
-       for (i = 0; i < header.num_desc; ++i) {
-               pdesc = get_stats_descriptor(stats_desc, i, &header);
-               TEST_ASSERT(pdesc->offset < size_data,
-                           "Invalid offset (%u) for stats: %s",
-                           pdesc->offset, pdesc->name);
-       }
-
        /* Allocate memory for stats data */
        stats_data = malloc(size_data);
        TEST_ASSERT(stats_data, "Allocate memory for stats data");