Opened 12 years ago
Closed 11 years ago
#347 closed defect (duplicate)
as_area_destroy() broken on mips32 in GXemul
Reported by: | Martin Decky | Owned by: | Martin Decky |
---|---|---|---|
Priority: | major | Milestone: | 0.5.0 |
Component: | helenos/kernel/mips32 | Version: | mainline |
Keywords: | malloc | Cc: | |
Blocker for: | Depends on: | ||
See also: |
Description
The implementation of as_area_destroy() seems to be broken on mips32 (in GXemul).
The malloc3 test fails (heap structure gets corrupted). The user space heap allocator has been extensively examined and tested on other platforms and it doesn't seem to be the culprit.
The problem can be completely worked around by changing the kernel function sys_as_area_destroy() into a no-op.
Change History (4)
comment:1 Changed 12 years ago by
comment:2 Changed 12 years ago by
OK, even forcing GXemul to use zero-sized L1 and L2 cache does not help. This brings us back to the TLB itself. I am going to trace the TLB lookups in GXemul to tell what's happening.
comment:3 Changed 11 years ago by
Keywords: | malloc added |
---|
comment:4 Changed 11 years ago by
Resolution: | → duplicate |
---|---|
Status: | new → closed |
The bug is no longer reproducible, which suggests that the root cause was actually related to #395 and GXemul is innocent in this.
I have tried several things with GXemul (both 0.4.7.2 and 0.6.0):
I was unable to reproduce the bug in msim. I'm not particularly looking forward to a full-fledged debugging in GXemul ..