]> granicus.if.org Git - zfs/commitdiff
Add fix-kstat-xuio topic branch
authorBrian Behlendorf <behlendorf1@llnl.gov>
Mon, 14 Jun 2010 23:43:01 +0000 (16:43 -0700)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Mon, 14 Jun 2010 23:43:01 +0000 (16:43 -0700)
Move xiou stat structures from a header to the dmu.c source as is
done with all the other kstat interfaces.  This information is local
to dmu.c registered the xuio kstat and should stay that way.

.topdeps [new file with mode: 0644]
.topmsg [new file with mode: 0644]
module/zfs/dmu.c
module/zfs/include/sys/dmu.h
module/zfs/include/sys/dmu_impl.h

diff --git a/.topdeps b/.topdeps
new file mode 100644 (file)
index 0000000..1f7391f
--- /dev/null
+++ b/.topdeps
@@ -0,0 +1 @@
+master
diff --git a/.topmsg b/.topmsg
new file mode 100644 (file)
index 0000000..b10884c
--- /dev/null
+++ b/.topmsg
@@ -0,0 +1,8 @@
+From: Brian Behlendorf <behlendorf1@llnl.gov>
+Subject: [PATCH] fix kstat xuio
+
+Move xiou stat structures from a header to the dmu.c source as is
+done with all the other kstat interfaces.  This information is local
+to dmu.c registered the xuio kstat and should stay that way.
+
+Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
index 5b87c81c639af00528e1db63967985b678d36b75..7ea00cf997452d2efb15aaa2fec860595f8aa173 100644 (file)
@@ -765,6 +765,31 @@ dmu_prealloc(objset_t *os, uint64_t object, uint64_t offset, uint64_t size,
  */
 kstat_t *xuio_ksp = NULL;
 
+typedef struct xuio_stats {
+       /* loaned yet not returned arc_buf */
+       kstat_named_t xuiostat_onloan_rbuf;
+       kstat_named_t xuiostat_onloan_wbuf;
+       /* whether a copy is made when loaning out a read buffer */
+       kstat_named_t xuiostat_rbuf_copied;
+       kstat_named_t xuiostat_rbuf_nocopy;
+       /* whether a copy is made when assigning a write buffer */
+       kstat_named_t xuiostat_wbuf_copied;
+       kstat_named_t xuiostat_wbuf_nocopy;
+} xuio_stats_t;
+
+static xuio_stats_t xuio_stats = {
+       { "onloan_read_buf",    KSTAT_DATA_UINT64 },
+       { "onloan_write_buf",   KSTAT_DATA_UINT64 },
+       { "read_buf_copied",    KSTAT_DATA_UINT64 },
+       { "read_buf_nocopy",    KSTAT_DATA_UINT64 },
+       { "write_buf_copied",   KSTAT_DATA_UINT64 },
+       { "write_buf_nocopy",   KSTAT_DATA_UINT64 }
+};
+
+#define XUIOSTAT_INCR(stat, val)        \
+        atomic_add_64(&xuio_stats.stat.value.ui64, (val))
+#define XUIOSTAT_BUMP(stat)     XUIOSTAT_INCR(stat, 1)
+
 int
 dmu_xuio_init(xuio_t *xuio, int nblk)
 {
index 83932f467a6fa2081b43fd436b1232a15930820c..496321aacb3044ee1015b8ff3e2c89cf1534320d 100644 (file)
@@ -40,6 +40,7 @@
 #include <sys/param.h>
 #include <sys/cred.h>
 #include <sys/time.h>
+#include <sys/uio.h>
 
 #ifdef __cplusplus
 extern "C" {
index 22f9f5f8c88c4533a7b01bd39f8ede22afd09dfa..0b8748df10e30569ae72d044301172fceee44f0b 100644 (file)
@@ -239,32 +239,6 @@ typedef struct dmu_xuio {
        iovec_t *iovp;
 } dmu_xuio_t;
 
-typedef struct xuio_stats {
-       /* loaned yet not returned arc_buf */
-       kstat_named_t xuiostat_onloan_rbuf;
-       kstat_named_t xuiostat_onloan_wbuf;
-       /* whether a copy is made when loaning out a read buffer */
-       kstat_named_t xuiostat_rbuf_copied;
-       kstat_named_t xuiostat_rbuf_nocopy;
-       /* whether a copy is made when assigning a write buffer */
-       kstat_named_t xuiostat_wbuf_copied;
-       kstat_named_t xuiostat_wbuf_nocopy;
-} xuio_stats_t;
-
-static xuio_stats_t xuio_stats = {
-       { "onloan_read_buf",    KSTAT_DATA_UINT64 },
-       { "onloan_write_buf",   KSTAT_DATA_UINT64 },
-       { "read_buf_copied",    KSTAT_DATA_UINT64 },
-       { "read_buf_nocopy",    KSTAT_DATA_UINT64 },
-       { "write_buf_copied",   KSTAT_DATA_UINT64 },
-       { "write_buf_nocopy",   KSTAT_DATA_UINT64 }
-};
-
-#define        XUIOSTAT_INCR(stat, val)        \
-       atomic_add_64(&xuio_stats.stat.value.ui64, (val))
-#define        XUIOSTAT_BUMP(stat)     XUIOSTAT_INCR(stat, 1)
-
-
 #ifdef __cplusplus
 }
 #endif