Open DvdBoon opened 8 years ago
Have the same problems here on Sam440ep with OS4.1FE Update 1
It's warp 3d related. And I understand that there is no effort to fix this at the moment seeing the age and number of warpos apps.
@DvdBoon I give a go and test Mawi demos on x5000. While they render bad (because of warp3d_si, or because of the initial state of warp3d driver, dunno), they still run and I can catch the moments when they hang. I was lucky enough and catch the crash log when it crashes in "heavy traffic". It cleary point out on warp3dppc.library indeed. There is crash log if you in interest to have a look at :
Crash log for task "mwi_ht.exe"
Generated by GrimReaper 53.19
Crash occured in module Warp3DPPC.library at address 0x7FBA28FC
Type of crash: DSI (Data Storage Interrupt) exception
Alert number: 0x80000003
Register dump:
GPR (General Purpose Registers):
0: 7FBA3530 63973D28 684B27A8 660222F0 63973E98 63973EB1 63973EB0 63973EB2
8: 63973EB3 00007EA4 40000000 00000100 40000000 613F7A48 618F2E60 00000000
16: 0000004C 6136B7B0 00000137 00000001 61373620 61373618 61374008 61459FC8
24: 63973EA4 00000106 63973EA8 40000004 000000FF 63973E9C 63973D34 63973EA0
FPR (Floating Point Registers, NaN = Not a Number):
0: nan 0.0025 50 256
4: 0 0 0 0.749875
8: 127 50 1 256
12: 1.08313 4.5036e+15 1.67653e+199 255
16: -6.88154e-173 2.07059e-235 5.8721e-258 -1.86805e-24
20: 1.95678e+213 -8.97032e-106 7.30742e-220 2.48115e-265
24: -1.56931e-255 -4.55706e-163 1.15034e-114 1.1012e-226
28: -8.6422e-262 380 640 91
FPSCR (Floating Point Status and Control Register): 0xAF002100
SPRs (Special Purpose Registers):
Machine State (msr) : 0x0002F030
Condition (cr) : 0x61C65DC0
Instruction Pointer (ip) : 0x7FBA28FC
Xtended Exception (xer) : 0x018407B0
Count (ctr) : 0x00000000
Link (lr) : 0x00000000
DSI Status (dsisr) : 0x01860BA0
Data Address (dar) : 0x00000000
680x0 emulated registers:
DATA: 81557400 00000000 63974F60 6502C4F0 00000005 FFD50001 FFD60001 66022BC4
ADDR: 6FFA4000 6403DAA0 684B27A8 66022BC4 684B27A8 63974FF0 6403DAA0 63973D48
FPU0: 0 0 0 0
FPU4: 0 0 0 0
Symbol info:
Instruction pointer 0x7FBA28FC belongs to module "Warp3DPPC.library" (HUNK/Kickstart)
Stack trace:
module LIBS:Warp3DPPC.library at 0x7FBA28FC (section 0 @ 0x28D8)
module LIBS:Warp3DPPC.library at 0x7FBA2D6C (section 0 @ 0x2D48)
module LIBS:Warp3DPPC.library at 0x7FBA3278 (section 0 @ 0x3254)
module LIBS:Warp3DPPC.library at 0x7FBA3598 (section 0 @ 0x3574)
module mwi_ht.exe at 0x638D3608 (section 1 @ 0x2A5F4)
module mwi_ht.exe at 0x6397F1F0 (section 5 @ 0x61DC)
PPC disassembly:
7fba28f4: 418200e4 beq- 0x7FBA29D8
7fba28f8: 3bc1000c addi r30,r1,12
*7fba28fc: c029000c lfs f1,12(r9)
7fba2900: c0490008 lfs f2,8(r9)
7fba2904: c1c90004 lfs f14,4(r9)
System information:
CPU
Model: Freescale P5020 (E5500 core) V1.2
CPU speed: 1995 MHz
FSB speed: 798 MHz
Extensions:
Through without debug information in the library that probably not of big help?
Also what I noticed when I run those MAWI demos is that there some memory trashing happens IMHO. Because I can see at the beginning of any demos, there are some black little dots/lines at top of the rendering scenes (and that happens the same and on x5000/RadeonHD, and on pegasos2/Radeon9250). So I assume it can be memory trashing issues in warp3dppc.library (but of course, and in demos too can be, but maybe we can add some sort of protection from if it will be demos in end).
As I told in another topic, I can donate for work if we will come to something in end :) Even if there are just about 20-30 PPC/Warp3D prods, it still quite cool to run them today on moderns Amigas.
Will continue tests on x5000, maybe will catch some more crashes/hangs, so we can see if they all always the same or not.
Got another crashlog, this time from mawi's "Till I Feel You" :
Crash log for task "mwi-tify.exe"
Generated by GrimReaper 53.19
Crash occured in module Warp3DPPC.library at address 0x7FBA28FC
Type of crash: DSI (Data Storage Interrupt) exception
Alert number: 0x80000003
Register dump:
GPR (General Purpose Registers):
0: 7FBA3480 638D04B8 684967A8 6602F2F0 638D0628 638D0641 638D0640 638D0642
8: 638D0643 00000048 40000000 00000080 40000000 6391B058 614B4660 00000000
16: 00000048 63924188 00000000 00000000 63924198 6392419C 00000001 00000001
24: 638D0634 00000002 638D0638 40000004 000000FF 638D062C 638D04C4 638D0630
FPR (Floating Point Registers, NaN = Not a Number):
0: nan 1 2.2754e-10 256
4: 0 4.5036e+15 0 0
8: 0 1 1 128
12: 0 4.5036e+15 1.67653e+199 255
16: -6.88154e-173 640 0 0
20: 0 380 4.5036e+15 0.5
24: 0.5 0 127.5 127.5
28: 128 128 0 152
FPSCR (Floating Point Status and Control Register): 0xAF004000
SPRs (Special Purpose Registers):
Machine State (msr) : 0x0002F030
Condition (cr) : 0x639B0000
Instruction Pointer (ip) : 0x7FBA28FC
Xtended Exception (xer) : 0x604A7134
Count (ctr) : 0x00570001
Link (lr) : 0x00000000
DSI Status (dsisr) : 0x85027002
Data Address (dar) : 0x639AFA44
680x0 emulated registers:
DATA: 815B7C00 00000000 638D0F60 6506F4F0 00000005 FFD50001 FFD60001 6602FBC4
ADDR: 6FFA4000 63E4FAA0 684967A8 6602FBC4 684967A8 638D0FF0 63E4FAA0 638D0110
FPU0: 0 0 0 0
FPU4: 0 0 0 0
Symbol info:
Instruction pointer 0x7FBA28FC belongs to module "Warp3DPPC.library" (HUNK/Kickstart)
Stack trace:
module LIBS:Warp3DPPC.library at 0x7FBA28FC (section 0 @ 0x28D8)
module LIBS:Warp3DPPC.library at 0x7FBA2D6C (section 0 @ 0x2D48)
module LIBS:Warp3DPPC.library at 0x7FBA32B8 (section 0 @ 0x3294)
module LIBS:Warp3DPPC.library at 0x7FBA34E0 (section 0 @ 0x34BC)
module mwi-tify.exe at 0x6395BF38 (section 1 @ 0x28F24)
module SYS:System/GrimReaper at 0x00000001 (section 0 @ 0xFFFFFFDC)
0x33953395 symbol not available
PPC disassembly:
7fba28f4: 418200e4 beq- 0x7FBA29D8
7fba28f8: 3bc1000c addi r30,r1,12
*7fba28fc: c029000c lfs f1,12(r9)
7fba2900: c0490008 lfs f2,8(r9)
7fba2904: c1c90004 lfs f14,4(r9)
System information:
CPU
Model: Freescale P5020 (E5500 core) V1.2
CPU speed: 1995 MHz
FSB speed: 798 MHz
Extensions:
Machine
Machine name: AmigaOne X5000/20
Memory: 2097152 KB
Extensions: bus.pci bus.pcie
As I can see, in both cases it's lfs f1,12(r9)
, so chances high it's the same bug. I Will try to catch it from some other one, and if 3st one will be the same, then it all about the same then.
Ok, and the third crash, in 3rd demo (probably 3 crashes is more than enough), is in the "fate fits karma". There is:
kernel 54.30 (1.1.2021) AmigaOne X5000 release
Machine model: 9 (AmigaOne X5000/20)
Dump of context at 0xEFD2D3E0
Trap type: DSI exception
DSISR: 00000000 DAR: 00000076
No matching page found
Machine State (raw): 0x0002F030
Machine State (verbose): [Critical Ints on] [ExtInt on] [User] [IAT on] [DAT on]
Instruction pointer: 0x7FBA2874
Crashed process: mwi-fafk.exe (0x64A7B040)
DSI verbose error description: Access to address 0x00000076 not allowed by page protection in user state (protection violation)
Access was a load operation
Exception Syndrome Register: 0x00000000
0: 7FBA3480 638C1F90 684B27A8 661052F0 638C2100 638C2119 638C2118 638C211A
8: 638C211B 63A47674 00000000 00000000 43300000 638C7270 00000000 00000000
16: 638CF948 63A47598 00000000 00000000 63A47678 63A4767C 638CAC10 638C7028
24: 638C210C 00000002 638C2110 40000004 000000FF 638C2104 00000002 638C2108
CR: 93953959 XER: A000007E CTR: 7F706064 LR: 7FBA2D6C
Disassembly of crash site:
7FBA2864: C1950000 lfs f12,0(r21)
7FBA2868: D1840014 stfs f12,20(r4)
7FBA286C: 4800006C b 0x7FBA28D8
7FBA2870: 3D804330 lis r12,17200
>7FBA2874: 816E0076 lwz r11,118(r14)
7FBA2878: 91810028 stw r12,40(r1)
7FBA287C: 6D6C8000 xoris r12,r11,32768
7FBA2880: 9181002C stw r12,44(r1)
7FBA2884: 3D80636D lis r12,25453
7FBA2888: C9610028 lfd f11,40(r1)
msr: 0x0002B032
TLB1 (64 entries):
* [ 52]: size=7 tid = 0 TS = 1 epn=0xFE000000 rpn=0x0000000F_FE000000 WIMG=0x5 XXWWRR=0xF protected
* [ 53]: size=6 tid = 0 TS = 1 epn=0x01000000 rpn=0x00000000_01000000 WIMG=0x0 XXWWRR=0x5 protected
* [ 54]: size=6 tid = 0 TS = 1 epn=0x01400000 rpn=0x00000000_01400000 WIMG=0x0 XXWWRR=0x5 protected
* [ 55]: size=6 tid = 0 TS = 1 epn=0x01800000 rpn=0x00000000_01800000 WIMG=0x0 XXWWRR=0x33 protected
* [ 56]: size=6 tid = 0 TS = 1 epn=0x01C00000 rpn=0x00000000_01C00000 WIMG=0x0 XXWWRR=0x33 protected
* [ 57]: size=6 tid = 0 TS = 1 epn=0x02000000 rpn=0x00000000_02000000 WIMG=0x0 XXWWRR=0xF protected
* [ 58]: size=4 tid = 0 TS = 1 epn=0x02400000 rpn=0x00000000_02400000 WIMG=0x0 XXWWRR=0xF protected
* [ 59]: size=3 tid = 0 TS = 1 epn=0x02440000 rpn=0x00000000_02440000 WIMG=0x0 XXWWRR=0xF protected
* [ 60]: size=3 tid = 0 TS = 1 epn=0x02450000 rpn=0x00000000_02450000 WIMG=0x0 XXWWRR=0xF protected
* [ 61]: size=7 tid = 0 TS = 0 epn=0xFE000000 rpn=0x0000000F_FE000000 WIMG=0x5 XXWWRR=0xF protected
* [ 62]: size=A tid = 0 TS = 0 epn=0x00000000 rpn=0x00000000_00000000 WIMG=0x0 XXWWRR=0x3F protected
* [ 63]: size=A tid = 0 TS = 0 epn=0x40000000 rpn=0x00000000_40000000 WIMG=0x0 XXWWRR=0x3F protected
HAL_MaxTLB = 51, HAL_NextTLB = 0
MMUCFG = 0x064809C4
mas0 = 0x00010002
mas1 = 0x80001100
mas2 = 0x60260000
mas3 = 0x1188600F
mas4 = 0x00000100
mas5 = 0x00000000
mas6 = 0x00000001
mas7 = 0x00000000
mas8 = 0x00000000
Kernel command line: serial munge debuglevel=1
Registers pointing to code:
r0 : module LIBS:Warp3DPPC.library at 0x7FBA3480 (section 0 @ 0x345C)
r2 : module mwi-fafk.exe at 0x684B27A8 (section 3 @ 0x14)
r9 : module mwi-fafk.exe at 0x63A47674 (section 6 @ 0x660)
r13: module mwi-fafk.exe at 0x638C7270 (section 5 @ 0x25C)
r16: module mwi-fafk.exe at 0x638CF948 (section 5 @ 0x8934)
r17: module mwi-fafk.exe at 0x63A47598 (section 6 @ 0x584)
r20: module mwi-fafk.exe at 0x63A47678 (section 6 @ 0x664)
r21: module mwi-fafk.exe at 0x63A4767C (section 6 @ 0x668)
r22: module mwi-fafk.exe at 0x638CAC10 (section 5 @ 0x3BFC)
r23: module mwi-fafk.exe at 0x638C7028 (section 5 @ 0x14)
ip : module LIBS:Warp3DPPC.library at 0x7FBA2874 (section 0 @ 0x2850)
lr : module LIBS:Warp3DPPC.library at 0x7FBA2D6C (section 0 @ 0x2D48)
ctr: module LIBS:Warp3D/HWdrivers/W3D_SI.library at 0x7F706064 (section 0 @ 0x1040)
Stack trace:
(0x638C1F90) module LIBS:Warp3DPPC.library at 0x7FBA2874 (section 0 @ 0x2850)
(0x638C2010) module LIBS:Warp3DPPC.library at 0x7FBA2D6C (section 0 @ 0x2D48)
(0x638C2190) module LIBS:Warp3DPPC.library at 0x7FBA32B8 (section 0 @ 0x3294)
(0x638C21D0) module LIBS:Warp3DPPC.library at 0x7FBA34E0 (section 0 @ 0x34BC)
(0x638C2200) module mwi-fafk.exe at 0x6395AEE0 (section 1 @ 0x27ECC)
Disassembly of crash site:
7FBA2864: C1950000 lfs f12,0(r21)
7FBA2868: D1840014 stfs f12,20(r4)
7FBA286C: 4800006C b 0x7FBA28D8
7FBA2870: 3D804330 lis r12,17200
>7FBA2874: 816E0076 lwz r11,118(r14)
7FBA2878: 91810028 stw r12,40(r1)
7FBA287C: 6D6C8000 xoris r12,r11,32768
7FBA2880: 9181002C stw r12,44(r1)
7FBA2884: 3D80636D lis r12,25453
7FBA2888: C9610028 lfd f11,40(r1)
Stack pointer (0x638C1F90) is inside bounds
Redzone is OK (4)
This time is different: lwz r11,118(r14)
, but visually also just hangs in process.
But in all 3 crashes. stack trace points out on warp3dppc and address in 2 cases identical, and 3rd case almost identical. So seems all about the same still.
@kas1e If only i had a working OS4 machine. But normally, I would hex search the code to confirm it is in Warp3Dppc and then look which function it is. I recently found out that some of these old programs send 3D commands with 0 vertexes. Maybe that is the issue here too. But no way to check atm
@kas1e Why does the last report look different than the other two? I think the latter is more useful than the other two. Also, did you try with one of the build-in patches?
If I understand these reports correctly and IP and LR point to Warp3Dppc, then the error is in the patch code from Thellier. As the rest of the functions are just wrapper functions and just consist of a jump to warp3d.library while the patch code jumps inside the warp3dpcc.library.
And only the patch code has fpu code in it.
And why do I check this after 5 years? Novabridge.
@All Tried those MAWI demos on the latest NovaBridge today on my x5000/020 again. All 3 demos don't seem to crash anymore be it RadeonHD or Radeon RX. And basically, no other MAWI demos crash for now... Will test for one-two days more
I asked to be novabridge betatester, but sadly never heard anything back. Do they run also correctly?
On Fri, Dec 10, 2021, 21:38 kas1e @.***> wrote:
@ALL https://github.com/ALL Tried those MAWI demos on the latest NovaBridge today on my x5000/020 again. All 3 demos don't seem to crash anymore be it RadeonHD or Radeon RX. And basically, no other MAWI demos crash for now... Will test for one-two days more
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/Sakura-IT/ReWarp3DPPC/issues/4#issuecomment-991278497, or unsubscribe https://github.com/notifications/unsubscribe-auth/ACTVMEFGSX5PVBQOSFSUHFDUQJQNJANCNFSM4CNGU37A . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
Yes, everything renders correctly now. There is one small glitch like broken clipping through (seems so), see:
on novabridge: https://kas1e.mikendezign.com/aos4/novabridge/mawi_clipping_novabridge.jpg how should be: https://kas1e.mikendezign.com/aos4/novabridge/mawi_clipping_ok.jpg
See, at the bottom big black line, while should be half on top and a half at the bottom.
But in other all MAWI demos renders correctly.
Even with Alain Thellier's patch applied there are certain programs (mostly mwi demos) which hang the system on various stages. E.g. Heavy traffic, Cull Bazaar, Which function is the cause is unknown at the moment. Could still partly be related to issue #3