In the Linux kernel, the following vulnerability has been resolved: ipv4: avoid divide by zero in fib_rebalance fib_rebalance() computes the total eligible nexthop weight in one pass and programs upper bounds in a second pass. A concurrent change to ignore_routes_with_linkdown can make the first pass return zero while the second pass sees an eligible nexthop, resulting in division by zero. If the first pass reports a zero total, set each nexthop upper bound to -1 and skip the division. This matches the IPv6 fix in commit d2c26c2911dd ("ipv6: avoid divide by zero in rt6_multipath_rebalance") and preserves the lock-free rebalance path.
https://git.kernel.org/stable/c/f655a26490e705ec76a79db7f412847fda342b39
https://git.kernel.org/stable/c/d5520e815c4b1427104ce1428ee23821f2aa824d
https://git.kernel.org/stable/c/baf3a767b2845eb8e68f056ee4aa5b41b151e990
https://git.kernel.org/stable/c/7c68f4de5090b17b63b9a0a3b01b3807e01a296a
https://git.kernel.org/stable/c/5dac5c7ba8f5f3fb4bf29f2a2c3cb552f5b83c8f
https://git.kernel.org/stable/c/5046d2880fec7d49ebed2fd2866747ee1d06ad71
https://git.kernel.org/stable/c/226a974054acbd892560bfa67f0ae8ffe271a736
https://git.kernel.org/stable/c/0800c92ca5d1983df6843a5435299978901d1d02