On Wed, 17 Mar 2021 09:47:45 +0800 Huazhong Tan wrote:
> On 2021/3/16 4:00, Jakub Kicinski wrote:
> > On Mon, 15 Mar 2021 20:23:47 +0800 Huazhong Tan wrote:  
> >> From: Jian Shen <shenjia...@huawei.com>
> >>
> >> Currently, there are 3 flow director work modes in HNS3 driver,
> >> include EP(ethtool), tc flower and aRFS. The flow director rules
> >> are configured synchronously and need holding spin lock. With this
> >> limitation, all the commands with firmware are also needed to use
> >> spin lock.
> >>
> >> To eliminate the limitation, configure flow director rules
> >> asynchronously. The rules are still kept in the fd_rule_list
> >> with below states.
> >> TO_ADD: the rule is waiting to add to hardware
> >> TO_DEL: the rule is waiting to remove from hardware
> >> ADDING: the rule is adding to hardware
> >> ACTIVE: the rule is already added in hardware
> >>
> >> When receive a new request to add or delete flow director rule,
> >> check whether the rule location is existent, update the rule
> >> content and state, and request to schedule the service task to
> >> finish the configuration.
> >>
> >> Signed-off-by: Jian Shen <shenjia...@huawei.com>
> >> Signed-off-by: Huazhong Tan <tanhuazh...@huawei.com>  
> > How is the application supposed to know if the ethtool rule was already
> > installed or installation is still pending?  
> 
> 
> Yes, it's unable for the application to know whether pending or installed.
> 
> The primitive motivation is to move out the aRFS rule configuration from
> IO path. To keep consistent, so does the ethtool way. We thought
> of it before, considered that the time window between the two state is
> very small.
> 
> How about keep aRFS asynchronously, and the ethtool synchronously?

That'd be fine by me.

Reply via email to