mirror of
https://github.com/openvswitch/ovs
synced 2025-08-31 14:25:26 +00:00
flow: Improve type-safety of MINIFLOW_GET_TYPE.
Until mow, this macro has blindly read the passed-in type's size, but that's unnecessarily risky. This commit changes it to verify that the passed-in type is the same size as the field and, on GCC and Clang, that the types are compatible. It also adds a version that does not check, for the one case where (currently) we deliberately read the wrong size, and updates a few uses to use more precise field names. Signed-off-by: Ben Pfaff <blp@ovn.org> Reviewed-by: Yifeng Sun <pkusunyifeng@gmail.com> Reviewed-by: Armando Migliaccio <armamig@gmail.com>
This commit is contained in:
@@ -2200,7 +2200,8 @@ dp_netdev_pmd_lookup_flow(struct dp_netdev_pmd_thread *pmd,
|
||||
{
|
||||
struct dpcls *cls;
|
||||
struct dpcls_rule *rule;
|
||||
odp_port_t in_port = u32_to_odp(MINIFLOW_GET_U32(&key->mf, in_port));
|
||||
odp_port_t in_port = u32_to_odp(MINIFLOW_GET_U32(&key->mf,
|
||||
in_port.odp_port));
|
||||
struct dp_netdev_flow *netdev_flow = NULL;
|
||||
|
||||
cls = dp_netdev_pmd_lookup_dpcls(pmd, in_port);
|
||||
|
Reference in New Issue
Block a user