On 22/03/2014 08:13, Chris Hegarty wrote:
The native SCTP implementation assumes that the given byte buffer ( buffer
address + position ) is memory aligned. It re-uses the buffer for handling
notifications from the SCTP Stack ( as well as for reading data off the socket
). This can result in a SIBGUS on sparc(v9) if the address is not 4 byte
aligned [1].
The trivial solution is to copy the SCTP notification into a stack allocated
buffer, for handling, if the given address is not 4 byte aligned.
http://cr.openjdk.java.net/~chegar/8034181/webev.00/webrev/
It looks like the stack allocated buffer will be out of scope when you
use it and I assume it would be safer to declare buf at L465 or so.
-Alan.