> +     if (stringset == ETH_SS_STATS && ds->drv->get_strings) {
> +             ndata = data + mcount * len;
> +             /* This function copies ETH_GSTRINGS_LEN bytes, we will mangle
> +              * the output after to prepend our CPU port prefix we
> +              * constructed earlier
> +              */
> +             ds->drv->get_strings(ds, cpu_port, ndata);
> +             count = ds->drv->get_sset_count(ds);
> +             for (i = 0; i < count; i++) {
> +                     memmove(ndata + (i * len + sizeof(pfx)),
> +                             ndata + i * len, len - sizeof(pfx));
> +                     memcpy(ndata + i * len, pfx, sizeof(pfx));

Hi Florian

Did you check what happens if this causes the NULL terminator to be
discarded? Does ethtool handle that? As i said before, it is unclear
if one is required.

           Andrew

Reply via email to