[ovs-git] [openvswitch/ovs] ea1f76: ovs-atomic-msvc: Fix 64 bit atomic read/writes.

GitHub noreply at github.com
Wed Sep 24 20:28:21 UTC 2014


  Branch: refs/heads/master
  Home:   https://github.com/openvswitch/ovs
  Commit: ea1f765f8e43f832c03f267a614519032f48a78f
      https://github.com/openvswitch/ovs/commit/ea1f765f8e43f832c03f267a614519032f48a78f
  Author: Gurucharan Shetty <gshetty at nicira.com>
  Date:   2014-09-24 (Wed, 24 Sep 2014)

  Changed paths:
    M lib/ovs-atomic-msvc.h

  Log Message:
  -----------
  ovs-atomic-msvc: Fix 64 bit atomic read/writes.

MSVC converts 64 bit read/writes into two instructions (uses 'mov' as
seen through cl //FAs). So there is a possibility that an interrupt can
make a 64 bit read/write non-atomic even when 8 byte aligned. So we cannot
use a simple assignment. Use a full memory barrier function instead.

Reported-by: Jarno Rajahalme <jrajahalme at nicira.com>
Signed-off-by: Gurucharan Shetty <gshetty at nicira.com>
Acked-by: Jarno Rajahalme <jrajahalme at nicira.com>




More information about the git mailing list