aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKay Sievers <kay.sievers@vrfy.org>2008-12-30 10:25:56 -0500
committerRusty Russell <rusty@rustcorp.com.au>2008-12-29 17:55:56 -0500
commit99e0b6c8e3f30602383bcfe3f574537a02ee2bea (patch)
tree83adb7fe6cd869df901c448602872554ed7edbdf
parent13b1eb333beed018140be3d0b77bf34000125a34 (diff)
virtio: struct device - replace bus_id with dev_name(), dev_set_name()
This patch is part of a larger patch series which will remove the "char bus_id[20]" name string from struct device. The device name is managed in the kobject anyway, and without any size limitation, and just needlessly copied into "struct device". To set and read the device name dev_name(dev) and dev_set_name(dev) must be used. If your code uses static kobjects, which it shouldn't do, "const char *init_name" can be used to statically provide the name the registered device should have. At registration time, the init_name field is cleared, to enforce the use of dev_name(dev) to access the device name at a later time. We need to get rid of all occurrences of bus_id in the entire tree to be able to enable the new interface. Please apply this patch, and possibly convert any remaining remaining occurrences of bus_id. We want to submit a patch to -next, which will remove bus_id from "struct device", to find the remaining pieces to convert, and finally switch over to the new api, which will remove the 20 bytes array and does no longer have a size limitation. Acked-by: Greg Kroah-Hartman <gregkh@suse.de> Signed-off-by: Kay Sievers <kay.sievers@vrfy.org> Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
-rw-r--r--drivers/virtio/virtio.c2
-rw-r--r--drivers/virtio/virtio_pci.c4
2 files changed, 3 insertions, 3 deletions
diff --git a/drivers/virtio/virtio.c b/drivers/virtio/virtio.c
index 5b78fd0aff0a..018c070a357f 100644
--- a/drivers/virtio/virtio.c
+++ b/drivers/virtio/virtio.c
@@ -176,7 +176,7 @@ int register_virtio_device(struct virtio_device *dev)
176 176
177 /* Assign a unique device index and hence name. */ 177 /* Assign a unique device index and hence name. */
178 dev->index = dev_index++; 178 dev->index = dev_index++;
179 sprintf(dev->dev.bus_id, "virtio%u", dev->index); 179 dev_set_name(&dev->dev, "virtio%u", dev->index);
180 180
181 /* We always start by resetting the device, in case a previous 181 /* We always start by resetting the device, in case a previous
182 * driver messed it up. This also tests that code path a little. */ 182 * driver messed it up. This also tests that code path a little. */
diff --git a/drivers/virtio/virtio_pci.c b/drivers/virtio/virtio_pci.c
index 7c385af071a6..e37d686edfe0 100644
--- a/drivers/virtio/virtio_pci.c
+++ b/drivers/virtio/virtio_pci.c
@@ -75,7 +75,7 @@ MODULE_DEVICE_TABLE(pci, virtio_pci_id_table);
75 * would make more sense for virtio to not insist on having it's own device. */ 75 * would make more sense for virtio to not insist on having it's own device. */
76static struct device virtio_pci_root = { 76static struct device virtio_pci_root = {
77 .parent = NULL, 77 .parent = NULL,
78 .bus_id = "virtio-pci", 78 .init_name = "virtio-pci",
79}; 79};
80 80
81/* Convert a generic virtio device to our structure */ 81/* Convert a generic virtio device to our structure */
@@ -359,7 +359,7 @@ static int __devinit virtio_pci_probe(struct pci_dev *pci_dev,
359 359
360 /* register a handler for the queue with the PCI device's interrupt */ 360 /* register a handler for the queue with the PCI device's interrupt */
361 err = request_irq(vp_dev->pci_dev->irq, vp_interrupt, IRQF_SHARED, 361 err = request_irq(vp_dev->pci_dev->irq, vp_interrupt, IRQF_SHARED,
362 vp_dev->vdev.dev.bus_id, vp_dev); 362 dev_name(&vp_dev->vdev.dev), vp_dev);
363 if (err) 363 if (err)
364 goto out_set_drvdata; 364 goto out_set_drvdata;
365 365