2014-10-22 16:19, Jingjing Wu:
> +/**
> + * Define all structures for Control Packet Filter type corresponding with 
> specific operations.
> + */

Please explain what is a control packet.

> +
> +#define RTE_CONTROL_PACKET_FLAGS_IGNORE_MAC    0x0001
> +#define RTE_CONTROL_PACKET_FLAGS_DROP          0x0002
> +#define RTE_CONTROL_PACKET_FLAGS_TO_QUEUE      0x0004
> +#define RTE_CONTROL_PACKET_FLAGS_TX            0x0008
> +#define RTE_CONTROL_PACKET_FLAGS_RX            0x0000

Flag RX is 0?

> +/**
> + * A structure used to define the control packet filter entry
> + * to support RTE_ETH_FILTER_CTRL_PKT with RTE_ETH_FILTER_ADD
> + * and RTE_ETH_FILTER_DELETE operations.
> + */
> +struct rte_ctrl_pkt_filter {
> +     struct ether_addr mac_addr;   /**< mac address to match. */
> +     uint16_t ether_type;          /**< ether type to match */
> +     uint16_t flags;               /**< options for filter's behavior*/
> +     uint16_t dest_id;             /**< destination vsi id or pool id*/

vsi id and pool id cannot be understood in a generic context.
Please explain what you mean and why queue is not enough.

> +     uint16_t queue;               /**< queue assign to if TO QUEUE flag is 
> set */

TO QUEUE is not defined. Is it really needed?

Thanks
-- 
Thomas

Reply via email to