Description
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.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Linux Linux
Default version status: unaffected
0e884c78ee19e902f300ed147083c28a0c6302f0 to < 5dac5c7ba8f5f3fb4bf29f2a2c3cb552f5b83c8faffected0e884c78ee19e902f300ed147083c28a0c6302f0 to < d5520e815c4b1427104ce1428ee23821f2aa824daffected0e884c78ee19e902f300ed147083c28a0c6302f0 to < 5046d2880fec7d49ebed2fd2866747ee1d06ad71affected
Linux Linux
Default version status: affected
4.4affected0 to < 4.4unaffected6.18.59 to ≤ 6.18.*unaffected7.2.13 to ≤ 7.2.*unaffected7.3 to ≤ *unaffected