Re: [PATCH] net: 8390: Fix possible data races in __ei_get_stats

From: Jia-Ju Bai
Date: Tue May 08 2018 - 02:47:53 EST




On 2018/5/8 13:04, Eric Dumazet wrote:

On 05/07/2018 07:16 PM, Jia-Ju Bai wrote:

Yes, "&dev->stats" will not change, because it is a fixed address.
But the field data in "dev->stats" is changed (rx_frame_errors, rx_crc_errors and rx_missed_errors).
So if the driver returns "&dev->stats" without lock protection (like on line 858), the field data value of this return value can be the changed field data value or unchanged field data value.

We do not care.

This function can be called by multiple cpus at the same time.

As soon as one cpu returns from it, another cpu can happily modify dev->stats.ANYFIELD.

Your patch fixes nothing at all.


Okay, thanks.
I also find that my patch does not work...


Best wishes,
Jia-Ju Bai