Opened 4 years ago

Closed 4 years ago

#16039 closed bug (fixed)

[IORequest] Assert Failed: actualLength == fLength

Reported by: CodeforEvolution Owned by: waddlesplash
Priority: high Milestone: R1/beta2
Component: System/Kernel Version: R1/Development
Keywords: Cc:
Blocked By: Blocking:
Platform: All

Description

I was using Haiku to compile a large amount of code, and then, when using another application, Haiku went into the KDL. This is with hrev54185 on a x86_gcc2 machine. I’ve heard about this issue being about something to do with the file_cache possibly?

Attachments (2)

892B1B2E-9781-4FC0-BCC4-DDBEE18D20E2.jpeg (539.5 KB ) - added by CodeforEvolution 4 years ago.
The Panic
panic.png (214.3 KB ) - added by diver 4 years ago.

Download all attachments as: .zip

Change History (10)

by CodeforEvolution, 4 years ago

The Panic

comment:1 by waddlesplash, 4 years ago

Keywords: IORequest assert bfs removed
Milestone: UnscheduledR1/beta2
Platform: x86All

This looks like it is in the VFS layer. This is indeed very interesting, I wonder if it's related to some of the rare file corruptions X512 has mentioned.

comment:2 by waddlesplash, 4 years ago

Owner: changed from nobody to waddlesplash
Status: newassigned

The problem is here: https://xref.landonf.org/source/xref/haiku/src/system/kernel/cache/file_cache.cpp#1327

The write operation always uses kZeroVecCount and not the appropriate number of pages. This loop needs to be refactored; and probably some of these variables renamed for clarity.

comment:4 by waddlesplash, 4 years ago

Resolution: fixed
Status: assignedclosed

Fixed in hrev54233.

comment:5 by diver, 4 years ago

Resolution: fixed
Status: closedreopened

hrev54280 same panic.

by diver, 4 years ago

Attachment: panic.png added

comment:6 by diver, 4 years ago

Happened twice during hp snowman.

comment:8 by waddlesplash, 4 years ago

Resolution: fixed
Status: reopenedclosed

Fixed again more properly in hrev54281.

Note: See TracTickets for help on using tickets.