itle>
<meta name='generator' content='cgit v1.2.3-54-g00ecf'/>
<meta name='robots' content='noindex, nofollow'/>
<link rel='stylesheet' type='text/css' href='/cgit.css'/>
<script type='text/javascript' src='/cgit.js'></script>
<link rel='shortcut icon' href='http://distanz.ch/favicon.ico'/>
<link rel='alternate' title='Atom feed' href='https://git.distanz.ch/cgit.cgi/linux/net-next.git/atom/?h=master' type='application/atom+xml'/>
<link rel='vcs-git' href='git://git.distanz.ch/linux/net-next.git' title='net-next.git Git repository'/>
<link rel='vcs-git' href='http:///git.distanz.ch/cgit.cgi/linux/net-next.git' title='net-next.git Git repository'/>
</head>
<body>
<div id='cgit'><table id='header'>
<tr>
<td class='logo' rowspan='2'><a href='/cgit.cgi/'><img src='/cgit.png' alt='cgit logo'/></a></td>
<td class='main'><a href='/cgit.cgi/'>index</a> : <a href='/cgit.cgi/linux/net-next.git/'>net-next.git</a></td><td class='form'><form method='get'>
<input type='hidden' name='id' value='16a16cd35ee29d9bea54dd60e55d9c1cc685a37d'/><select name='h' onchange='this.form.submit();'>
<option value='emaclite-cleanup'>emaclite-cleanup</option>
<option value='master' selected='selected'>master</option>
<option value='nds-private-remove'>nds-private-remove</option>
<option value='packet-loop-back'>packet-loop-back</option>
<option value='packet-rx-pump-back'>packet-rx-pump-back</option>
</select> <input type='submit' value='switch'/></form></td></tr>
<tr><td class='sub'>net-next plumbings</td><td class='sub right'>Tobias Klauser</td></tr></table>
<table class='tabs'><tr><td>
<a href='/cgit.cgi/linux/net-next.git/'>summary</a><a href='/cgit.cgi/linux/net-next.git/refs/?id=16a16cd35ee29d9bea54dd60e55d9c1cc685a37d'>refs</a><a href='/cgit.cgi/linux/net-next.git/log/'>log</a><a href='/cgit.cgi/linux/net-next.git/tree/?id=16a16cd35ee29d9bea54dd60e55d9c1cc685a37d'>tree</a><a class='active' href='/cgit.cgi/linux/net-next.git/commit/?id=16a16cd35ee29d9bea54dd60e55d9c1cc685a37d'>commit</a><a href='/cgit.cgi/linux/net-next.git/diff/?id=16a16cd35ee29d9bea54dd60e55d9c1cc685a37d'>diff</a></td><td class='form'><form class='right' method='get' action='/cgit.cgi/linux/net-next.git/log/'>
<input type='hidden' name='id' value='16a16cd35ee29d9bea54dd60e55d9c1cc685a37d'/><select name='qt'>
<option value='grep'>log msg</option>
<option value='author'>author</option>
<option value='committer'>committer</option>
<option value='range'>range</option>
</select>
<input class='txt' type='search' size='10' name='q' value=''/>
<input type='submit' value='search'/>
</form>
</td></tr></table>
<div class='content'><div class='cgit-panel'><b>diff options</b><form method='get'><input type='hidden' name='id' value='16a16cd35ee29d9bea54dd60e55d9c1cc685a37d'/><table><tr><td colspan='2'/></tr><tr><td class='label'>context:</td><td class='ctrl'><select name='context' onchange='this.form.submit();'><option value='1'>1</option><option value='2'>2</option><option value='3' selected='selected'>3</option><option value='4'>4</option><option value='5'>5</option><option value='6'>6</option><option value='7'>7</option><option value='8'>8</option><option value='9'>9</option><option value='10'>10</option><option value='15'>15</option><option value='20'>20</option><option value='25'>25</option><option value='30'>30</option><option value='35'>35</option><option value='40'>40</option></select></td></tr><tr><td class='label'>space:</td><td class='ctrl'><select name='ignorews' onchange='this.form.submit();'><option value='0' selected='selected'>include</option><option value='1'>ignore</option></select></td></tr><tr><td class='label'>mode:</td><td class='ctrl'><select name='dt' onchange='this.form.submit();'><option value='0' selected='selected'>unified</option><option value='1'>ssdiff</option><option value='2'>stat only</option></select></td></tr><tr><td/><td class='ctrl'><noscript><input type='submit' value='reload'/></noscript></td></tr></table></form></div><table summary='commit info' class='commit-info'>
<tr><th>author</th><td>David Ahern &lt;dsa@cumulusnetworks.com&gt;</td><td class='right'>2017-02-02 12:37:11 -0800</td></tr>
<tr><th>committer</th><td>David S. Miller &lt;davem@davemloft.net&gt;</td><td class='right'>2017-02-04 19:58:14 -0500</td></tr>
<tr><th>commit</th><td colspan='2' class='oid'><a href='/cgit.cgi/linux/net-next.git/commit/?id=16a16cd35ee29d9bea54dd60e55d9c1cc685a37d'>16a16cd35ee29d9bea54dd60e55d9c1cc685a37d</a> (<a href='/cgit.cgi/linux/net-next.git/patch/?id=16a16cd35ee29d9bea54dd60e55d9c1cc685a37d'>patch</a>)</td></tr>
<tr><th>tree</th><td colspan='2' class='oid'><a href='/cgit.cgi/linux/net-next.git/tree/?id=16a16cd35ee29d9bea54dd60e55d9c1cc685a37d'>9b1e0754092bc242f81e25e16cc443e2f5d83681</a></td></tr>
<tr><th>parent</th><td colspan='2' class='oid'><a href='/cgit.cgi/linux/net-next.git/commit/?id=3b1137fe74829e021f483756a648cbb87c8a1b4a'>3b1137fe74829e021f483756a648cbb87c8a1b4a</a> (<a href='/cgit.cgi/linux/net-next.git/diff/?id=16a16cd35ee29d9bea54dd60e55d9c1cc685a37d&amp;id2=3b1137fe74829e021f483756a648cbb87c8a1b4a'>diff</a>)</td></tr></table>
<div class='commit-subject'>net: ipv6: Change notifications for multipath delete to RTA_MULTIPATH</div><div class='commit-msg'>If an entire multipath route is deleted using prefix and len (without any
nexthops), send a single RTM_DELROUTE notification with the full route
using RTA_MULTIPATH. This is done by generating the skb before the route
delete when all of the sibling routes are still present but sending it
after the route has been removed from the FIB. The skip_notify flag
is used to tell the lower fib code not to send notifications for the
individual nexthop routes.

If a route is deleted using RTA_MULTIPATH for any nexthops or a single
nexthop entry is deleted, then the nexthops are deleted one at a time with
notifications sent as each hop is deleted. This is necessary given that
IPv6 allows individual hops within a route to be deleted.

Signed-off-by: David Ahern &lt;dsa@cumulusnetworks.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</div><div class='diffstat-header'><a href='/cgit.cgi/linux/net-next.git/diff/?id=16a16cd35ee29d9bea54dd60e55d9c1cc685a37d'>Diffstat</a></div><table summary='diffstat' class='diffstat'><tr><td class='mode'>-rw-r--r--</td><td class='upd'><a href='/cgit.cgi/linux/net-next.git/diff/net/ipv6/ip6_fib.c?id=16a16cd35ee29d9bea54dd60e55d9c1cc685a37d'>net/ipv6/ip6_fib.c</a></td><td class='right'>3</td><td class='graph'><table summary='file diffstat' width='26%'><tr><td class='add' style='width: 7.7%;'/><td class='rem' style='width: 3.8%;'/><td class='none' style='width: 88.5%;'/></tr></table></td></tr>
<tr><td class='mode'>-rw-r--r--</td><td class='upd'><a href='/cgit.cgi/linux/net-next.git/diff/net/ipv6/route.c?id=16a16cd35ee29d9bea54dd60e55d9c1cc685a37d'>net/ipv6/route.c</a></td><td class='right'>26</td><td class='graph'><table summary='file diffstat' width='26%'><tr><td class='add' style='width: 100.0%;'/><td class='rem' style='width: 0.0%;'/><td class='none' style='width: 0.0%;'/></tr></table></td></tr>
</table><div class='diffstat-summary'>2 files changed, 28 insertions, 1 deletions</div><table summary='diff' class='diff'><tr><td><div class='head'>diff --git a/net/ipv6/ip6_fib.c b/net/ipv6/ip6_fib.c