svn commit: r340192 - in head/sys: dev/mrsas kern

Mark Johnston markj at FreeBSD.org
Tue Nov 6 17:32:26 UTC 2018


Author: markj
Date: Tue Nov  6 17:32:25 2018
New Revision: 340192
URL: https://svnweb.freebsd.org/changeset/base/340192

Log:
  Use plain atomic_{add,subtract} when that's sufficient.
  
  CID:		1386920
  MFC after:	2 weeks

Modified:
  head/sys/dev/mrsas/mrsas.h
  head/sys/kern/uipc_mqueue.c
  head/sys/kern/vfs_bio.c

Modified: head/sys/dev/mrsas/mrsas.h
==============================================================================
--- head/sys/dev/mrsas/mrsas.h	Tue Nov  6 17:32:07 2018	(r340191)
+++ head/sys/dev/mrsas/mrsas.h	Tue Nov  6 17:32:25 2018	(r340192)
@@ -612,8 +612,8 @@ typedef union {
 
 #define	mrsas_atomic_read(v)	atomic_load_acq_int(&(v)->val)
 #define	mrsas_atomic_set(v,i)	atomic_store_rel_int(&(v)->val, i)
-#define	mrsas_atomic_dec(v)	atomic_fetchadd_int(&(v)->val, -1)
-#define	mrsas_atomic_inc(v)	atomic_fetchadd_int(&(v)->val, 1)
+#define	mrsas_atomic_dec(v)	atomic_subtract_int(&(v)->val, 1)
+#define	mrsas_atomic_inc(v)	atomic_add_int(&(v)->val, 1)
 
 /* IOCInit Request message */
 typedef struct _MPI2_IOC_INIT_REQUEST {

Modified: head/sys/kern/uipc_mqueue.c
==============================================================================
--- head/sys/kern/uipc_mqueue.c	Tue Nov  6 17:32:07 2018	(r340191)
+++ head/sys/kern/uipc_mqueue.c	Tue Nov  6 17:32:25 2018	(r340192)
@@ -393,7 +393,7 @@ mqnode_free(struct mqfs_node *node)
 static __inline void
 mqnode_addref(struct mqfs_node *node)
 {
-	atomic_fetchadd_int(&node->mn_refcount, 1);
+	atomic_add_int(&node->mn_refcount, 1);
 }
 
 static __inline void

Modified: head/sys/kern/vfs_bio.c
==============================================================================
--- head/sys/kern/vfs_bio.c	Tue Nov  6 17:32:07 2018	(r340191)
+++ head/sys/kern/vfs_bio.c	Tue Nov  6 17:32:25 2018	(r340192)
@@ -1656,7 +1656,7 @@ buf_alloc(struct bufdomain *bd)
 	if (freebufs > 0)
 		bp = uma_zalloc(buf_zone, M_NOWAIT);
 	if (bp == NULL) {
-		atomic_fetchadd_int(&bd->bd_freebuffers, 1);
+		atomic_add_int(&bd->bd_freebuffers, 1);
 		bufspace_daemon_wakeup(bd);
 		counter_u64_add(numbufallocfails, 1);
 		return (NULL);


More information about the svn-src-all mailing list