[ovs-discuss] Flow Monitoring

Ben Pfaff blp at ovn.org
Thu May 23 20:17:21 UTC 2019


On Wed, May 22, 2019 at 04:31:27PM -0400, Vasu Dasari wrote:
> Hi Ben,
> 
> I see that from nicer-ext.h:
> 
> struct nx_flow_monitor_request {
>     ovs_be32 id;                /* Controller-assigned ID for this monitor.
> */
>     ovs_be16 flags;             /* NXFMF_*. */
>     ovs_be16 out_port;          /* Required output port, if not OFPP_NONE.
> */
>     ovs_be16 match_len;         /* Length of nx_match. */
>     uint8_t table_id;           /* One table's ID or 0xff for all tables. */
>     uint8_t zeros[5];           /* Align to 64 bits (must be zero). */
>     /* Followed by:
>      *   - Exactly match_len (possibly 0) bytes containing the nx_match,
> then
>      *   - Exactly (match_len + 7)/8*8 - match_len (between 0 and 7) bytes
> of
>      *     all-zero bytes. */
> };
> 
> But, the data populated by controller is in the following sequence:
> 
>         monitor_id: 32,
>         out_port: 16,
>         out_group: 16,
>         monitor_flags: 16,
>         table_id: 8,
>         command: 8,
>         match_and_padding
> 
> The place where the flags is being extracted
> ofputil_decode_flow_monitor_request(),
> I see that flags is extracted first. This could be an issue.
> 
> I have't tried out my assumption yet. Does it make sense??
> 
> Could this be a software bug?

No.


More information about the discuss mailing list