Ticket #1434 (closed bug: fixed)
device manager loads driver too often
| Reported by: | marcusoverhagen | Owned by: | axeld |
|---|---|---|---|
| Priority: | normal | Milestone: | R1/alpha1 |
| Component: | System/Kernel | Version: | R1 development |
| Cc: | Blocked By: | ||
| Platform: | All | Blocking: |
Description
[23:05] <dr_evil> hi _stippi_ [23:05] <_stippi_> hi dr_evil [23:06] <_stippi_> I hope you are making good progress now? [23:06] <_stippi_> :-) [23:06] <dr_evil> _stippi_ no, there is a strange bug in the device manager, concerning loading the driver [23:07] * hUMUNGUs has joined #haiku [23:07] <_stippi_> dr_evil: still? [23:08] <_stippi_> I thought it already loaded the driver. :-( [23:08] <dr_evil> yes, it is loaded 4 times for the same PCI device [23:08] <_stippi_> grrr [23:09] <_stippi_> but when I scaned the tickets today, I saw you already had some PCI manager tickets assigned to you... :-) [23:09] <dr_evil> the PCI manager is working perfectly well, at the R5 level :) [23:10] <dr_evil> let me show you something fyi [23:10] <cps1966> maybe it has multi functions [23:10] <CIA-22> marcusoverhagen * r22099 /haiku/trunk/src/add-ons/kernel/busses/scsi/ahci/ (ahci_controller.cpp ahci_controller.h ahci_sim.cpp): added a workaround to prevent loading the driver multiple times for the same device [23:11] <_stippi_> oh wait I'm in Haiku [23:11] <dr_evil> no, wait [23:11] <_stippi_> do you have a URL for the diff? I mean berlios? [23:12] <dr_evil> I wanted to show you something diffrent: http://overhagen.de/temp/ahci-serial.txt [23:12] <dr_evil> it starts with [23:12] <dr_evil> [35mahci:[0m controller found! vendor 0x8086, device 0x7111 [23:12] * stargater has joined #haiku [23:12] <stargater> hi [23:13] <dr_evil> the driver is loaded for the first time: [23:13] <dr_evil> [35mahci:[0m controller found! vendor 0x8086, device 0x7111 [23:13] * DeadYak has quit IRC ("using sirc version 2.211+KSIRC/1.3.12") [23:13] <dr_evil> [34mahci:[0m AHCIController::Init 0:7:1 vendor 8086, device 7111 [23:13] <dr_evil> and then unloaded [23:13] <dr_evil> [34mahci:[0m AHCIController::Uninit [23:13] <dr_evil> then it's loaded again: [23:13] <dr_evil> AHCIController::Init 0:7:1 vendor 8086, device 7111 [23:13] * PulkoMandy has quit IRC (Remote closed the connection) [23:14] <stargater> dr_evil: thats not so good ? [23:14] <dr_evil> but this time, the scsi stack doesn't try to scan devices!?! [23:14] <dr_evil> and later, we get this: [23:14] <dr_evil> [34mahci:[0m AHCIController::Init 0:7:1 vendor 8086, device 7111 [23:14] <dr_evil> AHCIController::Init ERROR: an instance for object 0:7:1 already exists [23:14] <dr_evil> init driver failed (node 0x90ac6100, busses/scsi/ahci/sim/v1): General system error [23:14] <dr_evil> init driver failed (node 0x90ac6180, bus_managers/scsi/bus/v1): General system error [23:14] <dr_evil> [34mahci:[0m ahci_sim_init_bus, userCookie 0x90ac8000 [23:14] <dr_evil> AHCIController::Init ERROR: getting PCI info failed! [23:14] <dr_evil> init driver failed (node 0x90ac6100, busses/scsi/ahci/sim/v1): General system error [23:14] <dr_evil> init driver failed (node 0x90ac6180, bus_managers/scsi/bus/v1): General system error [23:14] <dr_evil> init driver failed (node 0x90ac6200, bus_managers/scsi/bus/raw): General system error [23:15] <dr_evil> the driver wasn't unloaded, but gets loaded again, which failes because I added a workarond# [23:15] <dr_evil> then it's loaded again, which seems to fail because the PCI manager pointer is invalid [23:15] <_stippi_> I am afraid I can't help much [23:16] <_stippi_> I have absolutely no knowledge of the code, didn't even read any of it [23:16] <dr_evil> yes ok, I'll file a bug report :/
