Re: [kvm-devel] [PATCH 3/3] virtio PCI device
From: Arnd Bergmann
Date: Thu Nov 08 2007 - 12:48:31 EST
On Thursday 08 November 2007, Anthony Liguori wrote:
> +/* A PCI device has it's own struct device and so does a virtio device so
> + * we create a place for the virtio devices to show up in sysfs. I think it
> + * would make more sense for virtio to not insist on having it's own device. */
> +static struct device virtio_pci_root = {
> + .parent = NULL,
> + .bus_id = "virtio-pci",
> +};
> +
> +/* Unique numbering for devices under the kvm root */
> +static unsigned int dev_index;
> +
...
> +/* the PCI probing function */
> +static int __devinit virtio_pci_probe(struct pci_dev *pci_dev,
> + const struct pci_device_id *id)
> +{
> + struct virtio_pci_device *vp_dev;
> + int err;
> +
> + /* allocate our structure and fill it out */
> + vp_dev = kzalloc(sizeof(struct virtio_pci_device), GFP_KERNEL);
> + if (vp_dev == NULL)
> + return -ENOMEM;
> +
> + vp_dev->pci_dev = pci_dev;
> + vp_dev->vdev.dev.parent = &virtio_pci_root;
If you use
vp_dev->vdev.dev.parent = &pci_dev->dev;
Then there is no need for the special kvm root device, and the actual
virtio device shows up in a more logical place, under where it is
really (virtually) attached.
Arnd <><
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/