From: Stanislaw Gruszka <sgrus...@redhat.com> Date: Wed, 22 Mar 2017 16:08:33 +0100
> Commit 2ae0f17df1cd ("genetlink: use idr to track families") replaced > > if (++n < fams_to_skip) > continue; > into: > > if (n++ < fams_to_skip) > continue; > > This subtle change cause that on retry ctrl_dumpfamily() call we omit > one family that failed to do ctrl_fill_info() on previous call, because > cb->args[0] = n number counts also family that failed to do > ctrl_fill_info(). > > Patch fixes the problem and avoid confusion in the future just decrease > n counter when ctrl_fill_info() fail. > > User visible problem caused by this bug is failure to get access to > some genetlink family i.e. nl80211. However problem is reproducible > only if number of registered genetlink families is big enough to > cause second call of ctrl_dumpfamily(). > > Cc: Xose Vazquez Perez <xose.vazq...@gmail.com> > Cc: Larry Finger <larry.fin...@lwfinger.net> > Cc: Johannes Berg <johan...@sipsolutions.net> > Fixes: 2ae0f17df1cd ("genetlink: use idr to track families") > Signed-off-by: Stanislaw Gruszka <sgrus...@redhat.com> Applied and queued up for -stable, thanks.