Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 29 Mar 2016 13:28:13 +0000 (UTC)
From:      Zbigniew Bodek <zbb@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r297388 - head/sys/dev/vnic
Message-ID:  <201603291328.u2TDSDCg017060@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: zbb
Date: Tue Mar 29 13:28:13 2016
New Revision: 297388
URL: https://svnweb.freebsd.org/changeset/base/297388

Log:
  Don't manage free SQ entry index by the atomic operations
  
  It is not necessary as entries are being manipulated under lock.
  
  Reviewed by:   wma
  Obtained from: Semihalf
  Sponsored by:  Cavium
  Differential Revision: https://reviews.freebsd.org/D5536

Modified:
  head/sys/dev/vnic/nicvf_queues.c

Modified: head/sys/dev/vnic/nicvf_queues.c
==============================================================================
--- head/sys/dev/vnic/nicvf_queues.c	Tue Mar 29 12:50:42 2016	(r297387)
+++ head/sys/dev/vnic/nicvf_queues.c	Tue Mar 29 13:28:13 2016	(r297388)
@@ -48,7 +48,6 @@ __FBSDID("$FreeBSD$");
 #include <sys/proc.h>
 #include <sys/sockio.h>
 #include <sys/socket.h>
-#include <sys/stdatomic.h>
 #include <sys/cpuset.h>
 #include <sys/lock.h>
 #include <sys/mutex.h>
@@ -1048,7 +1047,7 @@ nicvf_init_snd_queue(struct nicvf *nic, 
 
 	sq->desc = sq->dmem.base;
 	sq->head = sq->tail = 0;
-	atomic_store_rel_int(&sq->free_cnt, q_len - 1);
+	sq->free_cnt = q_len - 1;
 	sq->thresh = SND_QUEUE_THRESH;
 	sq->idx = qidx;
 	sq->nic = nic;
@@ -1640,7 +1639,7 @@ nicvf_get_sq_desc(struct snd_queue *sq, 
 	int qentry;
 
 	qentry = sq->tail;
-	atomic_subtract_int(&sq->free_cnt, desc_cnt);
+	sq->free_cnt -= desc_cnt;
 	sq->tail += desc_cnt;
 	sq->tail &= (sq->dmem.q_len - 1);
 
@@ -1652,7 +1651,7 @@ static void
 nicvf_put_sq_desc(struct snd_queue *sq, int desc_cnt)
 {
 
-	atomic_add_int(&sq->free_cnt, desc_cnt);
+	sq->free_cnt += desc_cnt;
 	sq->head += desc_cnt;
 	sq->head &= (sq->dmem.q_len - 1);
 }



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201603291328.u2TDSDCg017060>