Re[42]: [Gc]: GC + Windows Mobile + Threads + Patch for WINCE
Ivan Maidanski
ivmai at mail.ru
Sun Oct 25 09:28:38 PST 2009
Hi!
Zeyi Lee <biosli at hotmail.com> wrote:
> Hi,
>
> I checkout the latest version of Boehm-GC(last changed date 2009-10-23).
> Added GC_THREADS and VERY_SMALL_CONFIG, output as below:
> ----------------------------
> Received WM_CLOSE, closing window
> ...
> Collector appears to work
> ----------------------------
Ok.
>
> I test the version with several case on my WINCE box, as following:
> Case 1:
> -DALL_INTERIOR_POINTERS -DGC_GCJ_SUPPORT -DATOMIC_UNCOLLECTABLE
> -DNO_DEBUGGING -DGC_THREADS -DUSE_MUNMAP -DTHREAD_LOCAL_ALLOC
> -DPARALLEL_MARK -DGC_ASSERTIONS -DMAKE_BACK_GRAPH -DGC_MIN_MARKERS=2 /link /stack:65536
> and -DVERY_SMALL_CONFIG
>
> I got a Data Abort as below:
> -------------------
> Data Abort: Thread=8efce000 Proc=8c398520 'test_libgcd_Wince.exe'
> AKY=00040001 PC=0001a9d4(test_libgcd_Wince.exe+0x0000a9d4) RA=0001a1e4(test_libgcd_Wince.exe+0x0000a1e4) BVA=2787fc0c FSR=00000007
> -------------------
> Then the program runs to the end.
> ...
> Collector appears to work
> ------------------------
The situation is unclear to me.
1. Could you tell me the bscktrace?
2. Could you tell me the contents of verInfo in GC_setpagesize() (after calling GetVersionEx)?
3. Does Data Abort also occur without -DMAKE_BACK_GRAPH?
> Case 2:
> I defined MAKE_BACK_GRAPH, VERY_SMALL_CONFIG, stack = 65536, and retest, then I got a Debugbreak.
> -----------------
> Collecting from unknown thread.
> -----------------
> The Case 2 I runs in Win32, I got the same DebugBreak.
> I send the two backtrace files as attachment.
This is unclear too.
The backtraces say the thread is called from GC_win32_start_inner() which should also register the thread, so either the thread is unregistered somewhere or thread->id is trashed somewhere. Could you compile it for Win32 adding also -DGC_PRINT_VERBOSE_STATS -DDEBUG_THREADS and tell me the contents of the log file after the last "Initiating full world-stop collection!" line?
Bye.
More information about the Gc
mailing list