Lines Matching defs:channel
210 * Setup the vmbus event connection for channel interrupt
350 * relid2channel - Get the channel object given its
351 * child relative id (ie channel id)
365 * vmbus_on_event - Process a channel event notification
369 * 1. While reading the channel, we disable interrupts from host.
380 struct vmbus_channel *channel = (void *) data;
383 trace_vmbus_on_event(channel);
385 hv_debug_delay_test(channel, INTERRUPT_DELAY);
387 /* A channel once created is persistent even when
391 callback_fn = READ_ONCE(channel->onchannel_callback);
395 (*callback_fn)(channel->channel_callback_context);
397 if (channel->callback_mode != HV_CALL_BATCHED)
400 if (likely(hv_end_read(&channel->inbound) == 0))
403 hv_begin_read(&channel->inbound);
404 tasklet_schedule(&channel->callback_event);
477 void vmbus_set_event(struct vmbus_channel *channel)
479 u32 child_relid = channel->offermsg.child_relid;
481 if (!channel->is_dedicated_interrupt)
484 ++channel->sig_events;
488 hv_ghcb_hypercall(HVCALL_SIGNAL_EVENT, &channel->sig_event,
489 NULL, sizeof(channel->sig_event));
492 channel->sig_event, 0);
496 hv_do_fast_hypercall8(HVCALL_SIGNAL_EVENT, channel->sig_event);