From 6422372c103d280450eb400ed7fe955b74deeb2a Mon Sep 17 00:00:00 2001 From: Jarno Rajahalme Date: Fri, 4 Dec 2015 10:19:07 -0800 Subject: [PATCH] bond: Use correct type for slave's change_seq. seq values are 64-bit, and storing them to a 32-bit variable causes the stored value never to match actual seq value after the seq value gets big enough. This is a likely cause of OVS main thread using 100% CPU in a system using bonds after some runtime. VMware-BZ: #1564993 Reported-by: Hiram Bayless Signed-off-by: Jarno Rajahalme Acked-by: Joe Stringer Acked-by: Ben Pfaff --- ofproto/bond.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ofproto/bond.c b/ofproto/bond.c index 1dbf8f112..c2749e52d 100644 --- a/ofproto/bond.c +++ b/ofproto/bond.c @@ -84,7 +84,7 @@ struct bond_slave { void *aux; /* Client-provided handle for this slave. */ struct netdev *netdev; /* Network device, owned by the client. */ - unsigned int change_seq; /* Tracks changes in 'netdev'. */ + uint64_t change_seq; /* Tracks changes in 'netdev'. */ ofp_port_t ofp_port; /* OpenFlow port number. */ char *name; /* Name (a copy of netdev_get_name(netdev)). */ -- 2.20.1