On 3/10/21 8:02 AM, Petr Machata wrote: > Implement the following notifications towards drivers: > > - NEXTHOP_EVENT_REPLACE, when a resilient nexthop group is created. > > - NEXTHOP_EVENT_BUCKET_REPLACE any time there is a change in assignment of > next hops to hash table buckets. That includes replacements, deletions, > and delayed upkeep cycles. Some bucket notifications can be vetoed by the > driver, to make it possible to propagate bucket busy-ness flags from the > HW back to the algorithm. Some are however forced, e.g. if a next hop is > deleted, all buckets that use this next hop simply must be migrated, > whether the HW wishes so or not. > > - NEXTHOP_EVENT_RES_TABLE_PRE_REPLACE, before a resilient nexthop group is > replaced. Usually the driver will get the bucket notifications as well, > and could veto those. But in some cases, a bucket may not be migrated > immediately, but during delayed upkeep, and that is too late to roll the > transaction back. This notification allows the driver to take a look and > veto the new proposed group up front, before anything is committed. > > Signed-off-by: Petr Machata <pe...@nvidia.com> > Reviewed-by: Ido Schimmel <ido...@nvidia.com> > --- > > Notes: > v1 (changes since RFC): > - u32 -> u16 for bucket counts / indices >
Reviewed-by: David Ahern <dsah...@kernel.org>