VM crash

Cowdery, Bob [UK] Bob.Cowdery at CGI-Europe.com
Sun Jun 4 18:37:24 UTC 2006



On Sun, Jun 04, 2006 at 01:12:12PM +0100, Bob.Cowdery at CGI-Europe.com
wrote:
> Hi all,
> 
> I do hope someone can help me out here because it's a real stopper for
my
> app. I was getting sporadic VM crashes when calling my plugin, which I
have
> now got down to a very small subset of code to reproduce the problem.
The
> crash dump never has a stack trace and sometimes it fails so bad no
dump is
> produced. Essentially what I have is a 'C' method that returns and
array of
> 4096 float values. I have taken away all the application C code and
simply
> load and return an array, so I am quite sure it's not the C code
that's
> breaking but somewhere in the C/Squeak interface. Here is what I have
> (stripped to minimum for clarity). For testing I am running this flat
out in
> a loop. If I run 100,000 iterations I will usually but not always get
a
> crash. Is there anything I can do to isolate this a bit further?
> 
> Thanks in advance for any help.

>> I tried building your test plugin code on my Linux system, and it
>> works just fine. The test method returns the expected array of floats
>> from 0.0 through 4095.0. I ran this test method 1,000,000 times with
>> no errors, and ran it again still with no errors (2 million
iterations
>> total).

>> I'd be quite surprised if there was any difference between the
>> windows and unix VMs in this case, but I guess nothing is impossible.

>> I'm attaching the actual code that I ran for your reference. You
>> might want to try building this exact code on your system just as
>> a double-check to be sure there is not something else going on in
>> your plugin that somehow affects this test.

Dave

Thanks very much for taking the time to do that. I built what you sent
back into a separate plugin and ran it with your code. I set it going on
two machines. My desktop is still running at 605,000 odd but my laptop
crashed after 108,843 with this dump. I don't really know what to think
at the moment. I guess I need somehow to get a debugger going. This
could be a long haul. My other plugin is still loaded but wasn't active.
The machine that's still running doesn't have it loaded. I will try with
it active though heaven knows why an inactive dll should make a
difference.

Bob

---------------------------------------------------------------------
Sun Jun 04 19:21:53 2006

Exception code: C0000005
Exception addr: 00419EED
Access violation (read access) at 21F41A44
EAX:21F41A44	EBX:80000002	ECX:00000001	EDX:00000000
ESI:11EF59C4	EDI:11EF580C	EBP:11EA60D0	ESP:0006FBA8
EIP:00419EED	EFL:00210246
FP Control: FFFF037F
FP Status:  FFFF4020
FP Tag:     FFFFFFFF
VM Version: Squeak 3.7.1 (release) from Sep 23 2004
Compiler: gcc 2.95.2 19991024 (release)

Current byte code: 217
Primitive index: 0

Loaded plugins:
	ZipPlugin 23 September 2004 (i)
	TestForBob 4 June 2006 (e)
	SoundGenerationPlugin 23 September 2004 (i)
	SoundPlugin 23 September 2004 (i)
	SDRDttSpDSPPlugin 4 June 2006 (e)
	DirectTransportPlugin 7 December 2004 (e)
	JPEGReadWriter2Plugin 23 September 2004 (i)
	LargeIntegers v1.3 23 September 2004 (i)
	SocketPlugin 23 September 2004 (i)
	Matrix2x3Plugin 23 September 2004 (i)
	FloatArrayPlugin 23 September 2004 (i)
	B2DPlugin 23 September 2004 (i)
	BitBltPlugin 23 September 2004 (i)
	SecurityPlugin 23 September 2004 (i)
	FilePlugin 23 September 2004 (i)
	MiscPrimitivePlugin 23 September 2004 (i)


Stack dump:

300915876 [] in Delay>schedule
300916060 [] in Semaphore>critical:
300916244 BlockContext>ensure:
300915968 Semaphore>critical:
300915784 Delay>schedule
300915508 Delay>wait
300915600 [] in EventSensor>eventTickler
300915416 BlockContext>on:do:
299589928 EventSensor>eventTickler
299589652 [] in EventSensor>installEventTickler
299589836 [] in BlockContext>newProcess
*** Confidentiality Notice *** Proprietary/Confidential
Information belonging to CGI Group Inc. and its affiliates
may be contained in this message. If you are not a recipient
indicated or intended in this message (or responsible for
delivery of this message to such person), or you think for
any reason that this message may have been addressed to you
in error, you may not use or copy or deliver this message
to anyone else.  In such case, you should destroy this
message and are asked to notify the sender by reply email.



More information about the Squeak-dev mailing list