Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F174478605
D7103.id18406.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
2 KB
Referenced Files
None
Subscribers
None
D7103.id18406.diff
View Options
Index: head/sys/dev/hyperv/vmbus/hv_channel_mgmt.c
===================================================================
--- head/sys/dev/hyperv/vmbus/hv_channel_mgmt.c
+++ head/sys/dev/hyperv/vmbus/hv_channel_mgmt.c
@@ -40,14 +40,12 @@
typedef void (*vmbus_chanmsg_proc_t)
(struct vmbus_softc *, const struct vmbus_message *);
-static void vmbus_channel_on_offer_internal(struct vmbus_softc *,
- const struct vmbus_chanmsg_choffer *);
static void vmbus_chan_detach_task(void *, int);
-static void vmbus_channel_on_offer(struct vmbus_softc *,
- const struct vmbus_message *);
static void vmbus_channel_on_offers_delivered(struct vmbus_softc *,
const struct vmbus_message *);
+static void vmbus_chan_msgproc_choffer(struct vmbus_softc *,
+ const struct vmbus_message *);
static void vmbus_chan_msgproc_chrescind(struct vmbus_softc *,
const struct vmbus_message *);
@@ -62,7 +60,7 @@
static const vmbus_chanmsg_proc_t
vmbus_chanmsg_process[VMBUS_CHANMSG_TYPE_MAX] = {
- VMBUS_CHANMSG_PROC(CHOFFER, vmbus_channel_on_offer),
+ VMBUS_CHANMSG_PROC(CHOFFER, vmbus_chan_msgproc_choffer),
VMBUS_CHANMSG_PROC(CHRESCIND, vmbus_chan_msgproc_chrescind),
VMBUS_CHANMSG_PROC(CHOFFER_DONE,vmbus_channel_on_offers_delivered),
@@ -259,28 +257,16 @@
vmbus_channel_cpu_set(chan, 0);
}
-/**
- * @brief Handler for channel offers from Hyper-V/Azure
- *
- * Handler for channel offers from vmbus in parent partition.
- */
-static void
-vmbus_channel_on_offer(struct vmbus_softc *sc, const struct vmbus_message *msg)
-{
- /* New channel is offered by vmbus */
- vmbus_scan_newchan(sc);
-
- vmbus_channel_on_offer_internal(sc,
- (const struct vmbus_chanmsg_choffer *)msg->msg_data);
-}
-
static void
-vmbus_channel_on_offer_internal(struct vmbus_softc *sc,
- const struct vmbus_chanmsg_choffer *offer)
+vmbus_chan_msgproc_choffer(struct vmbus_softc *sc,
+ const struct vmbus_message *msg)
{
+ const struct vmbus_chanmsg_choffer *offer;
hv_vmbus_channel* new_channel;
int error;
+ offer = (const struct vmbus_chanmsg_choffer *)msg->msg_data;
+
/*
* Allocate the channel object and save this offer
*/
Index: head/sys/dev/hyperv/vmbus/vmbus.c
===================================================================
--- head/sys/dev/hyperv/vmbus/vmbus.c
+++ head/sys/dev/hyperv/vmbus/vmbus.c
@@ -994,6 +994,9 @@
device_t parent = sc->vmbus_dev;
int error = 0;
+ /* New channel has been offered */
+ vmbus_scan_newchan(sc);
+
chan->ch_dev = device_add_child(parent, NULL, -1);
if (chan->ch_dev == NULL) {
device_printf(parent, "device_add_child for chan%u failed\n",
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Sun, Oct 4, 1:42 PM (6 h, 20 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
40192207
Default Alt Text
D7103.id18406.diff (2 KB)
Attached To
Mode
D7103: hyperv/vmbus: Move new channel scan notification to device register
Attached
Detach File
Event Timeline
Log In to Comment