|
@@ -1121,6 +1121,7 @@ static int vmbus_probe_channels ( struct hv_hypervisor *hv,
|
1121
|
1121
|
const struct vmbus_message_header *header = &vmbus->message->header;
|
1122
|
1122
|
const struct vmbus_offer_channel *offer = &vmbus->message->offer;
|
1123
|
1123
|
const union uuid *type;
|
|
1124
|
+ union uuid instance;
|
1124
|
1125
|
struct vmbus_driver *driver;
|
1125
|
1126
|
struct vmbus_device *vmdev;
|
1126
|
1127
|
struct vmbus_device *tmp;
|
|
@@ -1165,8 +1166,11 @@ static int vmbus_probe_channels ( struct hv_hypervisor *hv,
|
1165
|
1166
|
rc = -ENOMEM;
|
1166
|
1167
|
goto err_alloc_vmdev;
|
1167
|
1168
|
}
|
|
1169
|
+ memcpy ( &instance, &offer->instance,
|
|
1170
|
+ sizeof ( instance ) );
|
|
1171
|
+ uuid_mangle ( &instance );
|
1168
|
1172
|
snprintf ( vmdev->dev.name, sizeof ( vmdev->dev.name ),
|
1169
|
|
- "vmbus:%02x", channel );
|
|
1173
|
+ "{%s}", uuid_ntoa ( &instance ) );
|
1170
|
1174
|
vmdev->dev.desc.bus_type = BUS_TYPE_HV;
|
1171
|
1175
|
INIT_LIST_HEAD ( &vmdev->dev.children );
|
1172
|
1176
|
list_add_tail ( &vmdev->dev.siblings,
|