[ovs-dev] [PATCH] datapath: Fix unaligned access when storing stats.

Ben Pfaff blp at nicira.com
Fri Nov 18 21:42:43 UTC 2011


On Fri, Nov 18, 2011 at 01:39:37PM -0800, Jesse Gross wrote:
> On Fri, Nov 18, 2011 at 1:36 PM, Ben Pfaff <blp at nicira.com> wrote:
> > On Fri, Nov 18, 2011 at 11:08:08AM -0800, Jesse Gross wrote:
> >> Both datapath and vport stats contain 64-bit members in a struct
> >> but we write them directly in Netlink attributes which only
> >> guarantee 32-bit alignment. ??This causes problems on RISC
> >> architectures that care about alignment so this computes the stats
> >> on the stack and then memcpy's them.
> >>
> >> Signed-off-by: Jesse Gross <jesse at nicira.com>
> >
> > I think that it only causes performance problems. ??The network stack
> > doesn't worry about unaligned accesses in cases where the unaligned
> > accesses are rare.
> 
> I thought that as well but it doesn't appear to be the case for
> accesses in process context: on SPARC this was filling the kernel log
> with error messages and killing ovs-vswitchd.

Wow.  I learned something.  Thanks for letting me know.



More information about the dev mailing list