[ovs-dev] [PATCH ovs V3 07/25] dpif-netlink: Flush added ports using netdev flow api
Roi Dayan
roid at mellanox.com
Wed Feb 15 09:15:58 UTC 2017
On 14/02/2017 17:53, Simon Horman wrote:
> On Wed, Feb 08, 2017 at 05:29:20PM +0200, Roi Dayan wrote:
>> From: Paul Blakey <paulb at mellanox.com>
>>
>> If netdev flow offloading is enabled, flush all
>> added ports using netdev flow api.
>>
>> Signed-off-by: Paul Blakey <paulb at mellanox.com>
>> Reviewed-by: Roi Dayan <roid at mellanox.com>
>
> ...
>
>> diff --git a/lib/netdev.c b/lib/netdev.c
>> index 792ab8c..a0206b0 100644
>> --- a/lib/netdev.c
>> +++ b/lib/netdev.c
>> @@ -2225,6 +2225,50 @@ netdev_hmap_port_del(odp_port_t port_no, const void *obj)
>> return ret;
>> }
>>
>> +void
>> +netdev_ports_flow_flush(const void *obj)
>> +{
>> + struct port_to_netdev_data *data;
>> +
>> + HMAP_FOR_EACH(data, node, &port_to_netdev) {
>> + if (data->obj == obj) {
>> + netdev_flow_flush(data->netdev);
>> + }
>> + }
>> +}
>> +
>> +struct netdev_flow_dump **
>> +netdev_ports_flow_dumps_create(const void *obj, int *ports)
>> +{
>> + struct port_to_netdev_data *data;
>> + struct netdev_flow_dump **dumps;
>> + int count = 0;
>> + int i = 0;
>> +
>> + HMAP_FOR_EACH(data, node, &port_to_netdev) {
>> + if (data->obj == obj) {
>> + count++;
>> + }
>> + }
>> +
>> + dumps = count ? xzalloc(sizeof(dumps[0]) * count) : NULL;
>> +
>> + HMAP_FOR_EACH(data, node, &port_to_netdev) {
>> + if (data->obj == obj) {
>> + int err = netdev_flow_dump_create(data->netdev, &dumps[i]);
>> + if (err) {
>> + continue;
>> + }
>> +
>> + dumps[i]->port = data->dpif_port.port_no;
>> + i++;
>> + }
>> + }
>> +
>> + *ports = i;
>> + return dumps;
>> +}
>> +
>> bool netdev_flow_api_enabled = false;
>>
>> void
>
> netdev_ports_flow_dumps_create() does not appear to relate to changelog.
> Perhaps it should be moved to a different or new patch?
>
right. should be with patch
"dpif-netlink: Dump netdevs flows on flow dump"
More information about the dev
mailing list