libalias: fix divide by zero causing panic
The packet_limit can fall to 0, leading to a divide by zero abort in the "packets % packet_limit". An possible solution would be to apply a lower limit of 1 after the calculation of packet_limit, but since any number modulo 1 gives 0, the more efficient solution is to skip the modulo operation for packet_limit <= 1. Since this is a fix for a panic observed in stable/12, merging this fix to stable/12 and stable/13 before expiry of the 3 day waiting period might be justified, if it works for the reporter of the issue. Reported by: Karl Denninger <karl@denninger.net> MFC after: 3 days
This commit is contained in:
parent
63ca9ea4f3
commit
58080fbca0
@ -1769,7 +1769,7 @@ HouseKeeping(struct libalias *la)
|
||||
* Reduce the amount of house keeping work substantially by
|
||||
* sampling over the packets.
|
||||
*/
|
||||
if (packets % packet_limit == 0) {
|
||||
if (packet_limit <= 1 || packets % packet_limit == 0) {
|
||||
time_t now;
|
||||
|
||||
#ifdef _KERNEL
|
||||
|
Loading…
Reference in New Issue
Block a user