The problem should be now fixed in mainline, 1738. We accidentally zeroed out the variable holding the PC where we wanted to restart an atomic sequence.
Having fixed this, the system start up proceeds farther with occasional crashes of random applications with the stack pointing to a heap corruption detected from the following call path: ... malloc() async_send_fast() log_msg() ... Jakub On 12/28/2012 11:38 PM, Jakub Jermar wrote: > Hi Beniamino, > > (Cc: to the mailing list as it may be of interest to others) > > thanks for the patch, I will definitely give it a try during my next > gta02 session. > > Today, I verified that the latest mainline kind of still boots on gta02, > at least to the point when the frame buffer is initialized and a couple > of init tasks are running. Then the fat task crashes in futex_up(). This > appears to be related to the problem you are experiencing, because your > vfs crash seems to happen in futex_down(). > > I suspect that something non entirely armv4 managed to sneak into the > code used by futex_down/up(). > > Cheers, > Jakub > > On 12/28/2012 08:17 PM, Beniamino Galvani wrote: >> the attached patch enables ARM caches in the boot stage of HelenOS >> to speed up the decompression. It's quite dirty, but with it I get a >> decompression time of 8 seconds on a mini2440 board; let me know if >> it works also on GTA02. >> >> I have pasted a log of the boot which shows the problem I'm having on >> my board. Do you have any clue about it? >> If I manage to solve this problem, I would like to start adding support >> for devices on the mini2440 (for example, the Davicom dm9000 network card). >> >> Beniamino >> >> -- >> U-Boot 1.3.2-mini2440 (Apr 16 2011 - 10:03:07) >> >> I2C: ready >> DRAM: 64 MB >> NOR Flash not found. Use hardware switch and 'flinit' >> Flash: 0 kB >> NAND: Bad block table not found for chip 0 >> Bad block table not found for chip 0 >> 256 MiB >> Found Environment offset in OOB.. >> USB: S3C2410 USB Deviced >> In: serial >> Out: serial >> Err: serial >> MAC: 08:08:11:18:12:27 >> Hit any key to stop autoboot: 0 >> dm9000 i/o: 0x20000300, id: 0x90000a46 >> DM9000: running in 16 bit mode >> MAC: 08:08:11:18:12:27 >> TFTP from server 10.0.0.1; our IP address is 10.0.0.20 >> Filename 'helenos.bin'. >> Load address: 0x32000000 >> Loading: checksum bad >> T ################################################################# >> ################################################################# >> ################################################################# >> ######################checksum bad >> ########################################### >> ################################################################# >> ################################################################# >> ################################################################# >> ################################################################# >> ################################################################# >> ################################################################# >> ############################### >> done >> Bytes transferred = 9989312 (986cc0 hex) >> ## Booting kernel from Legacy Image at 32000000 ... >> Image Name: HelenOS-0.5.0 >> Created: 2012-12-28 18:09:05 UTC >> Image Type: ARM Linux Kernel Image (uncompressed) >> Data Size: 9989248 Bytes = 9.5 MB >> Load Address: 30008000 >> Entry Point: 30008000 >> Verifying Checksum ... OK >> Loading Kernel Image ... OK >> OK >> >> Starting kernel ... >> >> HelenOS bootloader, release 0.5.0 (Fajtl), revision 1737M >> ([email protected]) >> Built on 2012-12-28 19:07:44 for arm32 >> Copyright (c) 2001-2012 HelenOS project >> >> Memory statistics >> 0x30015000|0x30015000: bootstrap stack >> 0x30010000|0x30010000: bootstrap page table >> 0x30015700|0x30015700: boot info structure >> 0xb0a08000|0x30a08000: kernel entry point >> 0x30015c04|0x30015c04: kernel image (421856/124257 bytes) >> 0x30034165|0x30034165: ns image (210074/89621 bytes) >> 0x30049f7a|0x30049f7a: loader image (208344/89372 bytes) >> 0x3005fc96|0x3005fc96: init image (209995/89924 bytes) >> 0x30075bda|0x30075bda: locsrv image (216763/93462 bytes) >> 0x3008c8f0|0x3008c8f0: rd image (207741/88914 bytes) >> 0x300a2442|0x300a2442: vfs image (224096/97120 bytes) >> 0x300b9fa2|0x300b9fa2: logger image (213002/91109 bytes) >> 0x300d0387|0x300d0387: fat image (268181/117457 bytes) >> 0x300ece58|0x300ece58: initrd image (23066624/9051688 bytes) >> >> Inflating components ... initrd fat logger vfs rd locsrv init loader ns >> kernel . >> Booting the kernel... >> SPARTAN kernel, release 0.5.0 (Fajtl), revision 1737M >> ([email protected]) >> Built on 2012-12-28 19:07:44 for arm32 >> Copyright (c) 2001-2012 HelenOS project >> Detected 1 CPU(s), 131040 KiB free memory >> cpu0: spurious interrupt (inum=25) >> Kernel console ready (press any key to activate) >> Program loader at 0xf0080000 >> RAM disk at 0x30c20000 (size 23066624 bytes) >> init: HelenOS init >> ns: HelenOS IPC Naming Service >> ns: Accepting connections >> loc: HelenOS Location Service >> loc: Accepting connections >> rd: HelenOS RAM disk server >> rd: Found RAM disk at 0x30c20000, 23066624 bytes >> rd: Accepting connections >> vfs: HelenOS VFS server >> logger: HelenOS Logging Service >> logger: Accepting connections >> fat: HelenOS FAT file system server >> vfs: Accepting connections >> fat: Accepting connections >> init: Root filesystem mounted on / (fat at bd/initrd) >> init: Starting /srv/tmpfs >> Task init:vfs (6) killed due to an exception at program counter 0x00000000. >> r0 =0x0002eb9c r1 =0xf0002000 r2 =0xffffffff r3 =0x00000001 >> r4 =0x00000000 r5 =0x0002eb0c r6 =0x00000001 r7 =0x00031240 >> r8 =0x00031660 r9 =0x00030b3c r10=0x00152fa0 fp =0x00152f4c >> r12=0x00152f50 sp =0x00152f28 lr =0x000089ac spsr=0x20000050 >> 0x00152f4c: 0x00000000() >> 0x00152f7c: 0x000089ac() >> 0x00152fdc: 0x000143e4() >> 0x00152ff4: 0x00008984() >> Kill message: Page fault: 0x00000000. >> init: Error spawning /srv/tmpfs (Invalid value) >> init: Unable to stat /srv/locfs >> init: Unable to stat /srv/taskmon >> init: Location service filesystem unknown type (locfs) >> init: Exiting >> kconsole> >> > > > _______________________________________________ > HelenOS-devel mailing list > [email protected] > http://lists.modry.cz/cgi-bin/listinfo/helenos-devel > _______________________________________________ HelenOS-devel mailing list [email protected] http://lists.modry.cz/cgi-bin/listinfo/helenos-devel
