Lines Matching defs:record

224 	    "\t\tClear the particular record (if given a numeric ID), or\n"
352 print_data_handler(int id, const char *pool, zinject_record_t *record,
357 if (record->zi_guid != 0 || record->zi_func[0] != '\0')
370 (u_longlong_t)record->zi_objset, (u_longlong_t)record->zi_object,
371 type_to_name(record->zi_type), record->zi_level);
373 if (record->zi_start == 0 &&
374 record->zi_end == -1ULL)
377 (void) printf("[%llu, %llu]\n", (u_longlong_t)record->zi_start,
378 (u_longlong_t)record->zi_end);
384 print_device_handler(int id, const char *pool, zinject_record_t *record,
389 if (record->zi_guid == 0 || record->zi_func[0] != '\0')
392 if (record->zi_cmd == ZINJECT_DELAY_IO)
403 (u_longlong_t)record->zi_guid);
409 print_delay_handler(int id, const char *pool, zinject_record_t *record,
414 if (record->zi_guid == 0 || record->zi_func[0] != '\0')
417 if (record->zi_cmd != ZINJECT_DELAY_IO)
430 (u_longlong_t)NSEC2MSEC(record->zi_timer),
431 (u_longlong_t)record->zi_nlanes,
432 (u_longlong_t)record->zi_guid);
438 print_panic_handler(int id, const char *pool, zinject_record_t *record,
443 if (record->zi_func[0] == '\0')
453 (void) printf("%3d %-15s %s\n", id, pool, record->zi_func);
495 cancel_one_handler(int id, const char *pool, zinject_record_t *record,
550 register_handler(const char *pool, int flags, zinject_record_t *record,
556 zc.zc_inject_record = *record;
574 if (record->zi_guid) {
576 (u_longlong_t)record->zi_guid);
577 } else if (record->zi_func[0] != '\0') {
579 record->zi_func);
580 } else if (record->zi_duration > 0) {
582 (u_longlong_t)record->zi_duration);
583 } else if (record->zi_duration < 0) {
585 (u_longlong_t)-record->zi_duration);
588 (u_longlong_t)record->zi_objset);
590 (u_longlong_t)record->zi_object);
592 (u_longlong_t)record->zi_type);
593 (void) printf(" level: %d\n", record->zi_level);
594 if (record->zi_start == 0 &&
595 record->zi_end == -1ULL)
599 (u_longlong_t)record->zi_start,
600 (u_longlong_t)record->zi_end);
608 perform_action(const char *pool, zinject_record_t *record, int cmd)
614 zc.zc_guid = record->zi_guid;
669 zinject_record_t record = { 0 };
735 ret = parse_delay(optarg, &record.zi_timer,
736 &record.zi_nlanes);
762 record.zi_freq = atoi(optarg);
763 if (record.zi_freq < 1 || record.zi_freq > 100) {
770 record.zi_failfast = B_TRUE;
774 record.zi_duration = (int)strtol(optarg, &end, 10);
775 if (record.zi_duration <= 0 || *end != '\0') {
782 record.zi_duration *= -1;
791 record.zi_duration = 30;
806 (void) strlcpy(record.zi_func, optarg,
807 sizeof (record.zi_func));
808 record.zi_cmd = ZINJECT_PANIC;
818 record.zi_duration = (int)strtol(optarg, &end, 10);
819 if (record.zi_duration <= 0 || *end != '\0') {
882 if (record.zi_duration != 0)
883 record.zi_cmd = ZINJECT_IGNORED_WRITES;
890 level != 0 || record.zi_cmd != ZINJECT_UNINITIALIZED) {
922 level != 0 || record.zi_cmd != ZINJECT_UNINITIALIZED) {
945 record.zi_iotype = io_type;
946 if (translate_device(pool, device, label, &record) != 0)
952 return (perform_action(pool, &record, action));
956 record.zi_cmd != ZINJECT_UNINITIALIZED) {
979 record.zi_cmd = ZINJECT_DATA_FAULT;
980 if (translate_raw(raw, &record) != 0)
984 } else if (record.zi_cmd == ZINJECT_PANIC) {
1002 record.zi_type = atoi(argv[1]);
1004 } else if (record.zi_cmd == ZINJECT_IGNORED_WRITES) {
1058 record.zi_cmd = ZINJECT_DATA_FAULT;
1059 if (translate_record(type, argv[0], range, level, &record, pool,
1079 record.zi_error = error;
1081 ret = register_handler(pool, flags, &record, quiet);