Lines Matching refs:smt_arg
1491 struct send_merge_thread_arg *smt_arg = arg; in send_merge_thread() local
1497 if (smt_arg->redact_arg == NULL) { in send_merge_thread()
1505 bqueue_dequeue(&smt_arg->redact_arg->q); in send_merge_thread()
1506 queues[REDACT_IDX] = &smt_arg->redact_arg->q; in send_merge_thread()
1508 front_ranges[TO_IDX] = bqueue_dequeue(&smt_arg->to_arg->q); in send_merge_thread()
1509 queues[TO_IDX] = &smt_arg->to_arg->q; in send_merge_thread()
1510 front_ranges[FROM_IDX] = bqueue_dequeue(&smt_arg->from_arg->q); in send_merge_thread()
1511 queues[FROM_IDX] = &smt_arg->from_arg->q; in send_merge_thread()
1515 !range->eos_marker && err == 0 && !smt_arg->cancel; in send_merge_thread()
1528 bqueue_enqueue(&smt_arg->q, range, sizeof (*range)); in send_merge_thread()
1530 if (smt_arg->to_arg->error_code != 0) { in send_merge_thread()
1531 err = smt_arg->to_arg->error_code; in send_merge_thread()
1532 } else if (smt_arg->from_arg->error_code != 0) { in send_merge_thread()
1533 err = smt_arg->from_arg->error_code; in send_merge_thread()
1534 } else if (smt_arg->redact_arg != NULL && in send_merge_thread()
1535 smt_arg->redact_arg->error_code != 0) { in send_merge_thread()
1536 err = smt_arg->redact_arg->error_code; in send_merge_thread()
1539 if (smt_arg->cancel && err == 0) in send_merge_thread()
1541 smt_arg->error = err; in send_merge_thread()
1542 if (smt_arg->error != 0) { in send_merge_thread()
1543 smt_arg->to_arg->cancel = B_TRUE; in send_merge_thread()
1544 smt_arg->from_arg->cancel = B_TRUE; in send_merge_thread()
1545 if (smt_arg->redact_arg != NULL) in send_merge_thread()
1546 smt_arg->redact_arg->cancel = B_TRUE; in send_merge_thread()
1556 bqueue_enqueue_flush(&smt_arg->q, range, 1); in send_merge_thread()
2139 setup_merge_thread(struct send_merge_thread_arg *smt_arg, in setup_merge_thread() argument
2144 VERIFY0(bqueue_init(&smt_arg->q, zfs_send_no_prefetch_queue_ff, in setup_merge_thread()
2147 smt_arg->cancel = B_FALSE; in setup_merge_thread()
2148 smt_arg->error = 0; in setup_merge_thread()
2149 smt_arg->from_arg = from_arg; in setup_merge_thread()
2150 smt_arg->to_arg = to_arg; in setup_merge_thread()
2152 smt_arg->redact_arg = rlt_arg; in setup_merge_thread()
2154 smt_arg->os = os; in setup_merge_thread()
2155 (void) thread_create(NULL, 0, send_merge_thread, smt_arg, 0, curproc, in setup_merge_thread()
2161 struct dmu_send_params *dspp, struct send_merge_thread_arg *smt_arg, in setup_reader_thread() argument
2167 srt_arg->smta = smt_arg; in setup_reader_thread()
2178 struct send_merge_thread_arg *smt_arg, boolean_t resuming, objset_t *os, in setup_resume_points() argument
2181 (void) smt_arg; in setup_resume_points()
2375 struct send_merge_thread_arg *smt_arg; in dmu_send_impl() local
2458 smt_arg = kmem_zalloc(sizeof (*smt_arg), KM_SLEEP); in dmu_send_impl()
2529 rlt_arg, smt_arg, resuming, os, redact_rl, nvl); in dmu_send_impl()
2566 setup_merge_thread(smt_arg, dspp, from_arg, to_arg, rlt_arg, os); in dmu_send_impl()
2567 setup_reader_thread(srt_arg, dspp, smt_arg, featureflags); in dmu_send_impl()
2592 bqueue_destroy(&smt_arg->q); in dmu_send_impl()
2641 kmem_free(smt_arg, sizeof (*smt_arg)); in dmu_send_impl()