|
@@ -53,7 +53,7 @@ struct pcifront_device {
|
|
|
};
|
|
|
|
|
|
struct pcifront_sd {
|
|
|
- int domain;
|
|
|
+ struct pci_sysdata sd;
|
|
|
struct pcifront_device *pdev;
|
|
|
};
|
|
|
|
|
@@ -67,7 +67,9 @@ static inline void pcifront_init_sd(struct pcifront_sd *sd,
|
|
|
unsigned int domain, unsigned int bus,
|
|
|
struct pcifront_device *pdev)
|
|
|
{
|
|
|
- sd->domain = domain;
|
|
|
+ /* Because we do not expose that information via XenBus. */
|
|
|
+ sd->sd.node = first_online_node;
|
|
|
+ sd->sd.domain = domain;
|
|
|
sd->pdev = pdev;
|
|
|
}
|
|
|
|
|
@@ -468,8 +470,8 @@ static int pcifront_scan_root(struct pcifront_device *pdev,
|
|
|
dev_info(&pdev->xdev->dev, "Creating PCI Frontend Bus %04x:%02x\n",
|
|
|
domain, bus);
|
|
|
|
|
|
- bus_entry = kmalloc(sizeof(*bus_entry), GFP_KERNEL);
|
|
|
- sd = kmalloc(sizeof(*sd), GFP_KERNEL);
|
|
|
+ bus_entry = kzalloc(sizeof(*bus_entry), GFP_KERNEL);
|
|
|
+ sd = kzalloc(sizeof(*sd), GFP_KERNEL);
|
|
|
if (!bus_entry || !sd) {
|
|
|
err = -ENOMEM;
|
|
|
goto err_out;
|