Visual Studio 2008 and nothing unusual in counters: - Paged Pool Usage - QuotaPagedPoolUsage: 78456, QuotaPeakPagedPoolUsage: 78464 QuotaNonPagedPoolUsage: 2776, QuotaPeakNonPagedPoolUsage: 2776
- Virtual Memory Usage - VirtualSize: 61988864, PeakVirtualSize: 78774272 - Pagefile Usage - PagefileUsage: 19505152, PeakPagefileUsage: 35971072 - Working Set Size - WorkingSetSize: 20488192, PeakWorkingSetSize: 31092736, PageFaultCount: 9790 I'm concerned with that "CRT not initialized" popup box when using trunk head version. Single lib file changed, no app source code changed, but it either fails only on checkpointing attempt (with one lib) or just after start (with another lib). Why CRT initialization depends from this particular BOINC library ?.... ----- Original Message ----- From: "Rom Walton" <[email protected]> To: "Raistmer" <[email protected]>; <[email protected]> Sent: Wednesday, August 11, 2010 9:42 AM Subject: RE: [boinc_dev] Incorrect function when running under BOINC Hmmmmmm... According to the callstack msize is called with a null parameter. Since it is a debug build I assume the CRT is asserting and the exception code is 0x80000003. Using some of the stats before the callstack, how much virtual memory was in use before the crash? Which version of Visual Studio are you using? I'll try and repro. ----- Rom -----Original Message----- From: Raistmer [mailto:[email protected]] Sent: Tuesday, August 10, 2010 6:11 PM To: Rom Walton; [email protected] Subject: Re: [boinc_dev] Incorrect function when running under BOINC Well, I getting exception with astropulse too now. All that was changed - BOINC libs to link. Call stack and BPINC function that causes exception are: - Callstack - ChildEBP RetAddr Args to Child 000f8b5c 0050f297 00000000 00000000 00000000 00000000 ntdll!DbgBreakPoint+0x0 000f8ba8 0042ea9c 00000000 00111274 0042e9ef 00000000 ap_5.05_win_x86_SSE3_r446_DEBUG!_msize+0x25 (f:\dd\vctools\crt_bld\self_x86\crt\src\msize.c:47) 000f8bb4 0042e9ef 00000000 00000015 00563f0c 00000014 ap_5.05_win_x86_SSE3_r446_DEBUG!realloc_aux+0x9 (d:\r\seti6\boinc\lib\mfile.cpp:61) 00111274 0042eadc 00534b20 0011129c 0011129c 0052dba1 ap_5.05_win_x86_SSE3_r446_DEBUG!MFILE::vprintf+0x1f (d:\r\seti6\boinc\lib\mfile.cpp:82) 0011128c 0040bfcc 00563f0c 00534b20 59543951 00563b68 ap_5.05_win_x86_SSE3_r446_DEBUG!MFILE::printf+0x10 (d:\r\seti6\boinc\lib\mfile.cpp:98) 001112d0 00413d72 5954392d 003d7780 00563b68 0012fd38 ap_5.05_win_x86_SSE3_r446_DEBUG!Astropulse::Outfile::write_header+0xb (d:\r\seti6\ap\client\ap_fileio.cpp:803) 001112f4 004076fb 016df8d8 02a9c000 00370000 00000000 ap_5.05_win_x86_SSE3_r446_DEBUG!Astropulse::Outfile::write_main+0x0 (d:\r\seti6\ap\client\ap_fileio.cpp:842) 00111334 00407f0a 595438b1 00000003 00000000 00000001 ap_5.05_win_x86_SSE3_r446_DEBUG!Astropulse::Client::do_checkpoint+0x0 (d:\r\seti6\ap\client\astropulse.h:648) 0012fd38 00409623 fffffffe 0012ff88 00000001 00000000 ap_5.05_win_x86_SSE3_r446_DEBUG!Astropulse::Science::mainloop+0x13 (d:\r\seti6\ap\client\ap_client_main.cpp:1680) 0012fd54 00409671 00000003 0012fd6c 00272df9 0012fd6c ap_5.05_win_x86_SSE3_r446_DEBUG!main+0x0 (d:\r\seti6\ap\client\ap_client_main.cpp:572) 0012fef8 0050ed56 00400000 00000000 00272def 0000000a ap_5.05_win_x86_SSE3_r446_DEBUG!WinMain+0x0 (d:\r\seti6\ap\client\ap_client_main.cpp:141) 0012ff88 76e0d0e9 7ffdf000 0012ffd4 773919bb 7ffdf000 ap_5.05_win_x86_SSE3_r446_DEBUG!__tmainCRTStartup+0x1b (f:\dd\vctools\crt_bld\self_x86\crt\src\crt0.c:263) 0012ff94 773919bb 7ffdf000 74288bf4 00000000 00000000 kernel32!BaseThreadInitThunk+0x0 (f:\dd\vctools\crt_bld\self_x86\crt\src\crt0.c:263) 0012ffd4 7739198e 0050edc1 7ffdf000 00000000 00000000 ntdll!RtlInitializeExceptionChain+0x0 (f:\dd\vctools\crt_bld\self_x86\crt\src\crt0.c:263) 0012ffec 00000000 0050edc1 7ffdf000 00000000 78746341 ntdll!RtlInitializeExceptionChain+0x0 (f:\dd\vctools\crt_bld\self_x86\crt\src\crt0.c:263) static inline char* realloc_aux(char* p, int len) { #ifdef _WIN32 if (_msize(p) >= len) return p; return (char*) realloc(p, len*2); #else return (char*) realloc(p, len); #endif } Any ideas why _msize(p) generates exception here? ... ----- Original Message ----- From: "Rom Walton" <[email protected]> To: "Raistmer" <[email protected]>; <[email protected]> Sent: Monday, August 02, 2010 4:06 AM Subject: RE: [boinc_dev] Incorrect function when running under BOINC Odd, assuming that your variant of the app is setup for static CRT compilation it should be working. The only time I've seen that error before is when a different function(Entry Point), from the default name, is specified to launch the application. Basically when a non-standard entry point is used, the CRT cannot prepare the process for the likes of malloc et al. ----- Rom -----Original Message----- From: Raistmer [mailto:[email protected]] Sent: Sunday, August 01, 2010 5:59 PM To: Raistmer; Rom Walton; [email protected] Subject: Re: [boinc_dev] Incorrect function when running under BOINC And now it fails with "CRT uninitialized" popup box even in offline mode. It's regress, not progress :/ What BOINC libs should be used? ----- Original Message ----- From: "Raistmer" <[email protected]> To: "Raistmer" <[email protected]>; "Rom Walton" <[email protected]>; <[email protected]> Sent: Monday, August 02, 2010 1:47 AM Subject: Re: [boinc_dev] Incorrect function when running under BOINC >I linked vs libboinc_staticcrt.lib and libboincapi_staticcrt.lib compiled >from current trunk. > Now app not only fails, it summons exception data gathering window (under > Vista) and prompts to launch debugger. > In call stack place of failure is in malloc function now %) Same BOINC API > call as before... > > ----- Original Message ----- > From: "Raistmer" <[email protected]> > To: "Rom Walton" <[email protected]>; <[email protected]> > Sent: Monday, August 02, 2010 1:17 AM > Subject: Re: [boinc_dev] Incorrect function when running under BOINC > > >> It was 6.10.56 tag. >> Will try with trunk then. >> >> ----- Original Message ----- >> From: "Rom Walton" <[email protected]> >> To: "Raistmer" <[email protected]>; <[email protected]> >> Sent: Monday, August 02, 2010 12:26 AM >> Subject: RE: [boinc_dev] Incorrect function when running under BOINC >> >> >> How recent is the BOINC API you are building with? Trunk or some other >> branch? If some other branch you should switch to using trunk. >> >> We have had problems in the past with memset calls zeroing out complex >> data types like std::string and std::vector in the HOST_INFO structure. >> >> ----- Rom >> >> -----Original Message----- >> From: Raistmer [mailto:[email protected]] >> Sent: Sunday, August 01, 2010 4:05 PM >> To: Rom Walton; [email protected] >> Subject: Re: [boinc_dev] Incorrect function when running under BOINC >> >> Yes, call stack presents: >> But it's inside BOINC API call... >> 0012ed40 004b8ed3 00000000 00000000 00000000 00000000 >> ntdll!DbgBreakPoint+0x0 >> >> 0012ed58 004e4f2c 00000000 0012ed88 0012ed78 004e4e53 >> MB_6.10_win_SSE3_ATI_r103!_invalid_parameter_noinfo+0xc >> (f:\dd\vctools\crt_bld\self_x86\crt\src\invarg.c:125) >> >> 0012ed68 004e4e53 00000000 0012ed88 0012ed90 004e4dc3 >> MB_6.10_win_SSE3_ATI_r103!std::_Vector_const_iterator<_BOINC_MESSAGEMONI >> TORENTRY >> *,std::allocator<_BOINC_MESSAGEMONITORENTRY *> >::operator+=+0x14 >> (p:\bin\vs9\vc\include\vector:160) >> >> 0012ed78 004e4dc3 00000000 0012eda8 00000000 0170ff68 >> MB_6.10_win_SSE3_ATI_r103!std::_Vector_iterator<_BOINC_THREADLISTENTRY >> *,std::allocator<_BOINC_THREADLISTENTRY *> >::operator+=+0x0 >> (p:\bin\vs9\vc\include\vector:376) >> >> 0012ed90 004e48cd 0012eddc 00000000 00000000 005315c0 >> MB_6.10_win_SSE3_ATI_r103!std::_Vector_iterator<_BOINC_MESSAGEMONITORENT >> RY >> *,std::allocator<_BOINC_MESSAGEMONITORENTRY *> >::operator++0xc >> (p:\bin\vs9\vc\include\vector:382) >> >> 0012edbc 004e477c 0012eddc 00000000 00000000 0012ee10 >> MB_6.10_win_SSE3_ATI_r103!std::vector<_BOINC_THREADLISTENTRY >> *,std::allocator<_BOINC_THREADLISTENTRY *> >::insert+0x1b >> (p:\bin\vs9\vc\include\vector:878) >> >> 0012edf4 004ef52d 0012ee10 6a5888c6 001b9860 0012f078 >> MB_6.10_win_SSE3_ATI_r103!std::vector<_BOINC_MESSAGEMONITORENTRY >> *,std::allocator<_BOINC_MESSAGEMONITORENTRY *> >::push_back+0x0 >> (p:\bin\vs9\vc\include\vector:824) >> >> 0012f24c 004eb0d6 0012f6b0 00530a30 20202020 706f633c >> MB_6.10_win_SSE3_ATI_r103!COPROCS::parse+0x0 >> (d:\r\seti6\boinc\lib\coproc.cpp:140) >> >> 0012f664 004e0762 0012f6b0 00000000 6a58806a 0042005c >> MB_6.10_win_SSE3_ATI_r103!HOST_INFO::parse+0x0 >> (d:\r\seti6\boinc\lib\hostinfo.cpp:111) >> >> 0012fae0 004f151a 00525ed8 005300e8 00525ed8 00525e98 >> MB_6.10_win_SSE3_ATI_r103!parse_init_data_file+0x0 >> (d:\r\seti6\boinc\lib\app_ipc.cpp:297) >> >> 0012faf8 0040d74b 00525eb8 00525e98 0170f7b0 00000000 >> MB_6.10_win_SSE3_ATI_r103!_boinc_parse_init_data_file+0x0 >> (d:\r\seti6\boinc\lib\app_ipc.cpp:297) >> >> ----- Original Message ----- >> From: "Rom Walton" <[email protected]> >> To: "Raistmer" <[email protected]>; <[email protected]> >> Sent: Sunday, August 01, 2010 11:28 PM >> Subject: RE: [boinc_dev] Incorrect function when running under BOINC >> >> >> Well 0x80000003 is what error code is returned when an application >> asserts, which is different than the original error code. >> >> Both of these lines are generated by the C Runtime Library and should be >> properly filled out by rebuilding the application in the debug >> configuration. >> ERROR: Invalid parameter detected in function (null). File: (null) Line: >> 0? >> ERROR: Expression: (null)? >> >> However if the app did assert and returned 0x80000003 it should have >> also returned a crash report which should include the call stacks of all >> the threads which should give you the same information that the two >> ERROR lines above would give. >> >> ----- Rom >> >> -----Original Message----- >> From: Raistmer [mailto:[email protected]] >> Sent: Sunday, August 01, 2010 3:12 PM >> To: Raistmer; Rom Walton; [email protected] >> Subject: Re: [boinc_dev] Incorrect function when running under BOINC >> >> Now I advanced further and got error in BOINC function call: >> >> Code: >> // Initialize BOINC >> // >> fprintf(stderr,"before boinc_parse_init_data_file\n"); >> boinc_parse_init_data_file(); >> fprintf(stderr,"before boinc_get_init_data\n"); >> >> STDERR: >> <![CDATA[ >> <message> >> ????????? ?????? ??????????? (0x80000003) - exit code -2147483645 >> (0x80000003) >> </message> >> <stderr_txt> >> after diagnstic init? >> before boinc_parse_init_data_file? >> ERROR: Invalid parameter detected in function (null). File: (null) Line: >> 0? >> ERROR: Expression: (null)? >> >> What could be wrong there? >> >> ----- Original Message ----- >> From: "Raistmer" <[email protected]> >> To: "Raistmer" <[email protected]>; "Rom Walton" <[email protected]>; >> <[email protected]> >> Sent: Saturday, July 24, 2010 10:31 PM >> Subject: Re: [boinc_dev] Incorrect function when running under BOINC >> >> >>> Well, i added few fprintfs just after init diagnostics, boinc init >> call >>> and so on. >>> there is nothing in stderr again. Probably it means very first boinc >> api >>> call, init diagnostic, failed and caused exit(1) call. Any thoughts >> why it >>> could fail? >>> >>> ----- Original Message ----- >>> From: "Raistmer" <[email protected]> >>> To: "Rom Walton" <[email protected]>; <[email protected]> >>> Sent: Tuesday, July 20, 2010 12:12 PM >>> Subject: Re: [boinc_dev] Incorrect function when running under BOINC >>> >>> >>>> Thanks! >>>> What I found: >>>> >>>> 0) >>>> if (err != CL_SUCCESS) { >>>> std::cerr << "ERROR: " << name << " (" << err << ")" << >>>> std::endl; >>>> exit(1); >>>> } >>>> Not th case, no "ERROR" in stderr. >>>> 1) >>>> fprintf(stderr, "bad arg: %s\n", argv[i]); >>>> usage(); >>>> exit(1); >>>> Not the case cause no "bad arg" in stderr >>>> >>>> 2) >>>> PowerSpectrum = (float*) calloc_a(NumPointsInChunk, sizeof(float), >>>> MEM_ALIGN); >>>> if (PowerSpectrum == NULL) { >>>> printf("Could not allocate Power Spectrum array in >>>> v_BaseLineSmooth()\n"); >>>> exit(1); >>>> } >>>> >>>> can't say if it's what I looking for cause additional output goes to >> >>>> stdout >>>> instead of stderr, need to rebuild to check... >>>> >>>> But if it's very place, why buffer allocation fails under BOINC while >> it >>>> goes OK w/o it? >>>> >>>> ----- Original Message ----- >>>> From: "Rom Walton" <[email protected]> >>>> To: "Raistmer" <[email protected]>; <[email protected]> >>>> Sent: Tuesday, July 20, 2010 11:47 AM >>>> Subject: RE: [boinc_dev] Incorrect function when running under BOINC >>>> >>>> >>>> Search the source code of the app for exit(1) or exit(EXIT_FAILURE) >>>> >>>> ----- Rom >>>> >>>> -----Original Message----- >>>> From: [email protected] >>>> [mailto:[email protected]] On Behalf Of Raistmer >>>> Sent: Tuesday, July 20, 2010 3:41 AM >>>> To: [email protected] >>>> Subject: [boinc_dev] Incorrect function when running under BOINC >>>> >>>> When running offline app works OK, but being launched by BOINC it >> fails >>>> with >>>> "incorrect function exit code 0x1" >>>> Stderr: >>>> <stderr_out> >>>> <![CDATA[ >>>> <message> >>>> =ooo?y? ??yu?o . (0x1) - exit code 1 (0x1) >>>> </message> >>>> ]]> >>>> </stderr_out> >>>> >>>> No additional info available. >>>> Maybe there are some known possible reasons of such behavior? Someone >>>> encountered such situation? >>>> >>>> _______________________________________________ >>>> boinc_dev mailing list >>>> [email protected] >>>> http://lists.ssl.berkeley.edu/mailman/listinfo/boinc_dev >>>> To unsubscribe, visit the above URL and >>>> (near bottom of page) enter your email address. >>>> >>>> _______________________________________________ >>>> boinc_dev mailing list >>>> [email protected] >>>> http://lists.ssl.berkeley.edu/mailman/listinfo/boinc_dev >>>> To unsubscribe, visit the above URL and >>>> (near bottom of page) enter your email address. >>>> >>> >>> >> >> _______________________________________________ >> boinc_dev mailing list >> [email protected] >> http://lists.ssl.berkeley.edu/mailman/listinfo/boinc_dev >> To unsubscribe, visit the above URL and >> (near bottom of page) enter your email address. >> > > _______________________________________________ boinc_dev mailing list [email protected] http://lists.ssl.berkeley.edu/mailman/listinfo/boinc_dev To unsubscribe, visit the above URL and (near bottom of page) enter your email address.
