Lines Matching defs:record

166     zinject_record_t *record)
184 record->zi_objset = dmu_objset_id(os);
185 record->zi_object = statbuf->st_ino;
197 zinject_record_t *record)
213 record->zi_start = 0;
214 record->zi_end = -1ULL;
219 record->zi_start = strtoull(range, &end, 10);
223 record->zi_end = record->zi_start + 1;
225 record->zi_end = strtoull(end + 1, &end, 10);
252 record->zi_start = record->zi_object * sizeof (dnode_phys_t);
253 record->zi_end = record->zi_start + sizeof (dnode_phys_t);
254 record->zi_object = 0;
269 if (record->zi_object == 0) {
272 err = dnode_hold(os, record->zi_object, FTAG, &dn);
276 (u_longlong_t)record->zi_object);
288 if (record->zi_start != 0 || record->zi_end != -1ULL) {
289 record->zi_start >>= dn->dn_datablkshift;
290 record->zi_end >>= dn->dn_datablkshift;
297 record->zi_level = level;
300 record->zi_start, record->zi_end);
308 if (record->zi_start != 0 || record->zi_end != 0) {
312 record->zi_start >>= shift;
313 record->zi_end >>= shift;
332 int level, zinject_record_t *record, char *poolname, char *dataset)
351 record->zi_type = 0;
354 record->zi_type = DMU_OT_OBJECT_DIRECTORY;
357 record->zi_type = DMU_OT_OBJECT_ARRAY;
360 record->zi_type = DMU_OT_PACKED_NVLIST;
363 record->zi_type = DMU_OT_BPOBJ;
366 record->zi_type = DMU_OT_SPACE_MAP;
369 record->zi_type = DMU_OT_ERROR_LOG;
390 if (object_from_path(dataset, path, &statbuf, record) != 0)
393 ziprintf("raw objset: %llu\n", record->zi_objset);
394 ziprintf("raw object: %llu\n", record->zi_object);
399 if (calculate_range(dataset, type, level, (char *)range, record) != 0)
402 ziprintf(" objset: %llu\n", record->zi_objset);
403 ziprintf(" object: %llu\n", record->zi_object);
404 if (record->zi_start == 0 &&
405 record->zi_end == -1ULL)
408 ziprintf(" range: [%llu, %llu]\n", record->zi_start,
409 record->zi_end);
426 translate_raw(const char *str, zinject_record_t *record)
432 if (sscanf(str, "%llx:%llx:%x:%llx", (u_longlong_t *)&record->zi_objset,
433 (u_longlong_t *)&record->zi_object, &record->zi_level,
434 (u_longlong_t *)&record->zi_start) != 4) {
440 record->zi_end = record->zi_start;
447 zinject_record_t *record)
455 * Given a device name or GUID, create an appropriate injection record
461 record->zi_guid = strtoull(device, &end, 16);
462 if (record->zi_guid == 0 || *end != '\0') {
472 &record->zi_guid) == 0);
477 record->zi_start = offsetof(vdev_label_t, vl_uberblock[0]);
478 record->zi_end = record->zi_start + VDEV_UBERBLOCK_RING - 1;
481 record->zi_start = offsetof(vdev_label_t, vl_vdev_phys);
482 record->zi_end = record->zi_start + VDEV_PHYS_SIZE - 1;
485 record->zi_start = offsetof(vdev_label_t, vl_pad1);
486 record->zi_end = record->zi_start + VDEV_PAD_SIZE - 1;
489 record->zi_start = offsetof(vdev_label_t, vl_pad2);
490 record->zi_end = record->zi_start + VDEV_PAD_SIZE - 1;