svn commit: r259192 - head/sbin/hastd

Mikolaj Golub trociny at FreeBSD.org
Tue Dec 10 19:58:10 UTC 2013


Author: trociny
Date: Tue Dec 10 19:58:10 2013
New Revision: 259192
URL: http://svnweb.freebsd.org/changeset/base/259192

Log:
  Add some macros to make the code more readable (no functional chages).
  
  MFC after:	2 weeks

Modified:
  head/sbin/hastd/primary.c

Modified: head/sbin/hastd/primary.c
==============================================================================
--- head/sbin/hastd/primary.c	Tue Dec 10 19:56:26 2013	(r259191)
+++ head/sbin/hastd/primary.c	Tue Dec 10 19:58:10 2013	(r259192)
@@ -233,6 +233,10 @@ static pthread_mutex_t metadata_lock;
 	mtx_unlock(&hio_##name##_list_lock);				\
 } while (0)
 
+#define ISFULLSYNC(hio)	((hio)->hio_replication == HAST_REPLICATION_FULLSYNC)
+#define ISMEMSYNC(hio)	((hio)->hio_replication == HAST_REPLICATION_MEMSYNC)
+#define ISASYNC(hio)	((hio)->hio_replication == HAST_REPLICATION_ASYNC)
+
 #define	SYNCREQ(hio)		do {					\
 	(hio)->hio_ggio.gctl_unit = -1;					\
 	(hio)->hio_ggio.gctl_seq = 1;					\
@@ -240,9 +244,9 @@ static pthread_mutex_t metadata_lock;
 #define	ISSYNCREQ(hio)		((hio)->hio_ggio.gctl_unit == -1)
 #define	SYNCREQDONE(hio)	do { (hio)->hio_ggio.gctl_unit = -2; } while (0)
 #define	ISSYNCREQDONE(hio)	((hio)->hio_ggio.gctl_unit == -2)
-#define ISMEMSYNCWRITE(hio)	\
-	(((hio)->hio_replication == HAST_REPLICATION_MEMSYNC &&		\
-	(hio)->hio_ggio.gctl_cmd == BIO_WRITE && !ISSYNCREQ(hio)))
+
+#define ISMEMSYNCWRITE(hio)	(ISMEMSYNC(hio) &&			\
+	    (hio)->hio_ggio.gctl_cmd == BIO_WRITE && !ISSYNCREQ(hio))
 
 static struct hast_resource *gres;
 
@@ -1356,7 +1360,7 @@ ggate_recv_thread(void *arg)
 			} else {
 				mtx_unlock(&res->hr_amp_lock);
 			}
-			if (hio->hio_replication == HAST_REPLICATION_MEMSYNC) {
+			if (ISMEMSYNC(hio)) {
 				hio->hio_memsyncacked = false;
 				refcnt_init(&hio->hio_writecount, ncomps);
 			}
@@ -1441,8 +1445,7 @@ local_send_thread(void *arg)
 				    ret, (intmax_t)ggio->gctl_length);
 			} else {
 				hio->hio_errors[ncomp] = 0;
-				if (hio->hio_replication ==
-				    HAST_REPLICATION_ASYNC) {
+				if (ISASYNC(hio)) {
 					ggio->gctl_error = 0;
 					write_complete(res, hio);
 				}


More information about the svn-src-all mailing list