X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=datapath%2Fflow_table.h;h=ee8695371c999652a082d612f235dffc4d5fa615;hb=ec988646afe6aee6a63d6894a3e9b50f715d5941;hp=281d1da8d71cd25f6bf7e7ca4b2e7aaa5711ca3f;hpb=5604935e4e1cbc16611d2d97f50b717aa31e8ec5;p=sliver-openvswitch.git diff --git a/datapath/flow_table.h b/datapath/flow_table.h index 281d1da8d..ee8695371 100644 --- a/datapath/flow_table.h +++ b/datapath/flow_table.h @@ -41,6 +41,12 @@ struct mask_cache_entry { u32 mask_index; }; +struct mask_array { + struct rcu_head rcu; + int count, max; + struct sw_flow_mask __rcu *masks[]; +}; + struct table_instance { struct flex_array *buckets; unsigned int n_buckets; @@ -53,7 +59,7 @@ struct table_instance { struct flow_table { struct table_instance __rcu *ti; struct mask_cache_entry __percpu *mask_cache; - struct list_head mask_list; + struct mask_array __rcu *mask_array; unsigned long last_rehash; unsigned int count; };