From: Mahesh Bandewar <mah...@bandewar.net> Date: Mon, 9 Jan 2017 15:05:54 -0800
> From: Mahesh Bandewar <mahe...@google.com> > > The patch 009146d117b ("ipvlan: assign unique dev-id for each slave > device.") used ida_simple_get() to generate dev_ids assigned to the > slave devices. However (Eric has pointed out that) there is a shortcoming > with that approach as it always uses the first available ID. This > becomes a problem when a slave gets deleted and a new slave gets added. > The ID gets reassigned causing the new slave to get the same link-local > address. This side-effect is undesirable. > > This patch adds a per-port variable that keeps track of the IDs > assigned and used as the stat-base for the IDR api. This base will be > wrapped around when it reaches the MAX (0xFFFE) value possibly on a > busy system where slaves are added and deleted routinely. > > Fixes: 009146d117b ("ipvlan: assign unique dev-id for each slave device.") > Signed-off-by: Mahesh Bandewar <mahe...@google.com> > CC: Eric Dumazet <eduma...@google.com> > CC: David Miller <da...@davemloft.org> > --- > v1 -> v2 > Implemented Dave's comments and reinstated IDR API. Applied, thanks.