mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-21 18:11:39 +00:00
bonding: rate-limit bonding driver inspect messages
Through the routine bond_mii_monitor(), bonding driver inspects and commits the slave state changes. During the times when slave state change and failure in aqcuiring rtnl lock happen at the same time, the routine bond_mii_monitor() reschedules itself to come around after 1 msec to commit the new state. During this, it executes the routine bond_miimon_inspect() to re-inspect the state chane and prints the corresponding slave state on to the console. Hence we do see a message at every 1 msec till the rtnl lock is acquired and state chage is committed. This patch doesn't change how bond functions. It only simply limits this kind of log flood. Signed-off-by: Praveen Kumar Kannoju <praveen.kannoju@oracle.com> Reviewed-by: Simon Horman <horms@kernel.org> Reviewed-by: Hangbin Liu <liuhangbin@gmail.com> Acked-by: Jay Vosburgh <jay.vosburgh@canonical.com> Link: https://lore.kernel.org/r/20240221082752.4660-1-praveen.kannoju@oracle.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
parent
4679f4f123
commit
a4634aa71f
1 changed files with 10 additions and 8 deletions
|
@ -2611,7 +2611,7 @@ static int bond_miimon_inspect(struct bonding *bond)
|
|||
bond_propose_link_state(slave, BOND_LINK_FAIL);
|
||||
commit++;
|
||||
slave->delay = bond->params.downdelay;
|
||||
if (slave->delay) {
|
||||
if (slave->delay && net_ratelimit()) {
|
||||
slave_info(bond->dev, slave->dev, "link status down for %sinterface, disabling it in %d ms\n",
|
||||
(BOND_MODE(bond) ==
|
||||
BOND_MODE_ACTIVEBACKUP) ?
|
||||
|
@ -2625,9 +2625,10 @@ static int bond_miimon_inspect(struct bonding *bond)
|
|||
/* recovered before downdelay expired */
|
||||
bond_propose_link_state(slave, BOND_LINK_UP);
|
||||
slave->last_link_up = jiffies;
|
||||
slave_info(bond->dev, slave->dev, "link status up again after %d ms\n",
|
||||
(bond->params.downdelay - slave->delay) *
|
||||
bond->params.miimon);
|
||||
if (net_ratelimit())
|
||||
slave_info(bond->dev, slave->dev, "link status up again after %d ms\n",
|
||||
(bond->params.downdelay - slave->delay) *
|
||||
bond->params.miimon);
|
||||
commit++;
|
||||
continue;
|
||||
}
|
||||
|
@ -2649,7 +2650,7 @@ static int bond_miimon_inspect(struct bonding *bond)
|
|||
commit++;
|
||||
slave->delay = bond->params.updelay;
|
||||
|
||||
if (slave->delay) {
|
||||
if (slave->delay && net_ratelimit()) {
|
||||
slave_info(bond->dev, slave->dev, "link status up, enabling it in %d ms\n",
|
||||
ignore_updelay ? 0 :
|
||||
bond->params.updelay *
|
||||
|
@ -2659,9 +2660,10 @@ static int bond_miimon_inspect(struct bonding *bond)
|
|||
case BOND_LINK_BACK:
|
||||
if (!link_state) {
|
||||
bond_propose_link_state(slave, BOND_LINK_DOWN);
|
||||
slave_info(bond->dev, slave->dev, "link status down again after %d ms\n",
|
||||
(bond->params.updelay - slave->delay) *
|
||||
bond->params.miimon);
|
||||
if (net_ratelimit())
|
||||
slave_info(bond->dev, slave->dev, "link status down again after %d ms\n",
|
||||
(bond->params.updelay - slave->delay) *
|
||||
bond->params.miimon);
|
||||
commit++;
|
||||
continue;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue