On Thu, Jun 18, 2020 at 08:49:07PM +0800, we...@ucloud.cn wrote: > From: wenxu <we...@ucloud.cn> > > v2: > patch2: store the cb_priv of representor to the flow_block_cb->indr.cb_priv > in the driver. And make the correct check with the statments > this->indr.cb_priv == cb_priv > > patch4: del the driver list only in the indriect cleanup callbacks > > v3: > add the cover letter and changlogs. > > v4: > collapsed 1/4, 2/4, 4/4 in v3 to one fix > Add the prepare patch 1 and 2 > > v5: > patch1: place flow_indr_block_cb_alloc() right before > flow_indr_dev_setup_offload() to avoid moving flow_block_indr_init() > > This series fixes commit 1fac52da5942 ("net: flow_offload: consolidate > indirect flow_block infrastructure") that revists the flow_block > infrastructure. > > patch #1 #2: prepare for fix patch #3 > add and use flow_indr_block_cb_alloc/remove function > > patch #3: fix flow_indr_dev_unregister path > If the representor is removed, then identify the indirect flow_blocks > that need to be removed by the release callback and the port representor > structure. To identify the port representor structure, a new > indr.cb_priv field needs to be introduced. The flow_block also needs to > be removed from the driver list from the cleanup path > > > patch#4 fix block->nooffloaddevcnt warning dmesg log. > When a indr device add in offload success. The block->nooffloaddevcnt > should be 0. After the representor go away. When the dir device go away > the flow_block UNBIND operation with -EOPNOTSUPP which lead the warning > demesg log. > The block->nooffloaddevcnt should always count for indr block. > even the indr block offload successful. The representor maybe > gone away and the ingress qdisc can work in software mode. > > > wenxu (4): > flow_offload: add flow_indr_block_cb_alloc/remove function > flow_offload: use flow_indr_block_cb_alloc/remove function > net: flow_offload: fix flow_indr_dev_unregister path > net/sched: cls_api: fix nooffloaddevcnt warning dmesg log
Reviewed-by: Simon Horman <simon.hor...@netronome.com>