March 8, 2009

New (small) build

Howdy.

After a long break I present you herewith a new test iso for Efika. It's much much smaller than all previous images, because I have not included the "contrib" build. The reason was instability of some third party MUI classes which either crashed the Zune preferences or did not allowed the prefs program to start.

The most important changes worth mentioning are USB fix, sync with current source tree and extended debug. The first fix repairs an anciend bug in OHCI driver, where the USB ports were powered up upon driver's initialization. It lead to some "zombie" devices on the bus. The Efika source tree has been synced with the SVN repository too, therefore Efika build got all recent changes and updates from the main tree. The most important and Efika specific is extended debug. Until now, if anything on native aros crashed, I have had no clear information about the code that failed. Just some address in memory. Debugging under such conditions was so ineffective, that I've finally decided to improve the crash log a bit.

Now, every single module in the system registers itself at the kernel.resource with name and headers of ELF file. Kernel resource scans the file and remembers all symbols referring executable sections. The same is done with Kernel during the bootup too. Now, if a crash occurs, I become much more verbose information, which eventually helps :) The information includes the location of crash (which byte offset, which function, which module) and the call backtrace up to the birth of the task/process. Have a look at NList crash:

[KRN] Exception 3 (DSI) handler. Context @ 0xff7fb948, SysBase @ 0x32c0, KernelBase @ 0x4bac
[KRN] Process 0xcae00 (Zune)
[KRN] Crash at byte 8 in func strcmp, module muimaster.library
[KRN] SRR0=00ed4428, SRR1=0000f030
[KRN] CTR=ff8066e4 LR=00e94270 XER=00000000 CCR=28004044
[KRN] DAR=00000013 DSISR=40000000
[KRN] HASH1=07000000 HASH2=070fffc0 IMISS=00ed4420 DMISS=00000013
ICMP=80000003 DCMP=80000000
[KRN] SPRG0=ff7fbaf0 SPRG1=00da9598 SPRG2=28004044 SPRG3=00000000
SPRG4=00004bac SPRG5=000032c0
[KRN] GPR00=00e80980 GPR01=002c9950 GPR02=00000000 GPR03=00da9598
[KRN] GPR04=00000013 GPR05=00da50c0 GPR06=002c99b8 GPR07=00da9598
[KRN] GPR08=012ecc00 GPR09=0000004e GPR10=00000120 GPR11=00da50c0
[KRN] GPR12=48004022 GPR13=00000000 GPR14=00000000 GPR15=000d0000
[KRN] GPR16=00f5fed0 GPR17=00000001 GPR18=00f60000 GPR19=011cf4bc
[KRN] GPR20=00000002 GPR21=00000000 GPR22=00000000 GPR23=00f60000
[KRN] GPR24=00db0000 GPR25=00da5120 GPR26=00000000 GPR27=8042ac64
[KRN] GPR28=00da50c0 GPR29=00f19cd0 GPR30=00000013 GPR31=00d87620
[KRN] Hash1 dump:
[KRN] 80000010.04000012 800007a0.f800f03a 80000400.8000803a
80000410.8400803a
[KRN] 80000420.8800803a 00000000.00000000 00000000.00000000
00000000.00000000
[KRN] Hash2 dump:
[KRN] 8000000f.03fff012 800007bf.07ff0010 8000040f.83ff703a
8000041f.87ff703a
[KRN] 00000000.00000000 00000000.00000000 00000000.00000000
00000000.00000000
[KRN] Instruction dump:
[KRN] 00ed4428: 88040000
[KRN] 00ed442c: 7c604851
[KRN] 00ed4430: 4c820020
[KRN] 00ed4434: 2f890000
[KRN] 00ed4438: 4d9e0020
[KRN] 00ed443c: 39000000
[KRN] 00ed4440: 7d674214
[KRN] 00ed4444: 7d444214
[KRN] Backtrace:
[KRN] 00e80980: byte 40 in func MUIMaster_MUI_GetClass, module
muimaster.library
[KRN] 00e82070: byte 56 in func MUIMaster_MUI_NewObjectA, module
muimaster.library
[KRN] 011049d0: byte 176 in func MUI_NewObject, module NList.mcc
[KRN] 010d9a50: byte 632 in func mNL_New, module NList.mcc
[KRN] 010db7e0: byte 880 in func _Dispatcher, module NList.mcc
[KRN] 00e941cc: byte 28 in func metaDispatcher, module muimaster.library
[KRN] 010d35c0: byte 48 in func DoSuperMethodA, module Mailtext.mcc
[KRN] 010d291c: byte 80 in func Mailtext__OM_NEW, module Mailtext.mcc
[KRN] 010ceac0: byte 204 in func Mailtext_Dispatcher, module Mailtext.mcc
[KRN] 00e941cc: byte 28 in func metaDispatcher, module muimaster.library
[KRN] ff8af35c: byte 40 in func CoerceMethodA, module intuition.library
[KRN] ff8842dc: byte 164 in func Intuition_NewObjectA, module intuition.library
[KRN] 00e82098: byte 96 in func MUIMaster_MUI_NewObjectA, module
muimaster.library
[KRN] 0110b27c: byte 176 in func MUI_NewObject, module Mailtext.mcp
[KRN] 01108088: byte 952 in func MailtextP__OM_NEW, module Mailtext.mcp
[KRN] 01105b68: byte 180 in func MailtextP_Dispatcher, module Mailtext.mcp
[KRN] 00e941cc: byte 28 in func metaDispatcher, module muimaster.library
[KRN] ff8af35c: byte 40 in func CoerceMethodA, module intuition.library
[KRN] ff8842dc: byte 164 in func Intuition_NewObjectA, module
intuition.library
[KRN] 00e01110: byte 2476 in func init_gui, module Zune
[KRN] 00e016f8: byte 276 in func main, module Zune
[KRN] 00dffcb4: byte 452 in module Zune
[KRN] ff8c2a38: byte 36 in func DosEntry, module dos.library
[KRN] ff8c5274: byte 13092 in module dos.library
[KRN] **UNHANDLED EXCEPTION** stopping here...

The next release will get rid of the "stopping here..." message. Instead of halting whole aros, the failing task will be moved away, a popup message will appear, and AROS will continute to work. Stay tuned...

8 Comments:

Blogger Randy said...

Keep plugging away at it Dr. Schulz, it will eventually bend to your will. :)

Randy

1:27 AM  
Anonymous Anonymous said...

Michal, my attempt to boot from a flash key the live iso presented here did not quite succeed. It reached to a point where it had loaded everything from menu.lst, had cleared/overwritten a char (or two) at the upper-left corner of the screen, had unmounted and re-mounted the flash key (judging by the key's LED activity), but having done all that it just stood there, motionless.

My exact setup:

efika5k2, OF 1.3 (from 2007), one apple pro kbd and one 128MB 'S Talent Flash Drive 2.0 Media' flash key attached to the usb ports. Video is an ATI 9250 PCI 256MB. I had dd'ed the iso onto the flash, so the latter fs was iso9660.

7:39 AM  
Anonymous Anonymous said...

motherboard sale

http://www.directron.com/efika.html

2:22 AM  
Anonymous Anonymous said...

After Effika, how about PS3 port?

5:57 PM  
Blogger Jaiminho said...

hi michal,
how are you?
how much would be need to have aros running on imac g3-333mhz?
it is able to run the pantheros (quite heavy), and now aros has been ppc ported and also has usb(s) support, what more would we need?
kind regards,

4:14 AM  
Anonymous Dwyloc said...

I have been watching your AROS porting work to both the efika and the sam440ep with interest as I own a sam440ep board.

Its good too see your are making progress with adding usable USB support to a AROS PPC board.

Do you think it would be possible to create a single boot image that could both be booted from the sam440ep and the efika board from USB or CD-ROM?

11:02 AM  
Blogger Sleepless said...

Hi Michal

I wonder if there's any update for Efika :-) I tested last version you published but it's a pity no nightly build is done for Efika as building AROS for Efika looks hard.

I don't know if it would be possible to create a generic ISO for both Sam440 and Efika with different kernels/drivers and/or kernel loaders.

3:05 AM  
Blogger Randy said...

Yah think it's time for a update yet? ;-)

5:06 PM  

Post a Comment

<< Home