bonding: handle link transition from FAIL to UP correctly
When link transitions from LINK_FAIL to LINK_UP, the commit phase is not called. This leads to an erroneous state causing slave-link state to get stuck in "going down" state while its speed and duplex are perfectly fine. This issue is a side-effect of splitting link-set into propose and commit phases introduced byde77ecd4ef("bonding: improve link-status update in mii-monitoring") This patch fixes these issues by calling commit phase whenever link state change is proposed. Fixes:de77ecd4ef("bonding: improve link-status update in mii-monitoring") Signed-off-by: Mahesh Bandewar <maheshb@google.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
		
							parent
							
								
									d4d49bc145
								
							
						
					
					
						commit
						fb9eb899a6
					
				| @ -2064,6 +2064,7 @@ static int bond_miimon_inspect(struct bonding *bond) | |||||||
| 					    (bond->params.downdelay - slave->delay) * | 					    (bond->params.downdelay - slave->delay) * | ||||||
| 					    bond->params.miimon, | 					    bond->params.miimon, | ||||||
| 					    slave->dev->name); | 					    slave->dev->name); | ||||||
|  | 				commit++; | ||||||
| 				continue; | 				continue; | ||||||
| 			} | 			} | ||||||
| 
 | 
 | ||||||
| @ -2098,7 +2099,7 @@ static int bond_miimon_inspect(struct bonding *bond) | |||||||
| 					    (bond->params.updelay - slave->delay) * | 					    (bond->params.updelay - slave->delay) * | ||||||
| 					    bond->params.miimon, | 					    bond->params.miimon, | ||||||
| 					    slave->dev->name); | 					    slave->dev->name); | ||||||
| 
 | 				commit++; | ||||||
| 				continue; | 				continue; | ||||||
| 			} | 			} | ||||||
| 
 | 
 | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user