It works OK for AP stock. For AP opt app rebuild made it ~2% slower (may be 
in variance range) but works OK too.
Hope it will help MB too (where original problem was), will see.

----- Original Message ----- 
From: "Raistmer" <[email protected]>
To: "Rom Walton" <[email protected]>
Cc: <[email protected]>
Sent: Thursday, August 12, 2010 1:52 AM
Subject: Re: [boinc_dev] Incorrect function when running under BOINC


> OK, will check with stock first and then with opt build.
> BTW, may such AP behavior result in damaged checkpoints (look alpha list 
> for
> problem description) ?
>
> ----- Original Message ----- 
> From: "Rom Walton" <[email protected]>
> To: "Raistmer" <[email protected]>
> Cc: "David Anderson (BOINC)" <[email protected]>;
> <[email protected]>
> Sent: Thursday, August 12, 2010 1:36 AM
> Subject: RE: [boinc_dev] Incorrect function when running under BOINC
>
>
> Okay, the issue causing the 0x80000003 exception should now be fixed in
> the trunk version of BOINC.
>
> The Astropulse client was reusing the same instance of an MFILE class to
> write its current state.  After it wrote it's state it closed the file
> and released the MFILE buffer.  The MFILE class didn't re-create the
> buffer during the next attempt to write the current state.
>
> I have also fixed up the project files for Astropulse and SETI_BOINC so
> that they use the BOINC based projects for libboinc_staticcrt,
> libboincapi_staticcrt, and libgraphics.
>
> Anyway, checkout the stock project files and see if that also fixes the
> CRT problem you sometimes see.
>
> ----- Rom
>
> -----Original Message-----
> From: [email protected]
> [mailto:[email protected]] On Behalf Of Rom Walton
> Sent: Wednesday, August 11, 2010 1:22 PM
> To: David Anderson (BOINC); [email protected]
> Subject: Re: [boinc_dev] Incorrect function when running under BOINC
>
> Which would be a result of the CRT not being initialized.
>
> I've build a private drop of the ap_client with VS 2005.  I'll update
> the project files to 2008 and see what happens.
>
> ----- Rom
>
> -----Original Message-----
> From: [email protected]
> [mailto:[email protected]] On Behalf Of David Anderson
> Sent: Wednesday, August 11, 2010 1:08 PM
> To: [email protected]
> Subject: Re: [boinc_dev] Incorrect function when running under BOINC
>
> The arg to msize() is the result of malloc(64K).
> It looks like the memory-allocation system hasn't been
> initialized.
>
> On 10-Aug-2010 10:42 PM, Rom Walton wrote:
>> 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.
> _______________________________________________
> 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.

Reply via email to