Opened 11 years ago

Closed 11 years ago

#2896 closed bug (fixed)

Assertion fails at boot with r28255 using ATA bus manager

Reported by: thotypous Owned by: bonefish
Priority: normal Milestone: R1
Component: Drivers/Disk Version: R1/pre-alpha1
Keywords: Cc:
Blocked By: Blocking:
Has a Patch: no Platform: x86

Description

How to reproduce: Boot hrev28255 in a NEC Versa M360 laptop.

Experienced behavior: Crashes with assertion fail.

src/add-ons/kernel/bus_managers/ata/pio.c:166: ASSERT((physicalAddress & 4097) == (virtualAddress & 4097))

This crash started occurring after the hrev28244 changes.

I could boot Haiku with no problems after disabling the assertion checking in the source code, but I don't know if it's safe.

My patch is attached, although I don't know if it's safe.

Attachments (1)

pio-remove-assert.diff (526 bytes) - added by thotypous 11 years ago.
Patch that fixed my problem (I don't know if it's safe)

Download all attachments as: .zip

Change History (4)

Changed 11 years ago by thotypous

Attachment: pio-remove-assert.diff added

Patch that fixed my problem (I don't know if it's safe)

comment:1 Changed 11 years ago by umccullough

Seems I ran into the same failure on my core 2 duo box using hrev28255.

Considering I haven't used this machine in a while, i'm not sure what caused this.

comment:2 Changed 11 years ago by marcusoverhagen

Owner: changed from marcusoverhagen to bonefish

Removing the ASSERT is vertainly not a good solution, when you don't understand whats going wrong.

Probably caused by hrev28244, reassigning to bonefish.

comment:3 Changed 11 years ago by bonefish

Resolution: fixed
Status: newclosed

Fixed in hrev28257. The assert was broken. It only worked with the old page mapper, because it would map the physical page to a virtual address with the same 4 MB modulo.

Note: See TracTickets for help on using tickets.