summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorHangbin Liu <liuhangbin@gmail.com>2023-05-09 11:11:57 +0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2023-05-24 17:32:32 +0100
commit6b4585a3c9f0cfe54a765ffd6da4d95e7d964bd9 (patch)
treebcf9d35dfd1b38b77d3111ca191dfec235fbd264 /include
parentd9176dc690bcb9bd45b1ac088f372d6eaa8aa6c9 (diff)
downloadlinux-stable-6b4585a3c9f0cfe54a765ffd6da4d95e7d964bd9.tar.gz
linux-stable-6b4585a3c9f0cfe54a765ffd6da4d95e7d964bd9.tar.bz2
linux-stable-6b4585a3c9f0cfe54a765ffd6da4d95e7d964bd9.zip
bonding: fix send_peer_notif overflow
[ Upstream commit 9949e2efb54eb3001cb2f6512ff3166dddbfb75d ] Bonding send_peer_notif was defined as u8. Since commit 07a4ddec3ce9 ("bonding: add an option to specify a delay between peer notifications"). the bond->send_peer_notif will be num_peer_notif multiplied by peer_notif_delay, which is u8 * u32. This would cause the send_peer_notif overflow easily. e.g. ip link add bond0 type bond mode 1 miimon 100 num_grat_arp 30 peer_notify_delay 1000 To fix the overflow, let's set the send_peer_notif to u32 and limit peer_notif_delay to 300s. Reported-by: Liang Li <liali@redhat.com> Closes: https://bugzilla.redhat.com/show_bug.cgi?id=2090053 Fixes: 07a4ddec3ce9 ("bonding: add an option to specify a delay between peer notifications") Signed-off-by: Hangbin Liu <liuhangbin@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'include')
-rw-r--r--include/net/bonding.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/include/net/bonding.h b/include/net/bonding.h
index 768348008d0c..123729c0e1ee 100644
--- a/include/net/bonding.h
+++ b/include/net/bonding.h
@@ -235,7 +235,7 @@ struct bonding {
*/
spinlock_t mode_lock;
spinlock_t stats_lock;
- u8 send_peer_notif;
+ u32 send_peer_notif;
u8 igmp_retrans;
#ifdef CONFIG_PROC_FS
struct proc_dir_entry *proc_entry;