Messages in this thread | | | Subject | Re: [RFC V2 net-next 1/2] ethtool: add support for controling the type of adaptive coalescing | From | tanhuazhong <> | Date | Sat, 21 Nov 2020 10:00:36 +0800 |
| |
On 2020/11/20 23:25, Andrew Lunn wrote: >> @@ -310,6 +334,13 @@ int ethnl_set_coalesce(struct sk_buff *skb, struct genl_info *info) >> ret = dev->ethtool_ops->set_coalesce(dev, &coalesce); >> if (ret < 0) >> goto out_ops; >> + >> + if (ops->set_ext_coalesce) { >> + ret = ops->set_ext_coalesce(dev, &ext_coalesce); >> + if (ret < 0) >> + goto out_ops; >> + } >> + > > The problem here is, if ops->set_ext_coalesce() fails, you need to > undo what dev->ethtool_ops->set_coalesce() did. From the users > perspective, this should be atomic. It does everything, or it does > nothing and returns an error code. > > And that is not easy given this structure of two op calls. > > Andrew >
yes, i will try what Michal suggested in V1.
Regards. Huazhong.
> . >
| |