I've found a case where memcpy() is failing on copies longer that 4
bytes. 

Closer investigation found that the destination pointer is not pointing
to a word aligned address.

The problem comes from the JFFS2 driver where there is a struct that is
being used to create the destination pointer for the memcpy() function.

If I insert my own padding into the struct, my memcpy() problems go
away!
I'm concerned that this problem may be lurking in other areas of code.
(I get no warnings during compile)

On the MPC5200B processor, is that the assumed behavior for an unaligned
memcpy()??
Is there a gcc option to force word alignment??

I'm using a MontaVista supplied kernel and compiler. (not my choice!) 
Unfortunately, six weeks later, MontaVista is still confused.

Thanks for any help you can offer,

Chuck Wright


_______________________________________________
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev

Reply via email to