[comp.sys.amiga.programmer] 1.3 Shell DeadLock

bombadil@diku.dk (Kristian Nielsen) (01/18/91)

Using the Workbench1.3 (Commodore) shell, I have experienced a dreadfull
deadlock problem. It is extremely difficult to provoke (took me ages to find
a sequence of actions that would cause it), though it can be easily
reproduced. So, before spending still more time, I thought I would try to
get a response from people having the same problems.

The problem seems to be with the automatic execution of script files with
the s bit (typically in the S: directory, like SPat and DPat). To use this
facility to its full, you add a 'path s:' to your startup-sequence, and all
is fine - you can do 'spat type #?' and the like.

However, my problem is that sometimes the shell will deadlock immediately
after typing return on a command, but before loading the command from disk.
Sometimes the entire screen will tremble for a split second before the crash.
The deadlock semms to have nothing to do with the command that locks up, or
the previous one. What happens is that a command sequence like this:

	GetDF1 DF0:		;scriptfile, basically diskcopy df0: rad:
	cd ...
	assign...
	copy ...
	run ...

will cause the deadlock, while changing the first line to

	s:GetDF1 DF0:
	^
	Note: Absolute path

makes the problem disappear (imagine finding a bug like that....)
The bug persisted even after disabling most of my startup-sequence, which
seems to rule out that third-party programs caused this. My system is an
A2000 with GVP3001 '30/'882/4Mb/80Mb HD (1 Mb chipmem). I have never had
this problem before installing the 68030, but then I didn't use scriptfiles
much before getting a harddisk.

So, if anyone has any comment to this, especially if this bug is allready
known to Commodore, I should very much like to hear it before trying to
reproduce the bug on a standard WorkBench disk and reporting it through the
proper channels. Also, while I could probably get rid of this problem by
changing to 2.0 (and I think I will, soon), I am getting rather curious as
to what's causing this. So in short, any comments will be welcomed.

	Looking forward to hear from you

	Kristian

==========================================================================
Kristian Nielsen                          |      ///   Only the AMIGA
Student at DIKU, University of Copenhagen |     ///
(Department of Computer Science)          | \\\///     makes it possible!
Denmark                                   |  \XX/
==========================================================================
-- 
==========================================================================
Kristian Nielsen                          |      ///   Only the AMIGA
Student at DIKU, University of Copenhagen |     ///
(Department of Computer Science)          | \\\///     makes it possible!

andy@cbmvax.commodore.com (Andy Finkel) (01/18/91)

In article <1991Jan17.182709.23562@odin.diku.dk> bombadil@diku.dk (Kristian Nielsen) writes:
>However, my problem is that sometimes the shell will deadlock immediately
>after typing return on a command, but before loading the command from disk.
>Sometimes the entire screen will tremble for a split second before the crash.
>The deadlock semms to have nothing to do with the command that locks up, or
>the previous one. What happens is that a command sequence like this:
>
>	GetDF1 DF0:		;scriptfile, basically diskcopy df0: rad:
>	cd ...
>	assign...
>	copy ...
>	run ...
>
>will cause the deadlock, while changing the first line to

I'm not quite sure what you mean by deadlock ... you you mean the
machine hangs and the mouse doesn't move ?  Do you mean crash, ie GURU ?
Do you mean get a software error task held ?

>
>	s:GetDF1 DF0:

My first thought is you have something else called GetDF1 somewhere.
Do a which GetDF1 and see what turns up.


			andy
-- 
andy finkel		{uunet|rutgers|amiga}!cbmvax!andy
Commodore-Amiga, Inc.

"God was able to create the world in only seven days because there
 was no installed base to consider."

Any expressed opinions are mine; but feel free to share.
I disclaim all responsibilities, all shapes, all sizes, all colors.

bombadil@diku.dk (Kristian Nielsen) (01/23/91)

andy@cbmvax.commodore.com (Andy Finkel) writes:

>In article <1991Jan17.182709.23562@odin.diku.dk> bombadil@diku.dk (Kristian Nielsen) writes:
>>However, my problem is that sometimes the shell will deadlock immediately
>>after typing return on a command, but before loading the command from disk.
>>Sometimes the entire screen will tremble for a split second before the crash.
>>The deadlock semms to have nothing to do with the command that locks up, or
>>the previous one. What happens is that a command sequence like this:
>>
>>	GetDF1 DF0:		;scriptfile, basically diskcopy df0: rad:
>>	cd ...
>>	assign...
>>	copy ...
>>	run ...
>>
>>will cause the deadlock, while changing the first line to

>I'm not quite sure what you mean by deadlock ... you you mean the
>machine hangs and the mouse doesn't move ?  Do you mean crash, ie GURU ?
>Do you mean get a software error task held ?

>>
>>	s:GetDF1 DF0:

>My first thought is you have something else called GetDF1 somewhere.
>Do a which GetDF1 and see what turns up.

With deadlock I just meant that the shell process stops executing commands
entered into the cli window - it probably isn't reading them at all, stuck in
a Wait() for example. What I was trying to describe was that the error is
somehow related to the way the shell searches the path, so that specifying
a path relative to the current directory (ie. absolute) removes the problem.

      Kristian

==========================================================================
Kristian Nielsen                          |      ///   Only the AMIGA
Student at DIKU, University of Copenhagen |     ///
(Department of Computer Science)          | \\\///     makes it possible!
Denmark                                   |  \XX/
==========================================================================