Lines Matching refs:vmbus_connection

39 struct vmbus_connection vmbus_connection = {  variable
43 EXPORT_SYMBOL_GPL(vmbus_connection);
104 vmbus_connection.msg_conn_id = VMBUS_MESSAGE_CONNECTION_ID_4; in vmbus_negotiate_version()
106 msg->interrupt_page = virt_to_phys(vmbus_connection.int_page); in vmbus_negotiate_version()
107 vmbus_connection.msg_conn_id = VMBUS_MESSAGE_CONNECTION_ID; in vmbus_negotiate_version()
110 msg->monitor_page1 = virt_to_phys(vmbus_connection.monitor_pages[0]); in vmbus_negotiate_version()
111 msg->monitor_page2 = virt_to_phys(vmbus_connection.monitor_pages[1]); in vmbus_negotiate_version()
124 vmbus_connection.connect_cpu = cur_cpu; in vmbus_negotiate_version()
128 vmbus_connection.connect_cpu = 0; in vmbus_negotiate_version()
135 spin_lock_irqsave(&vmbus_connection.channelmsg_lock, flags); in vmbus_negotiate_version()
137 &vmbus_connection.chn_msg_list); in vmbus_negotiate_version()
139 spin_unlock_irqrestore(&vmbus_connection.channelmsg_lock, flags); in vmbus_negotiate_version()
148 spin_lock_irqsave(&vmbus_connection.channelmsg_lock, flags); in vmbus_negotiate_version()
150 spin_unlock_irqrestore(&vmbus_connection.channelmsg_lock, in vmbus_negotiate_version()
158 spin_lock_irqsave(&vmbus_connection.channelmsg_lock, flags); in vmbus_negotiate_version()
160 spin_unlock_irqrestore(&vmbus_connection.channelmsg_lock, flags); in vmbus_negotiate_version()
164 vmbus_connection.conn_state = CONNECTED; in vmbus_negotiate_version()
167 vmbus_connection.msg_conn_id = in vmbus_negotiate_version()
186 vmbus_connection.conn_state = CONNECTING; in vmbus_connect()
187 vmbus_connection.work_queue = create_workqueue("hv_vmbus_con"); in vmbus_connect()
188 if (!vmbus_connection.work_queue) { in vmbus_connect()
193 INIT_LIST_HEAD(&vmbus_connection.chn_msg_list); in vmbus_connect()
194 spin_lock_init(&vmbus_connection.channelmsg_lock); in vmbus_connect()
196 INIT_LIST_HEAD(&vmbus_connection.chn_list); in vmbus_connect()
197 mutex_init(&vmbus_connection.channel_mutex); in vmbus_connect()
203 vmbus_connection.int_page = in vmbus_connect()
205 if (vmbus_connection.int_page == NULL) { in vmbus_connect()
210 vmbus_connection.recv_int_page = vmbus_connection.int_page; in vmbus_connect()
211 vmbus_connection.send_int_page = in vmbus_connect()
212 (void *)((unsigned long)vmbus_connection.int_page + in vmbus_connect()
219 vmbus_connection.monitor_pages[0] = (void *)__get_free_pages((GFP_KERNEL|__GFP_ZERO), 0); in vmbus_connect()
220 vmbus_connection.monitor_pages[1] = (void *)__get_free_pages((GFP_KERNEL|__GFP_ZERO), 0); in vmbus_connect()
221 if ((vmbus_connection.monitor_pages[0] == NULL) || in vmbus_connect()
222 (vmbus_connection.monitor_pages[1] == NULL)) { in vmbus_connect()
249 if (vmbus_connection.conn_state == CONNECTED) in vmbus_connect()
268 vmbus_connection.conn_state = DISCONNECTED; in vmbus_connect()
283 if (vmbus_connection.work_queue) { in vmbus_disconnect()
284 drain_workqueue(vmbus_connection.work_queue); in vmbus_disconnect()
285 destroy_workqueue(vmbus_connection.work_queue); in vmbus_disconnect()
288 if (vmbus_connection.int_page) { in vmbus_disconnect()
289 free_pages((unsigned long)vmbus_connection.int_page, 0); in vmbus_disconnect()
290 vmbus_connection.int_page = NULL; in vmbus_disconnect()
293 free_pages((unsigned long)vmbus_connection.monitor_pages[0], 0); in vmbus_disconnect()
294 free_pages((unsigned long)vmbus_connection.monitor_pages[1], 0); in vmbus_disconnect()
295 vmbus_connection.monitor_pages[0] = NULL; in vmbus_disconnect()
296 vmbus_connection.monitor_pages[1] = NULL; in vmbus_disconnect()
310 BUG_ON(!mutex_is_locked(&vmbus_connection.channel_mutex)); in relid2channel()
312 list_for_each_entry(channel, &vmbus_connection.chn_list, listentry) { in relid2channel()
393 conn_id.u.id = vmbus_connection.msg_conn_id; in vmbus_post_msg()