Date: Mon, 1 Jun 2009 01:42:56 +0000 (UTC) From: Kip Macy <kmacy@FreeBSD.org> To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r193193 - user/kmacy/releng_7_2_fcs/sys/sys Message-ID: <200906010142.n511guxx060347@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: kmacy Date: Mon Jun 1 01:42:56 2009 New Revision: 193193 URL: http://svn.freebsd.org/changeset/base/193193 Log: remove gratuitous memory barriers Modified: user/kmacy/releng_7_2_fcs/sys/sys/buf_ring.h Modified: user/kmacy/releng_7_2_fcs/sys/sys/buf_ring.h ============================================================================== --- user/kmacy/releng_7_2_fcs/sys/sys/buf_ring.h Mon Jun 1 01:02:30 2009 (r193192) +++ user/kmacy/releng_7_2_fcs/sys/sys/buf_ring.h Mon Jun 1 01:42:56 2009 (r193193) @@ -117,7 +117,6 @@ buf_ring_enqueue(struct buf_ring *br, vo while (br->br_prod_tail != prod_head) cpu_spinwait(); br->br_prod_tail = prod_next; - mb(); critical_exit(); return (0); } @@ -154,7 +153,7 @@ buf_ring_dequeue_mc(struct buf_ring *br) #ifdef DEBUG_BUFRING br->br_ring[cons_head] = NULL; #endif - mb(); + rmb(); /* * If there are other dequeues in progress @@ -165,7 +164,6 @@ buf_ring_dequeue_mc(struct buf_ring *br) cpu_spinwait(); br->br_cons_tail = cons_next; - mb(); critical_exit(); return (buf); @@ -196,7 +194,6 @@ buf_ring_dequeue_sc(struct buf_ring *br) br->br_cons_head = cons_next; buf = br->br_ring[cons_head]; - mb(); #ifdef DEBUG_BUFRING br->br_ring[cons_head] = NULL; @@ -207,7 +204,6 @@ buf_ring_dequeue_sc(struct buf_ring *br) br->br_cons_tail, cons_head); #endif br->br_cons_tail = cons_next; - mb(); critical_exit(); return (buf); } @@ -225,7 +221,7 @@ buf_ring_peek(struct buf_ring *br) if ((br->br_lock != NULL) && !mtx_owned(br->br_lock)) panic("lock not held on single consumer dequeue"); #endif - mb(); + wmb(); if (br->br_cons_head == br->br_prod_tail) return (NULL);
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200906010142.n511guxx060347>