Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 858cbcdd authored by Linus Torvalds's avatar Linus Torvalds
Browse files

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.
parents fe31eb67 f5ef9d11
Loading
Loading
Loading
Loading
+4 −4
Original line number Original line Diff line number Diff line
@@ -237,12 +237,12 @@ void __init fill_ebus_device(struct device_node *dp, struct linux_ebus_device *d
	dev->ofdev.node = dp;
	dev->ofdev.node = dp;
	dev->ofdev.dev.parent = &dev->bus->ofdev.dev;
	dev->ofdev.dev.parent = &dev->bus->ofdev.dev;
	dev->ofdev.dev.bus = &ebus_bus_type;
	dev->ofdev.dev.bus = &ebus_bus_type;
	strcpy(dev->ofdev.dev.bus_id, dp->path_component_name);
	sprintf(dev->ofdev.dev.bus_id, "ebus[%08x]", dp->node);


	/* Register with core */
	/* Register with core */
	if (of_device_register(&dev->ofdev) != 0)
	if (of_device_register(&dev->ofdev) != 0)
		printk(KERN_DEBUG "ebus: device registration error for %s!\n",
		printk(KERN_DEBUG "ebus: device registration error for %s!\n",
		       dev->ofdev.dev.bus_id);
		       dp->path_component_name);


	if ((dp = dp->child) != NULL) {
	if ((dp = dp->child) != NULL) {
		dev->children = (struct linux_ebus_child *)
		dev->children = (struct linux_ebus_child *)
@@ -332,12 +332,12 @@ void __init ebus_init(void)
		ebus->ofdev.node = dp;
		ebus->ofdev.node = dp;
		ebus->ofdev.dev.parent = &pdev->dev;
		ebus->ofdev.dev.parent = &pdev->dev;
		ebus->ofdev.dev.bus = &ebus_bus_type;
		ebus->ofdev.dev.bus = &ebus_bus_type;
		strcpy(ebus->ofdev.dev.bus_id, dp->path_component_name);
		sprintf(ebus->ofdev.dev.bus_id, "ebus%d", num_ebus);


		/* Register with core */
		/* Register with core */
		if (of_device_register(&ebus->ofdev) != 0)
		if (of_device_register(&ebus->ofdev) != 0)
			printk(KERN_DEBUG "ebus: device registration error for %s!\n",
			printk(KERN_DEBUG "ebus: device registration error for %s!\n",
			       ebus->ofdev.dev.bus_id);
			       dp->path_component_name);




		nd = dp->child;
		nd = dp->child;
+1 −1
Original line number Original line Diff line number Diff line
@@ -651,7 +651,7 @@ static struct of_device * __init scan_one_device(struct device_node *dp,
	if (!parent)
	if (!parent)
		strcpy(op->dev.bus_id, "root");
		strcpy(op->dev.bus_id, "root");
	else
	else
		strcpy(op->dev.bus_id, dp->path_component_name);
		sprintf(op->dev.bus_id, "%08x", dp->node);


	if (of_device_register(op)) {
	if (of_device_register(op)) {
		printk("%s: Could not register of device.\n",
		printk("%s: Could not register of device.\n",
+4 −4
Original line number Original line Diff line number Diff line
@@ -389,12 +389,12 @@ static void __init fill_ebus_device(struct device_node *dp, struct linux_ebus_de
	dev->ofdev.node = dp;
	dev->ofdev.node = dp;
	dev->ofdev.dev.parent = &dev->bus->ofdev.dev;
	dev->ofdev.dev.parent = &dev->bus->ofdev.dev;
	dev->ofdev.dev.bus = &ebus_bus_type;
	dev->ofdev.dev.bus = &ebus_bus_type;
	strcpy(dev->ofdev.dev.bus_id, dp->path_component_name);
	sprintf(dev->ofdev.dev.bus_id, "ebus[%08x]", dp->node);


	/* Register with core */
	/* Register with core */
	if (of_device_register(&dev->ofdev) != 0)
	if (of_device_register(&dev->ofdev) != 0)
		printk(KERN_DEBUG "ebus: device registration error for %s!\n",
		printk(KERN_DEBUG "ebus: device registration error for %s!\n",
		       dev->ofdev.dev.bus_id);
		       dp->path_component_name);


	dp = dp->child;
	dp = dp->child;
	if (dp) {
	if (dp) {
@@ -494,12 +494,12 @@ void __init ebus_init(void)
		ebus->ofdev.node = dp;
		ebus->ofdev.node = dp;
		ebus->ofdev.dev.parent = &pdev->dev;
		ebus->ofdev.dev.parent = &pdev->dev;
		ebus->ofdev.dev.bus = &ebus_bus_type;
		ebus->ofdev.dev.bus = &ebus_bus_type;
		strcpy(ebus->ofdev.dev.bus_id, dp->path_component_name);
		sprintf(ebus->ofdev.dev.bus_id, "ebus%d", num_ebus);


		/* Register with core */
		/* Register with core */
		if (of_device_register(&ebus->ofdev) != 0)
		if (of_device_register(&ebus->ofdev) != 0)
			printk(KERN_DEBUG "ebus: device registration error for %s!\n",
			printk(KERN_DEBUG "ebus: device registration error for %s!\n",
			       ebus->ofdev.dev.bus_id);
			       dp->path_component_name);




		child = dp->child;
		child = dp->child;
+4 −4
Original line number Original line Diff line number Diff line
@@ -115,12 +115,12 @@ static void __init isa_fill_devices(struct sparc_isa_bridge *isa_br)
		isa_dev->ofdev.node = dp;
		isa_dev->ofdev.node = dp;
		isa_dev->ofdev.dev.parent = &isa_br->ofdev.dev;
		isa_dev->ofdev.dev.parent = &isa_br->ofdev.dev;
		isa_dev->ofdev.dev.bus = &isa_bus_type;
		isa_dev->ofdev.dev.bus = &isa_bus_type;
		strcpy(isa_dev->ofdev.dev.bus_id, dp->path_component_name);
		sprintf(isa_dev->ofdev.dev.bus_id, "isa[%08x]", dp->node);


		/* Register with core */
		/* Register with core */
		if (of_device_register(&isa_dev->ofdev) != 0) {
		if (of_device_register(&isa_dev->ofdev) != 0) {
			printk(KERN_DEBUG "isa: device registration error for %s!\n",
			printk(KERN_DEBUG "isa: device registration error for %s!\n",
			       isa_dev->ofdev.dev.bus_id);
			       dp->path_component_name);
			kfree(isa_dev);
			kfree(isa_dev);
			goto next_sibling;
			goto next_sibling;
		}
		}
@@ -191,12 +191,12 @@ void __init isa_init(void)
		isa_br->ofdev.node = dp;
		isa_br->ofdev.node = dp;
		isa_br->ofdev.dev.parent = &pdev->dev;
		isa_br->ofdev.dev.parent = &pdev->dev;
		isa_br->ofdev.dev.bus = &isa_bus_type;
		isa_br->ofdev.dev.bus = &isa_bus_type;
		strcpy(isa_br->ofdev.dev.bus_id, dp->path_component_name);
		sprintf(isa_br->ofdev.dev.bus_id, "isa%d", index);


		/* Register with core */
		/* Register with core */
		if (of_device_register(&isa_br->ofdev) != 0) {
		if (of_device_register(&isa_br->ofdev) != 0) {
			printk(KERN_DEBUG "isa: device registration error for %s!\n",
			printk(KERN_DEBUG "isa: device registration error for %s!\n",
			       isa_br->ofdev.dev.bus_id);
			       dp->path_component_name);
			kfree(isa_br);
			kfree(isa_br);
			return;
			return;
		}
		}
+1 −1
Original line number Original line Diff line number Diff line
@@ -861,7 +861,7 @@ static struct of_device * __init scan_one_device(struct device_node *dp,
	if (!parent)
	if (!parent)
		strcpy(op->dev.bus_id, "root");
		strcpy(op->dev.bus_id, "root");
	else
	else
		sprintf(op->dev.bus_id, "%s@%08x", dp->name, dp->node);
		sprintf(op->dev.bus_id, "%08x", dp->node);


	if (of_device_register(op)) {
	if (of_device_register(op)) {
		printk("%s: Could not register of device.\n",
		printk("%s: Could not register of device.\n",
Loading