+ case STACKSHOT_KCTYPE_THREAD_GROUP_SNAPSHOT: {
+ i = 0;
+ _SUBTYPE(KC_ST_UINT64, struct thread_group_snapshot_v2, tgs_id);
+ _SUBTYPE_ARRAY(KC_ST_CHAR, struct thread_group_snapshot_v2, tgs_name, 16);
+ _SUBTYPE(KC_ST_UINT64, struct thread_group_snapshot_v2, tgs_flags);
+ setup_type_definition(retval, type_id, i, "thread_group_snapshot");
+ break;
+ }
+
+ case STACKSHOT_KCTYPE_THREAD_GROUP: {
+ i = 0;
+ setup_subtype_description(&subtypes[i++], KC_ST_UINT64, 0, "thread_group");
+ setup_type_definition(retval, type_id, i, "thread_group");
+ break;
+ };
+
+ case STACKSHOT_KCTYPE_JETSAM_COALITION_SNAPSHOT: {
+ i = 0;
+ _SUBTYPE(KC_ST_UINT64, struct jetsam_coalition_snapshot, jcs_id);
+ _SUBTYPE(KC_ST_UINT64, struct jetsam_coalition_snapshot, jcs_flags);
+ _SUBTYPE(KC_ST_UINT64, struct jetsam_coalition_snapshot, jcs_thread_group);
+ _SUBTYPE(KC_ST_UINT64, struct jetsam_coalition_snapshot, jcs_leader_task_uniqueid);
+ setup_type_definition(retval, type_id, i, "jetsam_coalition_snapshot");
+ break;
+ }
+
+ case STACKSHOT_KCTYPE_JETSAM_COALITION: {
+ i = 0;
+ setup_subtype_description(&subtypes[i++], KC_ST_UINT64, 0, "jetsam_coalition");
+ setup_type_definition(retval, type_id, i, "jetsam_coalition");
+ break;
+ };
+
+ case STACKSHOT_KCTYPE_INSTRS_CYCLES: {
+ i = 0;
+ _SUBTYPE(KC_ST_UINT64, struct instrs_cycles_snapshot, ics_instructions);
+ _SUBTYPE(KC_ST_UINT64, struct instrs_cycles_snapshot, ics_cycles);
+ setup_type_definition(retval, type_id, i, "instrs_cycles_snapshot");
+ break;
+ }
+
+ case STACKSHOT_KCTYPE_USER_STACKTOP: {
+ i = 0;
+ _SUBTYPE(KC_ST_UINT64, struct stack_snapshot_stacktop, sp);
+ _SUBTYPE_ARRAY(KC_ST_UINT8, struct stack_snapshot_stacktop, stack_contents, 8);
+ setup_type_definition(retval, type_id, i, "user_stacktop");
+ break;
+ }
+