Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 46702dd5 authored by Eric Dumazet's avatar Eric Dumazet Committed by Greg Kroah-Hartman
Browse files

ipv4/igmp: fix build error if !CONFIG_IP_MULTICAST



[ Upstream commit 903869bd10e6719b9df6718e785be7ec725df59f ]

ip_sf_list_clear_all() needs to be defined even if !CONFIG_IP_MULTICAST

Fixes: 3580d04aa674 ("ipv4/igmp: fix another memory leak in igmpv3_del_delrec()")
Signed-off-by: default avatarEric Dumazet <edumazet@google.com>
Reported-by: default avatarkbuild test robot <lkp@intel.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent e9f94e48
Loading
Loading
Loading
Loading
+11 −11
Original line number Diff line number Diff line
@@ -190,6 +190,17 @@ static void ip_ma_put(struct ip_mc_list *im)
	     pmc != NULL;					\
	     pmc = rtnl_dereference(pmc->next_rcu))

static void ip_sf_list_clear_all(struct ip_sf_list *psf)
{
	struct ip_sf_list *next;

	while (psf) {
		next = psf->sf_next;
		kfree(psf);
		psf = next;
	}
}

#ifdef CONFIG_IP_MULTICAST

/*
@@ -635,17 +646,6 @@ static void igmpv3_clear_zeros(struct ip_sf_list **ppsf)
	}
}

static void ip_sf_list_clear_all(struct ip_sf_list *psf)
{
	struct ip_sf_list *next;

	while (psf) {
		next = psf->sf_next;
		kfree(psf);
		psf = next;
	}
}

static void kfree_pmc(struct ip_mc_list *pmc)
{
	ip_sf_list_clear_all(pmc->sources);