Stephen Hemminger wrote:
On Wed, 20 Dec 2017 09:37:30 +0200
Serhey Popovych [off-list ref] wrote:
quoted
In case of we update existing entry we need not only rehash
but also update name in existing entry.
Need to update device type too since cached interface might
be deleted and new with same index, but different type
added (e.g. eth0 and ppp0).
Reuse new entry initialization path to avoid duplications.
Signed-off-by: Serhey Popovych <redacted>
Can you provide an example where this is an observed bug?
I suspect that unless you use a batch mode command the reload
of the cache on next invocation is solving this.
From my side example from description is pretty clear: eth0 -> ppp0
or rename eth0 -> eth1, etc.
According to ll_remember_index() code we might be called with
non-empty cache. If ll_get_by_index() returns an entry with
name that differs from current we need:
1. Rehash in ->name_hash (done with current code)
2. Update entry name (not done with current code)
That's my point of view.
Thanks.