Now, get rid of struct hv_bus. We will no longer be embedding
struct bus_type.

Signed-off-by: K. Y. Srinivasan <k...@microsoft.com>
Signed-off-by: Haiyang Zhang <haiya...@microsoft.com>
Signed-off-by: Abhishek Kane <v-abk...@microsoft.com>
Signed-off-by: Hank Janssen <hjans...@microsoft.com>
---
 drivers/staging/hv/vmbus_drv.c |   33 +++++++++++++--------------------
 1 files changed, 13 insertions(+), 20 deletions(-)

diff --git a/drivers/staging/hv/vmbus_drv.c b/drivers/staging/hv/vmbus_drv.c
index 6cc01c2..872752a 100644
--- a/drivers/staging/hv/vmbus_drv.c
+++ b/drivers/staging/hv/vmbus_drv.c
@@ -45,11 +45,6 @@ static struct pci_dev *hv_pci_dev;
 static struct tasklet_struct msg_dpc;
 static struct tasklet_struct event_dpc;
 
-/* Main vmbus driver data structure */
-struct hv_bus {
-       struct bus_type bus;
-};
-
 unsigned int vmbus_loglevel = (ALL_MODULES << 16 | INFO_LVL);
 EXPORT_SYMBOL(vmbus_loglevel);
        /* (ALL_MODULES << 16 | DEBUG_LVL_ENTEREXIT); */
@@ -403,14 +398,14 @@ static void vmbus_device_release(struct device *device)
 }
 
 /* The one and only one */
-static struct hv_bus  hv_bus = {
-       .bus.name =             "vmbus",
-       .bus.match =            vmbus_match,
-       .bus.shutdown =         vmbus_shutdown,
-       .bus.remove =           vmbus_remove,
-       .bus.probe =            vmbus_probe,
-       .bus.uevent =           vmbus_uevent,
-       .bus.dev_attrs =        vmbus_device_attrs,
+static struct bus_type  hv_bus = {
+       .name =         "vmbus",
+       .match =                vmbus_match,
+       .shutdown =             vmbus_shutdown,
+       .remove =               vmbus_remove,
+       .probe =                vmbus_probe,
+       .uevent =               vmbus_uevent,
+       .dev_attrs =    vmbus_device_attrs,
 };
 
 static const char *driver_name = "hyperv";
@@ -548,14 +543,12 @@ static int vmbus_bus_init(struct pci_dev *pdev)
                goto cleanup;
        }
 
-       hv_bus.bus.name = driver_name;
-
        /* Initialize the bus context */
        tasklet_init(&msg_dpc, vmbus_on_msg_dpc, 0);
        tasklet_init(&event_dpc, vmbus_on_event, 0);
 
        /* Now, register the bus  with LDM */
-       ret = bus_register(&hv_bus.bus);
+       ret = bus_register(&hv_bus);
        if (ret) {
                ret = -1;
                goto cleanup;
@@ -570,7 +563,7 @@ static int vmbus_bus_init(struct pci_dev *pdev)
                pr_err("Unable to request IRQ %d\n",
                           pdev->irq);
 
-               bus_unregister(&hv_bus.bus);
+               bus_unregister(&hv_bus);
 
                ret = -1;
                goto cleanup;
@@ -586,7 +579,7 @@ static int vmbus_bus_init(struct pci_dev *pdev)
        ret = vmbus_connect();
        if (ret) {
                free_irq(pdev->irq, pdev);
-               bus_unregister(&hv_bus.bus);
+               bus_unregister(&hv_bus);
                goto cleanup;
        }
 
@@ -616,7 +609,7 @@ int vmbus_child_driver_register(struct device_driver *drv)
        pr_info("child driver registering - name %s\n", drv->name);
 
        /* The child driver on this vmbus */
-       drv->bus = &hv_bus.bus;
+       drv->bus = &hv_bus;
 
        ret = driver_register(drv);
 
@@ -686,7 +679,7 @@ int vmbus_child_device_register(struct hv_device 
*child_device_obj)
                     atomic_inc_return(&device_num));
 
        /* The new device belongs to this bus */
-       child_device_obj->device.bus = &hv_bus.bus; /* device->dev.bus; */
+       child_device_obj->device.bus = &hv_bus; /* device->dev.bus; */
        child_device_obj->device.parent = &hv_pci_dev->dev;
        child_device_obj->device.release = vmbus_device_release;
 
-- 
1.7.4.1

_______________________________________________
Virtualization mailing list
Virtualization@lists.linux-foundation.org
https://lists.linux-foundation.org/mailman/listinfo/virtualization

Reply via email to