diff options
| author | Linus Torvalds <torvalds@g5.osdl.org> | 2006-10-27 18:36:21 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-10-27 18:36:21 -0400 |
| commit | 858cbcdd4f7a235f609249b9ca681b7ec5d786a3 (patch) | |
| tree | ae91051bfcd25d4d1aa8c720d11305115c205114 /arch/sparc | |
| parent | fe31eb679752369240fc8880858a5ed974554eb2 (diff) | |
| parent | f5ef9d11fd255b30b455d18f8d721bc44cd1296b (diff) | |
Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6
* master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6:
[SPARC]: Fix bus_id[] string overflow.
Diffstat (limited to 'arch/sparc')
| -rw-r--r-- | arch/sparc/kernel/ebus.c | 8 | ||||
| -rw-r--r-- | arch/sparc/kernel/of_device.c | 2 |
2 files changed, 5 insertions, 5 deletions
diff --git a/arch/sparc/kernel/ebus.c b/arch/sparc/kernel/ebus.c index 75ac24d229b1..ba58c3a061fd 100644 --- a/arch/sparc/kernel/ebus.c +++ b/arch/sparc/kernel/ebus.c | |||
| @@ -237,12 +237,12 @@ void __init fill_ebus_device(struct device_node *dp, struct linux_ebus_device *d | |||
| 237 | dev->ofdev.node = dp; | 237 | dev->ofdev.node = dp; |
| 238 | dev->ofdev.dev.parent = &dev->bus->ofdev.dev; | 238 | dev->ofdev.dev.parent = &dev->bus->ofdev.dev; |
| 239 | dev->ofdev.dev.bus = &ebus_bus_type; | 239 | dev->ofdev.dev.bus = &ebus_bus_type; |
| 240 | strcpy(dev->ofdev.dev.bus_id, dp->path_component_name); | 240 | sprintf(dev->ofdev.dev.bus_id, "ebus[%08x]", dp->node); |
| 241 | 241 | ||
| 242 | /* Register with core */ | 242 | /* Register with core */ |
| 243 | if (of_device_register(&dev->ofdev) != 0) | 243 | if (of_device_register(&dev->ofdev) != 0) |
| 244 | printk(KERN_DEBUG "ebus: device registration error for %s!\n", | 244 | printk(KERN_DEBUG "ebus: device registration error for %s!\n", |
| 245 | dev->ofdev.dev.bus_id); | 245 | dp->path_component_name); |
| 246 | 246 | ||
| 247 | if ((dp = dp->child) != NULL) { | 247 | if ((dp = dp->child) != NULL) { |
| 248 | dev->children = (struct linux_ebus_child *) | 248 | dev->children = (struct linux_ebus_child *) |
| @@ -332,12 +332,12 @@ void __init ebus_init(void) | |||
| 332 | ebus->ofdev.node = dp; | 332 | ebus->ofdev.node = dp; |
| 333 | ebus->ofdev.dev.parent = &pdev->dev; | 333 | ebus->ofdev.dev.parent = &pdev->dev; |
| 334 | ebus->ofdev.dev.bus = &ebus_bus_type; | 334 | ebus->ofdev.dev.bus = &ebus_bus_type; |
| 335 | strcpy(ebus->ofdev.dev.bus_id, dp->path_component_name); | 335 | sprintf(ebus->ofdev.dev.bus_id, "ebus%d", num_ebus); |
| 336 | 336 | ||
| 337 | /* Register with core */ | 337 | /* Register with core */ |
| 338 | if (of_device_register(&ebus->ofdev) != 0) | 338 | if (of_device_register(&ebus->ofdev) != 0) |
| 339 | printk(KERN_DEBUG "ebus: device registration error for %s!\n", | 339 | printk(KERN_DEBUG "ebus: device registration error for %s!\n", |
| 340 | ebus->ofdev.dev.bus_id); | 340 | dp->path_component_name); |
| 341 | 341 | ||
| 342 | 342 | ||
| 343 | nd = dp->child; | 343 | nd = dp->child; |
diff --git a/arch/sparc/kernel/of_device.c b/arch/sparc/kernel/of_device.c index 74bef2a2d37f..46200c43ffb1 100644 --- a/arch/sparc/kernel/of_device.c +++ b/arch/sparc/kernel/of_device.c | |||
| @@ -651,7 +651,7 @@ build_resources: | |||
| 651 | if (!parent) | 651 | if (!parent) |
| 652 | strcpy(op->dev.bus_id, "root"); | 652 | strcpy(op->dev.bus_id, "root"); |
| 653 | else | 653 | else |
| 654 | strcpy(op->dev.bus_id, dp->path_component_name); | 654 | sprintf(op->dev.bus_id, "%08x", dp->node); |
| 655 | 655 | ||
| 656 | if (of_device_register(op)) { | 656 | if (of_device_register(op)) { |
| 657 | printk("%s: Could not register of device.\n", | 657 | printk("%s: Could not register of device.\n", |
