From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jia-Ju Bai Subject: [REPORT] net: e100: possible data races Date: Wed, 3 Oct 2018 21:03:38 +0800 Message-ID: <8b3eba57-bdf3-3c0d-1889-12a971f277d1@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Cc: intel-wired-lan@lists.osuosl.org, netdev@vger.kernel.org, Linux Kernel Mailing List To: jeffrey.t.kirsher@intel.com, davem@davemloft.net Return-path: Content-Language: en-US Sender: linux-kernel-owner@vger.kernel.org List-Id: netdev.vger.kernel.org CPU0: e100_set_multicast_list e100_exec_cb line 854: spin_lock_irqsave() line 866: e100_configure (function pointer) line 1114: nic->flags [READ] line 1123: nic->flags [READ] CPU1: e100_watchdog line 1731: nic->flags [WRITE] line 1733: nic->flags [WRITE] As for nic->flags, the WRITE operations in CPU0 are performed with holding a spinlock, but the READ operations in CPU1 are performed without holding this spinlock, so there may exist data races. These possible races are detected by a runtime testing. I do not find a good way to fix these races, so I only report them. Best wishes, Jia-Ju Bai