OSDN Git Service

i40evf: Use smp_rmb rather than read_barrier_depends
authorBrian King <brking@linux.vnet.ibm.com>
Fri, 17 Nov 2017 17:05:49 +0000 (11:05 -0600)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 30 Nov 2017 08:40:56 +0000 (08:40 +0000)
commit61cef8f08c5121f1e7d192190c4f71a7eb6ec58f
tree55e57a1571c0c3a517dd01ae4a1df95fa00d4172
parentbc46257bf4d825e56566d2710b56efdc913b0eb6
i40evf: Use smp_rmb rather than read_barrier_depends

commit f72271e2a0ae4277d53c4053f5eed8bb346ba38a upstream.

The original issue being fixed in this patch was seen with the ixgbe
driver, but the same issue exists with i40evf as well, as the code is
very similar. read_barrier_depends is not sufficient to ensure
loads following it are not speculatively loaded out of order
by the CPU, which can result in stale data being loaded, causing
potential system crashes.

Signed-off-by: Brian King <brking@linux.vnet.ibm.com>
Acked-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Tested-by: Andrew Bowers <andrewx.bowers@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/net/ethernet/intel/i40evf/i40e_txrx.c