Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  <19992000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  Index 1994  1995  1996  1997  1998  <19992000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019 
<== Date ==> <== Thread ==>

Subject: Tornado Tool usage.
From: Ron Sluiter <sluiter@aps.anl.gov>
To: EPICS <tech-talk@aps.anl.gov>
Date: Wed, 15 Sep 1999 16:44:47 -0500
Notice to anyone using CrossWind in "system" mode with EPICS.

There is a bug.  CrossWind crashes in "system" mode when the
target system has task names with embedded spaces (e.g.,
"CA TCP", "EV dbCaLink", etc.).

Wind River has issued an SPR on this (#28322), but for some
reason, they have not yet put it on their Wind Surf web
site.  Eventually, I should get a response from Wind River
as to what a valid task name is in the context of the Tornado
tools.

The following is part of an e-mail I sent to
a Wind River tech support person.  It describes the
problem in some detail.


> In the file $WIND_BASE/host/src/vxgdb/gdb/remote-wtx.c
> is a function "taskListBuild()".
> 
> As described in taskListBuild()'s header, this function
> "builds an internal list of tasks running on the target".
> 
> Also described in taskListBuild()'s header,
> * This query should return a list of the following information for
> * each task:
> *
> * id, name, stack base, stack end and a pointer to the integer
> * register block
> 
> Unfortunately, taskListBuild() does not handle task names with
> embedded spaces well.  Below is a memory dump of "taskInfo".
> Note the last two task entries.  taskListBuild() gets all out
> of synchronization on the "taskInfo" data block when it encounters
> a task name with embedded spaces.  The result is that strtoul()
> is passed a "value" = NULL; and when it tries to read the string,
> the following error occurs.
> 
> Program received signal SIGSEGV, Segmentation fault.
> 0xef5ce9e8 in strtoul ()
> 
> 
> 0x2c4c08: "0x7e8480 tExcTask 0x7e8480 0x7e6540 0x7e85ac
>            0x7e5b6c tLogTask 0x7e5b6c 0x7e47e4 0x7e5c98
>                 .       .       .       .       .
>                 .       .       .       .       .
>                 .       .       .       .       .
>            0x70b684 cbLow 0x70b684 0x708b8c 0x70b7b0
>            0x7089e8 cbMedium 0x7089e8 0x705ef0 0x708b14
>            0x60a170 cbHigh 0x60a170 0x607678 0x60a29c
>            0x6074d4 dbCaLink 0x6074d4 0x6049dc 0x607600
>            0x5fc828 {CA repeater} 0x5fc828 0x5fb440 0x5fc954
>            0x5f50a4 {EV dbCaLink} 0x5f50a4 0x5f3cbc 0x5f51d0"
> 
> I searched VxWorks documentation and found a similar problem
> reported in SPR# 8615.  But that document says;
> "FIXED ON: Jan 20 1998", so this may be a different problem.
> 
> One question I have (from which I don't expect an answer) is;
> Why does this error only show up on my application when CrossWind
> is in system mode?
> 
> My workaround is, of course, to eliminate embedded spaces in
> all task names.  Hopefully, Wind River will either fix this or
> redefine valid task names in future releases.
>


Navigate by Date:
Prev: curious OMS58 Problem / Waveform-Size-Limitation Jens Eden
Next: Re: curious OMS58 Problem / Waveform-Size-Limitation Andrew Johnson
Index: 1994  1995  1996  1997  1998  <19992000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019 
Navigate by Thread:
Prev: Tornado Tool usage. Ron Sluiter
Next: CAN Bus hardware/interface suggestions? Please? Bill Brown
Index: 1994  1995  1996  1997  1998  <19992000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019 
ANJ, 10 Aug 2010 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·