Messages in this thread | | | Date | Sat, 29 Jul 2006 16:45:28 +0200 | Subject | Re: via sata oops on init | From | Johannes Weiner <> |
| |
Hi,
On Fri, Jul 28, 2006 at 07:39:50PM -0400, Dave Jones wrote: > 2.6.18-rc2-git6 > > BUG: unable to handle kernel NULL pointer dereference at 00000000 > EIP is at make_class_name+0x27 > eax: 00000000 ebx: ffffffff ecx: ffffffff edx: 00000009 > esi: f8d16cc2 edi: 00000000 ebp: f7fa9d3c esp: f7fa9d2c > > Call Trace: > class_device_del+0xac > class_device_unregister > scsi_remove_host > ata_host_remove > ata_device_add
I think the problem lays in scsi/libata-core.c:5423 in torvalds/linux-2.6 v2.6.18-rc2-g6482132, stating:
[...] struct ata_host_set *host_set = kzalloc(...); [...]
Initialization of some structure members, but not ports(!)
for (...) { struct ata_port *ap;
ap = ata_host_add(ent, host_set, i); if (!ap) goto err_out; host_set->ports[i] = ap;
err_out: for (i = 0; i < count; i++) { ata_host_remove(host_set->ports[i], 1); [...]
ata_device_add fails, calls ata_host_remove with pointers to unitialized memory.
Hannes - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |