Dumitru Ceara <[email protected]> writes: > For example is parsing the OVN "eth.dst[40] = 1;" action, which > triggered the following warning from UndefinedBehaviorSanitizer: > > lib/meta-flow.c:3210:9: runtime error: member access within misaligned > address 0x000000de4e36 for type 'const union mf_value', which requires 8 byte > alignment > 0x000000de4e36: note: pointer points here > 00 00 00 00 01 00 00 00 00 00 00 00 00 00 70 4e de 00 00 00 00 00 10 51 > de 00 00 00 00 00 c0 4f > ^ > #0 0x5818bc in mf_format lib/meta-flow.c:3210 > #1 0x5b6047 in format_SET_FIELD lib/ofp-actions.c:3342 > #2 0x5d68ab in ofpact_format lib/ofp-actions.c:9213 > #3 0x5d6ee0 in ofpacts_format lib/ofp-actions.c:9237 > #4 0x410922 in test_parse_actions tests/test-ovn.c:1360 > > To avoid this we now change the internal representation of the set_field > actions, struct ofpact_set_field, such that the mask is always stored > at a correctly aligned address, multiple of OFPACT_ALIGNTO. > > We also need to adapt the "ovs-ofctl show-flows - Oversized flow" test > because now the ofpact representation of the set_field action uses more > bytes in memory (for the extra alignment). Change the test to use > dec_ttl instead. > > Signed-off-by: Dumitru Ceara <[email protected]> > ---
Acked-by: Aaron Conole <[email protected]> _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
