Print this page
10132 smatch fixes for MDB
Reviewed by: Andy Fiddaman <andy@omniosce.org>


2371 }
2372 
2373 static void
2374 kmt_destroy(mdb_tgt_t *t)
2375 {
2376         kmt_data_t *kmt = t->t_data;
2377         kmt_module_t *km, *pkm;
2378 
2379         mdb_nv_destroy(&kmt->kmt_modules);
2380         for (km = mdb_list_prev(&kmt->kmt_modlist); km != NULL; km = pkm) {
2381                 pkm = mdb_list_prev(km);
2382                 mdb_free(km, sizeof (kmt_module_t));
2383         }
2384 
2385         if (!kmt_defbp_lock)
2386                 kmt_defbp_destroy_all();
2387 
2388         if (kmt->kmt_trapmap != NULL)
2389                 mdb_free(kmt->kmt_trapmap, BT_SIZEOFMAP(kmt->kmt_trapmax));
2390 
2391         if (kmt != NULL)
2392                 mdb_free(kmt, sizeof (kmt_data_t));
2393 }
2394 
2395 static const mdb_tgt_ops_t kmt_ops = {
2396         kmt_setflags,                           /* t_setflags */
2397         (int (*)()) mdb_tgt_notsup,             /* t_setcontext */
2398         kmt_activate,                           /* t_activate */
2399         (void (*)()) mdb_tgt_nop,               /* t_deactivate */
2400         kmt_periodic,                           /* t_periodic */
2401         kmt_destroy,                            /* t_destroy */
2402         kmt_name,                               /* t_name */
2403         (const char *(*)()) mdb_conf_isa,       /* t_isa */
2404         kmt_platform,                           /* t_platform */
2405         kmt_uname,                              /* t_uname */
2406         kmt_dmodel,                             /* t_dmodel */
2407         (ssize_t (*)()) mdb_tgt_notsup,         /* t_aread */
2408         (ssize_t (*)()) mdb_tgt_notsup,         /* t_awrite */
2409         kmt_read,                               /* t_vread */
2410         kmt_write,                              /* t_vwrite */
2411         kmt_pread,                              /* t_pread */




2371 }
2372 
2373 static void
2374 kmt_destroy(mdb_tgt_t *t)
2375 {
2376         kmt_data_t *kmt = t->t_data;
2377         kmt_module_t *km, *pkm;
2378 
2379         mdb_nv_destroy(&kmt->kmt_modules);
2380         for (km = mdb_list_prev(&kmt->kmt_modlist); km != NULL; km = pkm) {
2381                 pkm = mdb_list_prev(km);
2382                 mdb_free(km, sizeof (kmt_module_t));
2383         }
2384 
2385         if (!kmt_defbp_lock)
2386                 kmt_defbp_destroy_all();
2387 
2388         if (kmt->kmt_trapmap != NULL)
2389                 mdb_free(kmt->kmt_trapmap, BT_SIZEOFMAP(kmt->kmt_trapmax));
2390 

2391         mdb_free(kmt, sizeof (kmt_data_t));
2392 }
2393 
2394 static const mdb_tgt_ops_t kmt_ops = {
2395         kmt_setflags,                           /* t_setflags */
2396         (int (*)()) mdb_tgt_notsup,             /* t_setcontext */
2397         kmt_activate,                           /* t_activate */
2398         (void (*)()) mdb_tgt_nop,               /* t_deactivate */
2399         kmt_periodic,                           /* t_periodic */
2400         kmt_destroy,                            /* t_destroy */
2401         kmt_name,                               /* t_name */
2402         (const char *(*)()) mdb_conf_isa,       /* t_isa */
2403         kmt_platform,                           /* t_platform */
2404         kmt_uname,                              /* t_uname */
2405         kmt_dmodel,                             /* t_dmodel */
2406         (ssize_t (*)()) mdb_tgt_notsup,         /* t_aread */
2407         (ssize_t (*)()) mdb_tgt_notsup,         /* t_awrite */
2408         kmt_read,                               /* t_vread */
2409         kmt_write,                              /* t_vwrite */
2410         kmt_pread,                              /* t_pread */