Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 3 Jun 2008 13:21:41 +0200
From:      Marc =?iso-8859-1?q?L=F6rner?= <marc.loerner@hob.de>
To:        freebsd-net@freebsd.org
Subject:   Unaligned references in /usr/src/sys/netinet6/in6.h
Message-ID:  <200806031321.41768.marc.loerner@hob.de>

next in thread | raw e-mail | index | archive | help
Hello,

within testing on a ia64-platform I spotted unaligned references in the 
macros:
IN6_IS_ADDR_UNSPECIFIED(a), IN6_IS_ADDR_LOOPBACK(a), 
IN6_IS_ADDR_V4COMPAT(a) and IN6_IS_ADDR_V4MAPPED(a)

It's not always true that the s6_addr array is aligned to 4-byte and this 
causes some trouble at least with ia64-platforms.

After changing from u_int32_t to u_int8_t accesses the unalignment faults seem 
to be gone.

Regards,
Marc

P.S.: On replies please CC me because I'm not on the list.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200806031321.41768.marc.loerner>