Date: Sat, 14 Feb 2015 11:03:12 +0000 From: "andrew (Andrew Turner)" <phabric-noreply@FreeBSD.org> To: freebsd-arm@freebsd.org Subject: [Differential] [Changed Subscribers] D1833: Add memory barriers to buf_ring Message-ID: <a17fcc7208b22a0ef759e9cecc56b186@localhost.localdomain> In-Reply-To: <differential-rev-PHID-DREV-ntnotl4wj5wcj2eoukly-req@FreeBSD.org> References: <differential-rev-PHID-DREV-ntnotl4wj5wcj2eoukly-req@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
andrew added a subscriber: andrew. INLINE COMMENTS sys/sys/buf_ring.h:107 atomic_store_rel_int includes a dmb before writing to &br->br_prod_tail. I don't think this code will be hitting ARM errata 761319 [1] as the read is in a loop where we exit when we see the new value at least once meaning it has been incremented to the value we expect. . [1] http://infocenter.arm.com/help/topic/com.arm.doc.uan0004a/UAN0004A_a9_read_read.pdf sys/sys/buf_ring.h:167 It feels like one or both of these should be read with atomic_load_acq_int. REVISION DETAIL https://reviews.freebsd.org/D1833 To: zbb, kmacy, imp, rpaulo Cc: andrew, ian, adrian, freebsd-arm
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?a17fcc7208b22a0ef759e9cecc56b186>