summaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/sfc/mcdi_mac.c
diff options
context:
space:
mode:
authorBen Hutchings <bhutchings@solarflare.com>2011-09-03 00:23:00 +0200
committerBen Hutchings <bhutchings@solarflare.com>2012-01-27 01:10:45 +0100
commit1cb345220f135dcca24f01cc04cbb97a8242d419 (patch)
tree059ec907cd50bd10114bd942d0ffbfa7fd080aa2 /drivers/net/ethernet/sfc/mcdi_mac.c
parentsfc: Use new names for MC shared memory layout constants (diff)
downloadlinux-1cb345220f135dcca24f01cc04cbb97a8242d419.tar.xz
linux-1cb345220f135dcca24f01cc04cbb97a8242d419.zip
sfc: Hold efx_nic::stats_lock while reading efx_nic::mac_stats
efx_nic::stats_lock is used to serialise stats updates, but each reader was dropping it before it finished reading efx_nic::mac_stats. If there were concurrent stats reads using procfs, or one using procfs and one using ethtool, an update could race with a read. On a 32-bit system, the reader could see word-tearing of 64-bit stats (32 bits of the old value and 32 bits of the new). Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Diffstat (limited to 'drivers/net/ethernet/sfc/mcdi_mac.c')
0 files changed, 0 insertions, 0 deletions