Print this page
6938 STMF kstat free is using an improper size for kmem_free().

@@ -3178,12 +3178,11 @@
         } else {
                 mutex_exit(&stmf_state.stmf_lock);
                 return (STMF_BUSY);
         }
         if (ilu->ilu_kstat_info) {
-                kmem_free(ilu->ilu_kstat_info->ks_data,
-                    ilu->ilu_kstat_info->ks_data_size);
+                kmem_free(ilu->ilu_kstat_info->ks_data, STMF_KSTAT_LU_SZ);
                 kstat_delete(ilu->ilu_kstat_info);
         }
         if (ilu->ilu_kstat_io) {
                 kstat_delete(ilu->ilu_kstat_io);
                 mutex_destroy(&ilu->ilu_kstat_lock);

@@ -3357,11 +3356,11 @@
                 mutex_exit(&stmf_state.stmf_lock);
                 return (STMF_BUSY);
         }
         if (ilport->ilport_kstat_info) {
                 kmem_free(ilport->ilport_kstat_info->ks_data,
-                    ilport->ilport_kstat_info->ks_data_size);
+                    STMF_KSTAT_TGT_SZ);
                 kstat_delete(ilport->ilport_kstat_info);
         }
         if (ilport->ilport_kstat_io) {
                 kstat_delete(ilport->ilport_kstat_io);
                 mutex_destroy(&ilport->ilport_kstat_lock);