EmbeddedRelated.com
Forums

2.6.20.4 on ARM: "Unknown signal 64"????

Started by che_lex September 23, 2007
G'day,

I am porting software from intel to ARM with linux 2.6.20.4. All goes
fine. Except, I got "Unknown signal 64" signal every time I started
fresh compiled software on target ARM machine. This is USB bus
software. And on start it calls kernel module of a corresponding
driver for the USB device. After "Unknown signal 64", software dies
but kernel module stays working. What this signal anyway????

Regards,
chelex

che_lex wrote:
> G'day, > > I am porting software from intel to ARM with linux 2.6.20.4. All goes > fine. Except, I got "Unknown signal 64" signal every time I started > fresh compiled software on target ARM machine. This is USB bus > software. And on start it calls kernel module of a corresponding > driver for the USB device. After "Unknown signal 64", software dies > but kernel module stays working. What this signal anyway???? > > Regards, > chelex
It could be mis-aligned 16 or 32 bit data. The 80x86 family is not fussy about alignment, but ARMs may do surprising things with mis-aligned data. I had similar problems when porting Linux code initially tested on PC's to pure RISC architectures (Sparc, ARM). -- Tauno Voipio tauno voipio (at) iki fi
On Sep 24, 6:29 pm, Tauno Voipio <tauno.voi...@INVALIDiki.fi> wrote:
> che_lex wrote: > > G'day, > > > I am porting software from intel to ARM with linux 2.6.20.4. All goes > > fine. Except, I got "Unknown signal 64" signal every time I started > > fresh compiled software on target ARM machine. This is USB bus > > software. And on start it calls kernel module of a corresponding > > driver for the USB device. After "Unknown signal 64", software dies > > but kernel module stays working. What this signal anyway???? > > > Regards, > > chelex > > It could be mis-aligned 16 or 32 bit data. The 80x86 family > is not fussy about alignment, but ARMs may do surprising > things with mis-aligned data. > > I had similar problems when porting Linux code initially > tested on PC's to pure RISC architectures (Sparc, ARM). > > -- > > Tauno Voipio > tauno voipio (at) iki fi
Thank you. Obliged for reply. Is it possible to overcome these problems with compile settings or any other way???
che_lex wrote:
> On Sep 24, 6:29 pm, Tauno Voipio <tauno.voi...@INVALIDiki.fi> wrote: > >>che_lex wrote: >> >>>G'day, >> >>>I am porting software from intel to ARM with linux 2.6.20.4. All goes >>>fine. Except, I got "Unknown signal 64" signal every time I started >>>fresh compiled software on target ARM machine. This is USB bus >>>software. And on start it calls kernel module of a corresponding >>>driver for the USB device. After "Unknown signal 64", software dies >>>but kernel module stays working. What this signal anyway???? >> >>>Regards, >>>chelex >> >>It could be mis-aligned 16 or 32 bit data. The 80x86 family >>is not fussy about alignment, but ARMs may do surprising >>things with mis-aligned data. >> >>I had similar problems when porting Linux code initially >>tested on PC's to pure RISC architectures (Sparc, ARM). >> >>-- >> >>Tauno Voipio >>tauno voipio (at) iki fi > > > Thank you. Obliged for reply. > > Is it possible to overcome these problems with compile settings or any > other way???
No - sorry. Run the program in debug mode and check the place of the trap. You may find the cause by examining the trapped instruction and the register contents. Of course, you need the sources to find the real culprit. If it is a structure, you may get the desired results by declaring with the attribute 'packed'. Check GCC manual for details. Please not that declaring everything 'packed' may slow your program to a crawl. HTH -- Tauno Voipio