]> granicus.if.org Git - spl/commitdiff
Revert "Add KSTAT_TYPE_TXG type"
authorBrian Behlendorf <behlendorf1@llnl.gov>
Mon, 30 Sep 2013 18:32:42 +0000 (11:32 -0700)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Wed, 16 Oct 2013 21:48:35 +0000 (14:48 -0700)
This reverts commit dba79fcbf2cc50be5caef84ae01657e884ac5d89 in
favor of using the generic KSTAT_TYPE_RAW callbacks.  The advantage
of this approach is that arbitrary types can be added without the
need to add them to the SPL.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Issue #296

include/sys/kstat.h
module/spl/spl-kstat.c

index 75b384714c2ca458c4ef0d417fe120817ab16833..6e3c0cdfeeaf31a71beb2a34a6da1af1b2929327 100644 (file)
@@ -44,8 +44,7 @@
 #define KSTAT_TYPE_INTR         2       /* interrupt stats; ks_ndata == 1 */
 #define KSTAT_TYPE_IO           3       /* I/O stats; ks_ndata == 1 */
 #define KSTAT_TYPE_TIMER        4       /* event timer; ks_ndata >= 1 */
-#define KSTAT_TYPE_TXG          5       /* txg sync; ks_ndata >= 1 */
-#define KSTAT_NUM_TYPES         6
+#define KSTAT_NUM_TYPES         5
 
 #define KSTAT_DATA_CHAR         0
 #define KSTAT_DATA_INT32        1
@@ -176,26 +175,6 @@ typedef struct kstat_timer {
         hrtime_t     stop_time;            /* previous event stop time */
 } kstat_timer_t;
 
-typedef enum kstat_txg_state {
-        TXG_STATE_OPEN      = 1,
-        TXG_STATE_QUIESCING = 2,
-        TXG_STATE_SYNCING   = 3,
-        TXG_STATE_COMMITTED = 4,
-} kstat_txg_state_t;
-
-typedef struct kstat_txg {
-        u_longlong_t       txg;         /* txg id */
-        kstat_txg_state_t  state;       /* txg state */
-        hrtime_t           birth;       /* birth time stamp */
-        u_longlong_t       nread;       /* number of bytes read */
-        u_longlong_t       nwritten;    /* number of bytes written */
-        uint_t             reads;       /* number of read operations */
-        uint_t             writes;      /* number of write operations */
-        hrtime_t           open_time;   /* open time */
-        hrtime_t           quiesce_time;/* quiesce time */
-        hrtime_t           sync_time;   /* sync time */
-} kstat_txg_t;
-
 int spl_kstat_init(void);
 void spl_kstat_fini(void);
 
index 57aabe2d0290c039b92f32c7fd2452b35f6f3067..ee65f4a77f0226b1d17466f084d8257994a7c799 100644 (file)
@@ -106,14 +106,6 @@ restart:
                                    "name", "events", "elapsed",
                                    "min", "max", "start", "stop");
                         break;
-                case KSTAT_TYPE_TXG:
-                        seq_printf(f,
-                                   "%-8s %-5s %-13s %-12s %-12s %-8s %-8s "
-                                   "%-12s %-12s %-12s\n",
-                                   "txg", "state", "birth",
-                                   "nread", "nwritten", "reads", "writes",
-                                   "otime", "qtime", "stime");
-                        break;
                 default:
                         PANIC("Undefined kstat type %d\n", ksp->ks_type);
         }
@@ -228,27 +220,6 @@ kstat_seq_show_timer(struct seq_file *f, kstat_timer_t *ktp)
         return 0;
 }
 
-static int
-kstat_seq_show_txg(struct seq_file *f, kstat_txg_t *ktp)
-{
-       char state;
-
-       switch (ktp->state) {
-               case TXG_STATE_OPEN:            state = 'O';    break;
-               case TXG_STATE_QUIESCING:       state = 'Q';    break;
-               case TXG_STATE_SYNCING:         state = 'S';    break;
-               case TXG_STATE_COMMITTED:       state = 'C';    break;
-               default:                        state = '?';    break;
-       }
-
-        seq_printf(f,
-                   "%-8llu %-5c %-13llu %-12llu %-12llu %-8u %-8u "
-                   "%12lld %12lld %12lld\n", ktp->txg, state, ktp->birth,
-                    ktp->nread, ktp->nwritten, ktp->reads, ktp->writes,
-                    ktp->open_time, ktp->quiesce_time, ktp->sync_time);
-       return 0;
-}
-
 static int
 kstat_seq_show(struct seq_file *f, void *p)
 {
@@ -285,9 +256,6 @@ restart:
                 case KSTAT_TYPE_TIMER:
                         rc = kstat_seq_show_timer(f, (kstat_timer_t *)p);
                         break;
-                case KSTAT_TYPE_TXG:
-                        rc = kstat_seq_show_txg(f, (kstat_txg_t *)p);
-                        break;
                 default:
                         PANIC("Undefined kstat type %d\n", ksp->ks_type);
         }
@@ -331,9 +299,6 @@ kstat_seq_data_addr(kstat_t *ksp, loff_t n)
                 case KSTAT_TYPE_TIMER:
                         rc = ksp->ks_data + n * sizeof(kstat_timer_t);
                         break;
-                case KSTAT_TYPE_TXG:
-                        rc = ksp->ks_data + n * sizeof(kstat_txg_t);
-                        break;
                 default:
                         PANIC("Undefined kstat type %d\n", ksp->ks_type);
         }
@@ -566,10 +531,6 @@ __kstat_create(const char *ks_module, int ks_instance, const char *ks_name,
                        ksp->ks_ndata = ks_ndata;
                         ksp->ks_data_size = ks_ndata * sizeof(kstat_timer_t);
                         break;
-               case KSTAT_TYPE_TXG:
-                       ksp->ks_ndata = ks_ndata;
-                       ksp->ks_data_size = ks_ndata * sizeof(kstat_timer_t);
-                       break;
                 default:
                         PANIC("Undefined kstat type %d\n", ksp->ks_type);
         }