Lines Matching refs:newchannel
495 struct vmbus_channel *newchannel = in vmbus_add_channel_work() local
497 struct vmbus_channel *primary_channel = newchannel->primary_channel; in vmbus_add_channel_work()
505 newchannel->state = CHANNEL_OPEN_STATE; in vmbus_add_channel_work()
511 if (vmbus_add_channel_kobj(dev, newchannel)) in vmbus_add_channel_work()
515 primary_channel->sc_creation_callback(newchannel); in vmbus_add_channel_work()
517 newchannel->probe_done = true; in vmbus_add_channel_work()
524 newchannel->device_obj = vmbus_device_create( in vmbus_add_channel_work()
525 &newchannel->offermsg.offer.if_type, in vmbus_add_channel_work()
526 &newchannel->offermsg.offer.if_instance, in vmbus_add_channel_work()
527 newchannel); in vmbus_add_channel_work()
528 if (!newchannel->device_obj) in vmbus_add_channel_work()
531 newchannel->device_obj->device_id = newchannel->device_id; in vmbus_add_channel_work()
542 ret = vmbus_device_register(newchannel->device_obj); in vmbus_add_channel_work()
546 newchannel->offermsg.child_relid); in vmbus_add_channel_work()
550 newchannel->probe_done = true; in vmbus_add_channel_work()
560 newchannel->probe_done = true; in vmbus_add_channel_work()
563 list_del(&newchannel->listentry); in vmbus_add_channel_work()
565 list_del(&newchannel->sc_list); in vmbus_add_channel_work()
568 vmbus_channel_unmap_relid(newchannel); in vmbus_add_channel_work()
572 vmbus_release_relid(newchannel->offermsg.child_relid); in vmbus_add_channel_work()
574 free_channel(newchannel); in vmbus_add_channel_work()
581 static void vmbus_process_offer(struct vmbus_channel *newchannel) in vmbus_process_offer() argument
616 &newchannel->offermsg.offer.if_type) && in vmbus_process_offer()
618 &newchannel->offermsg.offer.if_instance)) { in vmbus_process_offer()
620 newchannel->primary_channel = channel; in vmbus_process_offer()
625 init_vp_index(newchannel); in vmbus_process_offer()
628 if (is_hvsock_channel(newchannel) || is_sub_channel(newchannel)) in vmbus_process_offer()
638 list_add_tail(&newchannel->listentry, in vmbus_process_offer()
644 if (newchannel->offermsg.offer.sub_channel_index == 0) { in vmbus_process_offer()
651 kfree(newchannel); in vmbus_process_offer()
658 list_add_tail(&newchannel->sc_list, &channel->sc_list); in vmbus_process_offer()
661 vmbus_channel_map_relid(newchannel); in vmbus_process_offer()
687 INIT_WORK(&newchannel->add_channel_work, vmbus_add_channel_work); in vmbus_process_offer()
690 queue_work(wq, &newchannel->add_channel_work); in vmbus_process_offer()
1009 struct vmbus_channel *oldchannel, *newchannel; in vmbus_onoffer() local
1096 newchannel = alloc_channel(); in vmbus_onoffer()
1097 if (!newchannel) { in vmbus_onoffer()
1104 vmbus_setup_channel_state(newchannel, offer); in vmbus_onoffer()
1106 vmbus_process_offer(newchannel); in vmbus_onoffer()