Experimental Physics and Industrial Control System
|
Hi Jeff, hi Eric,
a colleage of mine is trying to get EPICS running on RTEMS running on an
ARM v4t.
The system crashes with a alignment fault in in BSD network stack
function in_control() which gets a struct ifreq pointer. This pointer is
created in osiSockDiscoverBroadcastAddresses(), where you create an
array of such structures by calloc()ing 100 times the size of an struct
ifreq (line 87).
Then you step through the array. When you call socket_ioctl() to get the
broadcast address (line 177), that call causes the crash down in the BSD
stack, because at that point the pointer pifreq is not word-aligned.
We think that somehow within the array the single struct ifreq entries
are not word-aligned - which sounds not very likely looking at the ifreq
definition, or that your stepping algorithm in ifreqNext() (line 38 ff.)
returns a wrong address which is odd.
Any ideas?
What was the reason for using the ifreqNext() function instead of just
stepping with sizeof (struct ifreq)?
Clueless,
Ralph & Ralf
- Replies:
- Re: osiSockDiscoverBroadcastAddresses(): pointer not word-aligned? Eric Norum
- Re: osiSockDiscoverBroadcastAddresses(): pointer not word-aligned? Andrew Johnson
- RE: osiSockDiscoverBroadcastAddresses(): pointer not word-aligned? Jeff Hill
- Navigate by Date:
- Prev:
Re: LabView / CA Andrew Johnson
- Next:
Re: osiSockDiscoverBroadcastAddresses(): pointer not word-aligned? Eric Norum
- Index:
2002
2003
2004
2005
<2006>
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
- Navigate by Thread:
- Prev:
Re: LabView / CA Andrew Johnson
- Next:
Re: osiSockDiscoverBroadcastAddresses(): pointer not word-aligned? Eric Norum
- Index:
2002
2003
2004
2005
<2006>
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
|
ANJ, 02 Feb 2012 |
·
Home
·
News
·
About
·
Base
·
Modules
·
Extensions
·
Distributions
·
Download
·
·
Search
·
EPICS V4
·
IRMIS
·
Talk
·
Bugs
·
Documents
·
Links
·
Licensing
·
|