X-Git-Url: http://git.openwrt.org/?a=blobdiff_plain;f=batman-adv%2Fpatches%2F0006-batman-adv-Fix-bat_ogm_iv-best-gw-refcnt-after-netli.patch;fp=batman-adv%2Fpatches%2F0006-batman-adv-Fix-bat_ogm_iv-best-gw-refcnt-after-netli.patch;h=0000000000000000000000000000000000000000;hb=d01c661c6d64f2fa80e1cbbc57b5030088fa7d7c;hp=b0f866f45ff7bff39dfc593244db00aa4ff7e436;hpb=00131761254de138bd6f48fa0cfa351af932a2be;p=feed%2Frouting.git diff --git a/batman-adv/patches/0006-batman-adv-Fix-bat_ogm_iv-best-gw-refcnt-after-netli.patch b/batman-adv/patches/0006-batman-adv-Fix-bat_ogm_iv-best-gw-refcnt-after-netli.patch deleted file mode 100644 index b0f866f..0000000 --- a/batman-adv/patches/0006-batman-adv-Fix-bat_ogm_iv-best-gw-refcnt-after-netli.patch +++ /dev/null @@ -1,47 +0,0 @@ -From: Sven Eckelmann -Date: Sat, 2 Jun 2018 17:26:34 +0200 -Subject: [PATCH] batman-adv: Fix bat_ogm_iv best gw refcnt after netlink dump - -A reference for the best gateway is taken when the list of gateways in the -mesh is sent via netlink. This is necessary to check whether the currently -dumped entry is the currently selected gateway or not. This information is -then transferred as flag BATADV_ATTR_FLAG_BEST. - -After the comparison of the current entry is done, -batadv_iv_gw_dump_entry() has to decrease the reference counter again. -Otherwise the reference will be held and thus prevents a proper shutdown of -the batman-adv interfaces (and some of the interfaces enslaved in it). - -Fixes: fa3228924152 ("batman-adv: add B.A.T.M.A.N. IV bat_gw_dump implementations") -Reported-by: Andreas Ziegler -Tested-by: Andreas Ziegler -Signed-off-by: Sven Eckelmann -Acked-by: Marek Lindner - -Origin: upstream, https://git.open-mesh.org/batman-adv.git/commit/46360d203c627e71a27d1f8f551c819c7f2353fd ---- - net/batman-adv/bat_iv_ogm.c | 4 +++- - 1 file changed, 3 insertions(+), 1 deletion(-) - -diff --git a/net/batman-adv/bat_iv_ogm.c b/net/batman-adv/bat_iv_ogm.c -index be09a98838252f4f0c23cec0625930cf896cd0ff..73bf6a93a3cf1141a34657bf1284893199e04db9 100644 ---- a/net/batman-adv/bat_iv_ogm.c -+++ b/net/batman-adv/bat_iv_ogm.c -@@ -2732,7 +2732,7 @@ static int batadv_iv_gw_dump_entry(struct sk_buff *msg, u32 portid, u32 seq, - { - struct batadv_neigh_ifinfo *router_ifinfo = NULL; - struct batadv_neigh_node *router; -- struct batadv_gw_node *curr_gw; -+ struct batadv_gw_node *curr_gw = NULL; - int ret = 0; - void *hdr; - -@@ -2780,6 +2780,8 @@ static int batadv_iv_gw_dump_entry(struct sk_buff *msg, u32 portid, u32 seq, - ret = 0; - - out: -+ if (curr_gw) -+ batadv_gw_node_put(curr_gw); - if (router_ifinfo) - batadv_neigh_ifinfo_put(router_ifinfo); - if (router)