On Tue, Jul 04, 2017 at 01:48:42AM -0700, David Miller wrote: > From: Eduardo Valentin <eduval@xxxxxxxxxx> > Date: Mon, 3 Jul 2017 10:06:34 -0700 > > > We currently get the following kmemleak report: > ... > > This patch flags the complete_info ptr object as not a leak as it will > > get freed when .complete_priv() is called, > > We don't call .complete_priv(). We call .complete(). True, I can fix this wording in the commit next version. > > for the br mdb case, it > > will be freed at br_mdb_complete(). > > > > Cc: stable <stable@xxxxxxxxxxxxxxx> # v4.9+ > > Reviewed-by: Vallish Vaidyeshwara <vallish@xxxxxxxxxx> > > Signed-off-by: Eduardo Valentin <eduval@xxxxxxxxxx> > > I don't understand why kmemleak cannot see this. > > We store the pointer globally when we do the switchdev_port_obv_add() > call and it should be able to see that. I see and agree. But even then I get these reports consistently on RTM_NEWMDB type. This is why I am proposing marking as a non-kmemleak. To me, this is only a leak if .complete() never gets called. -- All the best, Eduardo Valentin