lock_protect
lock_protect(&fwd->lock, fwd->tree, sizeof(*fwd->tree));
lock_protect(&fwd->lock, fwd->tree, sizeof(*fwd->tree));
lock_protect(&data->lock, data->tree, sizeof(*data->tree));
lock_protect(&hints->lock, &hints->tree, sizeof(hints->tree));
lock_protect(&iter_env->queries_ratelimit_lock,
lock_protect(&z->lock, &z->rpz->local_zones, sizeof(*z->rpz));
lock_protect(&az->lock, &az->ztree, sizeof(az->ztree));
lock_protect(&az->lock, &az->xtree, sizeof(az->xtree));
lock_protect(&az->rpz_lock, &az->rpz_first, sizeof(az->rpz_first));
lock_protect(&z->lock, &z->name, sizeof(*z)-sizeof(rbnode_type)-
lock_protect(&xfr->lock, &xfr->name, sizeof(xfr->name));
lock_protect(&xfr->lock, &xfr->namelen, sizeof(xfr->namelen));
lock_protect(&xfr->lock, xfr->name, xfr->namelen);
lock_protect(&xfr->lock, &xfr->namelabs, sizeof(xfr->namelabs));
lock_protect(&xfr->lock, &xfr->dclass, sizeof(xfr->dclass));
lock_protect(&xfr->lock, &xfr->notify_received, sizeof(xfr->notify_received));
lock_protect(&xfr->lock, &xfr->notify_serial, sizeof(xfr->notify_serial));
lock_protect(&xfr->lock, &xfr->zone_expired, sizeof(xfr->zone_expired));
lock_protect(&xfr->lock, &xfr->have_zone, sizeof(xfr->have_zone));
lock_protect(&xfr->lock, &xfr->soa_zone_acquired, sizeof(xfr->soa_zone_acquired));
lock_protect(&xfr->lock, &xfr->serial, sizeof(xfr->serial));
lock_protect(&xfr->lock, &xfr->retry, sizeof(xfr->retry));
lock_protect(&xfr->lock, &xfr->refresh, sizeof(xfr->refresh));
lock_protect(&xfr->lock, &xfr->expiry, sizeof(xfr->expiry));
lock_protect(&xfr->lock, &xfr->lease_time, sizeof(xfr->lease_time));
lock_protect(&xfr->lock, &xfr->task_nextprobe->worker,
lock_protect(&xfr->lock, &xfr->task_probe->worker,
lock_protect(&xfr->lock, &xfr->task_transfer->worker,
lock_protect(&table->lock, &table->static_secret,
lock_protect(&table->lock, &table->static_secret_len,
lock_protect(&table->lock, table->static_secret,
lock_protect(&table->lock, &table->sv_scidlen,
lock_protect(&table->lock, &table->idle_timeout,
lock_protect(&table->lock, &table->conn_tree, sizeof(table->conn_tree));
lock_protect(&table->lock, table->conn_tree, sizeof(*table->conn_tree));
lock_protect(&table->conid_lock, table->conid_tree,
lock_protect(&table->lock, table->timer_tree,
lock_protect(&table->size_lock, &table->current_size,
lock_protect(&conn->lock, &conn->key, sizeof(conn->key));
lock_protect(&conn->lock, &conn->doq_socket, sizeof(conn->doq_socket));
lock_protect(&conn->lock, &conn->table, sizeof(conn->table));
lock_protect(&conn->lock, &conn->is_deleted, sizeof(conn->is_deleted));
lock_protect(&conn->lock, &conn->version, sizeof(conn->version));
lock_protect(&conn->lock, &conn->conn, sizeof(conn->conn));
lock_protect(&conn->lock, &conn->conid_list, sizeof(conn->conid_list));
lock_protect(&conn->lock, &conn->ccerr, sizeof(conn->ccerr));
lock_protect(&conn->lock, &conn->last_error, sizeof(conn->last_error));
lock_protect(&conn->lock, &conn->tls_alert, sizeof(conn->tls_alert));
lock_protect(&conn->lock, &conn->ssl, sizeof(conn->ssl));
lock_protect(&conn->lock, &conn->close_pkt, sizeof(conn->close_pkt));
lock_protect(&conn->lock, &conn->close_pkt_len, sizeof(conn->close_pkt_len));
lock_protect(&conn->lock, &conn->close_ecn, sizeof(conn->close_ecn));
lock_protect(&conn->lock, &conn->stream_tree, sizeof(conn->stream_tree));
lock_protect(&conn->lock, &conn->stream_write_first, sizeof(conn->stream_write_first));
lock_protect(&conn->lock, &conn->stream_write_last, sizeof(conn->stream_write_last));
lock_protect(&conn->lock, &conn->write_interest, sizeof(conn->write_interest));
lock_protect(&conn->lock, &conn->on_write_list, sizeof(conn->on_write_list));
lock_protect(&conn->lock, &conn->write_prev, sizeof(conn->write_prev));
lock_protect(&conn->lock, &conn->write_next, sizeof(conn->write_next));
lock_protect(&zones->lock, &zones->ztree, sizeof(zones->ztree));
lock_protect(&z->lock, &z->parent, sizeof(*z)-sizeof(rbnode_type));
lock_protect(&v->lock, &v->name, sizeof(*v)-sizeof(rbnode_type));
lock_protect(&v->lock, &v->vtree, sizeof(v->vtree));
lock_protect(&alloc->lock, alloc, sizeof(*alloc));
lock_protect(&e->entry.lock, &e->key.qname, sizeof(e->key.qname));
lock_protect(&e->entry.lock, &e->key.qname_len, sizeof(e->key.qname_len));
lock_protect(&e->entry.lock, &e->key.qtype, sizeof(e->key.qtype));
lock_protect(&e->entry.lock, &e->key.qclass, sizeof(e->key.qclass));
lock_protect(&e->entry.lock, &e->key.local_alias, sizeof(e->key.local_alias));
lock_protect(&e->entry.lock, &e->entry.hash, sizeof(e->entry.hash));
lock_protect(&e->entry.lock, &e->entry.key, sizeof(e->entry.key));
lock_protect(&e->entry.lock, &e->entry.data, sizeof(e->entry.data));
lock_protect(&e->entry.lock, e->key.qname, e->key.qname_len);
lock_protect(&cookie_secrets->lock, &cookie_secrets->cookie_count,
lock_protect(&cookie_secrets->lock, cookie_secrets->cookie_secrets,
lock_protect(&table->lock, table->array,
lock_protect(&array[i].lock, &array[i],
lock_protect(&table->lock, table, sizeof(*table));
lock_protect(&table->lock, table->array,
lock_protect(&tp->lock, tp, sizeof(*tp));
lock_protect(&tp->lock, tp->autr, sizeof(*tp->autr));
lock_protect(&a->lock, a, sizeof(*a));
lock_protect(&a->lock, a->autr, sizeof(*a->autr));
lock_protect(&neg->lock, neg, sizeof(*neg));
lock_protect(&val_env->bogus_lock, &val_env->num_rrset_bogus,
lock_protect(&d->lock, d, sizeof(*d));
lock_protect(&moddata->wait_lock, &moddata->reconnect_wait,
lock_protect(&moddata->replica_wait_lock,
lock_protect(&fr->fr_output_lock, fr->fr_output,
lock_protect(&env->shared_secrets_cache_lock,
lock_protect(&env->nonces_cache_lock,
lock_protect(&env->nonces_cache_lock,
lock_protect(&mq->lock, mq, sizeof(*mq));
lock_protect(&dtio->wakeup_timer_lock, &dtio->wakeup_timer_enabled,
lock_protect(&fwd->lock, fwd->tree, sizeof(*fwd->tree));
lock_protect(&fwd->lock, fwd->tree, sizeof(*fwd->tree));
lock_protect(&data->lock, data->tree, sizeof(*data->tree));
lock_protect(&hints->lock, &hints->tree, sizeof(hints->tree));
lock_protect(&iter_env->queries_ratelimit_lock,
lock_protect(&z->lock, &z->rpz->local_zones, sizeof(*z->rpz));
lock_protect(&az->lock, &az->ztree, sizeof(az->ztree));
lock_protect(&az->lock, &az->xtree, sizeof(az->xtree));
lock_protect(&az->rpz_lock, &az->rpz_first, sizeof(az->rpz_first));
lock_protect(&z->lock, &z->name, sizeof(*z)-sizeof(rbnode_type)-
lock_protect(&xfr->lock, &xfr->name, sizeof(xfr->name));
lock_protect(&xfr->lock, &xfr->namelen, sizeof(xfr->namelen));
lock_protect(&xfr->lock, xfr->name, xfr->namelen);
lock_protect(&xfr->lock, &xfr->namelabs, sizeof(xfr->namelabs));
lock_protect(&xfr->lock, &xfr->dclass, sizeof(xfr->dclass));
lock_protect(&xfr->lock, &xfr->notify_received, sizeof(xfr->notify_received));
lock_protect(&xfr->lock, &xfr->notify_serial, sizeof(xfr->notify_serial));
lock_protect(&xfr->lock, &xfr->zone_expired, sizeof(xfr->zone_expired));
lock_protect(&xfr->lock, &xfr->have_zone, sizeof(xfr->have_zone));
lock_protect(&xfr->lock, &xfr->soa_zone_acquired, sizeof(xfr->soa_zone_acquired));
lock_protect(&xfr->lock, &xfr->serial, sizeof(xfr->serial));
lock_protect(&xfr->lock, &xfr->retry, sizeof(xfr->retry));
lock_protect(&xfr->lock, &xfr->refresh, sizeof(xfr->refresh));
lock_protect(&xfr->lock, &xfr->expiry, sizeof(xfr->expiry));
lock_protect(&xfr->lock, &xfr->lease_time, sizeof(xfr->lease_time));
lock_protect(&xfr->lock, &xfr->task_nextprobe->worker,
lock_protect(&xfr->lock, &xfr->task_probe->worker,
lock_protect(&xfr->lock, &xfr->task_transfer->worker,
lock_protect(&table->lock, &table->static_secret,
lock_protect(&table->lock, &table->static_secret_len,
lock_protect(&table->lock, table->static_secret,
lock_protect(&table->lock, &table->sv_scidlen,
lock_protect(&table->lock, &table->idle_timeout,
lock_protect(&table->lock, &table->conn_tree, sizeof(table->conn_tree));
lock_protect(&table->lock, table->conn_tree, sizeof(*table->conn_tree));
lock_protect(&table->conid_lock, table->conid_tree,
lock_protect(&table->lock, table->timer_tree,
lock_protect(&table->size_lock, &table->current_size,
lock_protect(&conn->lock, &conn->key, sizeof(conn->key));
lock_protect(&conn->lock, &conn->doq_socket, sizeof(conn->doq_socket));
lock_protect(&conn->lock, &conn->table, sizeof(conn->table));
lock_protect(&conn->lock, &conn->is_deleted, sizeof(conn->is_deleted));
lock_protect(&conn->lock, &conn->version, sizeof(conn->version));
lock_protect(&conn->lock, &conn->conn, sizeof(conn->conn));
lock_protect(&conn->lock, &conn->conid_list, sizeof(conn->conid_list));
lock_protect(&conn->lock, &conn->ccerr, sizeof(conn->ccerr));
lock_protect(&conn->lock, &conn->last_error, sizeof(conn->last_error));
lock_protect(&conn->lock, &conn->tls_alert, sizeof(conn->tls_alert));
lock_protect(&conn->lock, &conn->ssl, sizeof(conn->ssl));
lock_protect(&conn->lock, &conn->close_pkt, sizeof(conn->close_pkt));
lock_protect(&conn->lock, &conn->close_pkt_len, sizeof(conn->close_pkt_len));
lock_protect(&conn->lock, &conn->close_ecn, sizeof(conn->close_ecn));
lock_protect(&conn->lock, &conn->stream_tree, sizeof(conn->stream_tree));
lock_protect(&conn->lock, &conn->stream_write_first, sizeof(conn->stream_write_first));
lock_protect(&conn->lock, &conn->stream_write_last, sizeof(conn->stream_write_last));
lock_protect(&conn->lock, &conn->write_interest, sizeof(conn->write_interest));
lock_protect(&conn->lock, &conn->on_write_list, sizeof(conn->on_write_list));
lock_protect(&conn->lock, &conn->write_prev, sizeof(conn->write_prev));
lock_protect(&conn->lock, &conn->write_next, sizeof(conn->write_next));
lock_protect(&zones->lock, &zones->ztree, sizeof(zones->ztree));
lock_protect(&z->lock, &z->parent, sizeof(*z)-sizeof(rbnode_type));
lock_protect(&v->lock, &v->name, sizeof(*v)-sizeof(rbnode_type));
lock_protect(&v->lock, &v->vtree, sizeof(v->vtree));
lock_protect(&alloc->lock, alloc, sizeof(*alloc));
lock_protect(&e->entry.lock, &e->key.qname, sizeof(e->key.qname));
lock_protect(&e->entry.lock, &e->key.qname_len, sizeof(e->key.qname_len));
lock_protect(&e->entry.lock, &e->key.qtype, sizeof(e->key.qtype));
lock_protect(&e->entry.lock, &e->key.qclass, sizeof(e->key.qclass));
lock_protect(&e->entry.lock, &e->key.local_alias, sizeof(e->key.local_alias));
lock_protect(&e->entry.lock, &e->entry.hash, sizeof(e->entry.hash));
lock_protect(&e->entry.lock, &e->entry.key, sizeof(e->entry.key));
lock_protect(&e->entry.lock, &e->entry.data, sizeof(e->entry.data));
lock_protect(&e->entry.lock, e->key.qname, e->key.qname_len);
lock_protect(&cookie_secrets->lock, &cookie_secrets->cookie_count,
lock_protect(&cookie_secrets->lock, cookie_secrets->cookie_secrets,
lock_protect(&table->lock, table->array,
lock_protect(&array[i].lock, &array[i],
lock_protect(&table->lock, table, sizeof(*table));
lock_protect(&table->lock, table->array,
lock_protect(&tp->lock, tp, sizeof(*tp));
lock_protect(&tp->lock, tp->autr, sizeof(*tp->autr));
lock_protect(&a->lock, a, sizeof(*a));
lock_protect(&a->lock, a->autr, sizeof(*a->autr));
lock_protect(&neg->lock, neg, sizeof(*neg));
lock_protect(&val_env->bogus_lock, &val_env->num_rrset_bogus,