#4390 closed bug (fixed)
boot fails after 4th icon is lit using default ata stack
Reported by: | rudolfc | Owned by: | marcusoverhagen |
---|---|---|---|
Priority: | normal | Milestone: | R1/alpha2 |
Component: | Drivers/Disk/ATA | Version: | R1/pre-alpha1 |
Keywords: | Cc: | ||
Blocked By: | Blocking: | #4535 | |
Platform: | All |
Description
The boot stops after lighting the fourth icon.
apparantly this is the problem: "ata 0 error: timeout waiting for interrupt"
Booting fails with default enabled DMA, but succeeds with disabled DMA.
tested on build hrev32839.
Attachments (8)
Change History (35)
comment:1 by , 15 years ago
Owner: | changed from | to
---|
by , 15 years ago
Attachment: | werk_boot_fout_dma.TXT added |
---|
comment:2 by , 15 years ago
Component: | - General → Drivers/Disk |
---|
comment:3 by , 15 years ago
Attached are two syslogs, the first of a default but failing boot. The second is of a disabled DMA boot (failsafe boot option).
Both boots were done from the same USB stick in the same USB port. Hardware wasn't changed between boots.
Bye!
Rudolf.
comment:4 by , 15 years ago
Milestone: | R1 → R1/alpha1 |
---|
please test hrev32878 from trunk with DMA enabled and attach syslog. thanks.
comment:5 by , 15 years ago
Today I tested hrev32884. I only have a disabled DMA log on the stick, so I just posted that.
With DMA the boot still fails.
Would this suffice? (I only have access to this system at certain moments..)
Bye!
Rudolf.
comment:6 by , 15 years ago
Anyhow, just got a chance to try booting again on this system. Just uploaded the syslog from a failed DMA enabled hrev32884 boot.
Note: I entered the failsafe options menu, but did not modify any setting.
Bye!
Rudolf.
comment:7 by , 15 years ago
Status: | new → assigned |
---|
Please try hrev32921 in DMA mode and attach another syslog.
How many SATA/PATA ports do you have?
Thanks.
for reference
PCI: [dom 0, bus 0] bus 0, device 31, function 2: vendor 8086, device 24d1, revision 02 PCI: class_base 01, class_function 01, class_api 8a PCI: vendor 8086: Intel Corporation PCI: device 24d1: 82801EB (ICH5) SATA Controller PCI: info: Mass storage controller (IDE interface) PCI: line_size 00, latency 00, header_type 00, BIST 00 PCI: ROM base host 00000000, pci 00000000, size 00000000 PCI: cardbus_CIS 00000000, subsystem_id 24d1, subsystem_vendor_id 8086 PCI: interrupt_line 0b, interrupt_pin 01, min_grant 00, max_latency 00 PCI: base reg 0: host 00000000, pci 00000000, size 00000010, flags 09 PCI: base reg 1: host 00000000, pci 00000000, size 00000010, flags 0d PCI: base reg 2: host 00000000, pci 00000000, size 00000010, flags 09 PCI: base reg 3: host 00000000, pci 00000000, size 00000010, flags 0d PCI: base reg 4: host 0000f000, pci 0000f000, size 00000010, flags 01 PCI: base reg 5: host 00000000, pci 00000000, size 00000000, flags 00 PCI-ATA: Controller in legacy mode: cmd 0x1f0, ctrl 0x3f6, irq 14 PCI-ATA: bus master base 0xf000 PCI-ATA: Controller in legacy mode: cmd 0x170, ctrl 0x376, irq 15 http://www.intel.com/assets/pdf/datasheet/252516.pdf Page 435, 437, 441, 442
comment:8 by , 15 years ago
Hi again,
Tested with the lasest ATA adapter. Situation seems to remain the same. This time I walked away from the system trying to boot, to have a coffee break. The system boots fully up in the end, it just takes about 20 minutes or so. I expect the previous version would have done the same if I stayed away long enough.
Anyhow: situation unchanged unfortunately.
Bye!
Rudolf.
comment:9 by , 15 years ago
Hi again.
Just opened up the PC case: It's a ShuttleX PC with a mainboard called 'FB65V1.0' It has two SATA connectors, and two PATA connectors.
It seems to have a AGP slot and a PCI slot.
Bye!
Rudolf.
comment:10 by , 15 years ago
And: SATA1 has a HD, PATA2 has a DVDROM (samsung SD-616). The other two connectors are unused. The system has one floppy drive.
Bye!
Rudolf.
comment:11 by , 15 years ago
OK, HD is ST380013AS. BIOS says SATA is in auto mode. (autoselect old/new style setup I take it). Windows running is SP1, so old style boot is required by windows.
Bye!
Rudolf.
comment:13 by , 15 years ago
I can boot again without disabling IDE DMA from the boot loader (from a SATA drive), but when I insert a CD into the IDE connected drive, the system freezes up. When I press the eject button on the drive, the system reboots. When booting from the CD, the system also seems to freeze up at the forth icon again (but I have not waited for very long), when pressing the eject button the computer reboots.
by , 15 years ago
Attachment: | werk_boot_dma_9.TXT added |
---|
hrev32978 ata manager and generic driver with dma - fail
comment:14 by , 15 years ago
Hi again,
I still can't boot with DMA on hrev32978 from trunk. Without is OK.
BTW: the SATA HD is detected bt the bios as being master, the PATA DVD ROM is detected as master as well.
Rudolf.
comment:15 by , 15 years ago
Hi Rudolf,
can you join the IRC channel for a debugging session? New syslog shows that DMA is working, but interrupts are lost.
comment:16 by , 15 years ago
Hi there Marcus,
The system in test is my computer over at the company I work for. If you need this debug session with me running on that computer, we need to plan it as I need to go over at the office in an evening (could be done though).
Thursday evening might be an option, say around 19:30u. Otherwise it's going to be next week some evening, the coming weekend I have no time to do it I'm afraid.
Please let me know what you want to do.
Thanks,
Rudolf.
comment:17 by , 15 years ago
Perhaps it's easier if you check these things first.
step 1) Make sure that you are really using "ata" bus_manager AND "ata_adapter" (generic kernel addon) from trunk, hrev32978 or anything newer.
step 2) Enable on screen debug output (serial output would be better) and boot. When you reach the end that looks like:
666 loaded driver /boot/system/add-ons/kernel/drivers/dev/zero 667 [35mahci:[0m ahci_supports_device 668 [35mahci:[0m ahci_supports_device 669 ata 0 error: timeout waiting for interrupt 670 ata 0 error: RecoverLostInterrupt: lost interrupt, status 0x50
enter KLD (ALT+S-Req+D) and use the ints command. then the continue command.
Wait for a minute or two until you get a few other "timeout waiting for interrupt" messages.
Then enter KDL again, use ints command again, and look where interrupts happen. They should be on 14 and 15. if possible attach output to this bugreport.
step 3) in build/config_headers/tracing_config.h
#define ENABLE_TRACING 1 #define ATA_TRACING 1
get hrev33010 of ata_adapter.c and modify #define INTERRUPT_TRACING 1
rebuild and install. when boot stops with timeout, use KDL traced command and view the ata debug output the timeout.
comment:18 by , 15 years ago
hmm,
How is that again, this new shortcut? I don't have a 'Req' key on my keyboards? And: should I press all four keys simultaneously?
I am not able to drop to KDL.
Rudolf.
comment:19 by , 15 years ago
This is only 3 keys. "SysReq" is usually the Print screen key, actually :)
comment:20 by , 15 years ago
Thanks pulkomandy. That works :-)
Anyhow: log uploaded. From what I gather is that int 14 and 15 are assigned to the ata manager, int 15 happens, but is unhandled. ???
The second test (with debug logging enabled) will have to wait probably until coming Monday.
Bye!
Rudolf.
comment:21 by , 15 years ago
Milestone: | R1/alpha1 → R1/alpha2 |
---|
by , 15 years ago
Attachment: | werk_boot_dma_14.TXT added |
---|
debugging enabled failed dma boot - traced
comment:23 by , 15 years ago
Hi Marcus,
Sorry for the delay. Anyhow: Here's the log from a boot. I enabled atapi, ata and ata-dma debugging. Also interrupt debugging is enabled in ata-adapter.
I hope this gives you the info you need.
Bye!
Rudolf.
comment:25 by , 15 years ago
Hi Marcus!
It's fixed indeed! Nice job, and thanks. :-)
You can close this ticket I'd say.
Bye!
Rudolf.
comment:27 by , 10 years ago
Component: | Drivers/Disk → Drivers/Disk/ATA |
---|
failed boot with DMA enabled