• David S. Miller's avatar
    net: Align IFLA_STATS64 attributes properly on architectures that need it. · 18402843
    David S. Miller authored
    Since the nlattr header is 4 bytes in size, it can cause the netlink
    attribute payload to not be 8-byte aligned.
    
    This is particularly troublesome for IFLA_STATS64 which contains 64-bit
    statistic values.
    
    Solve this by creating a dummy IFLA_PAD attribute which has a payload
    which is zero bytes in size.  When HAVE_EFFICIENT_UNALIGNED_ACCESS is
    false, we insert an IFLA_PAD attribute into the netlink response when
    necessary such that the IFLA_STATS64 payload will be properly aligned.
    
    With help and suggestions from Eric Dumazet.
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    18402843
rtnetlink.c 87.6 KB