]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
net/mlx5: Reduce command polling interval
authorEli Cohen <eli@mellanox.com>
Wed, 8 Aug 2018 23:23:53 +0000 (16:23 -0700)
committerDavid S. Miller <davem@davemloft.net>
Thu, 9 Aug 2018 02:34:55 +0000 (19:34 -0700)
Use cond_resched() instead of usleep_range() to decrease the time
between polling attempts thus reducing overall driver load time.

Below is a comparison before and after the change, of loading eight
virtual functions.

Before:
real    0m8.785s
user    0m0.093s
sys     0m0.090s

After:
real    0m5.730s
user    0m0.097s
sys     0m0.087s

Signed-off-by: Eli Cohen <eli@mellanox.com>
Reviewed-by: Or Gerlitz <ogerlitz@mellanox.com>
Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/mellanox/mlx5/core/cmd.c

index f498c7730c5b105cb23f41611ec84f7992dba830..fe4ac40dbade75261f2bc44ac3bd557b8497b464 100644 (file)
@@ -211,7 +211,7 @@ static void poll_timeout(struct mlx5_cmd_work_ent *ent)
                        ent->ret = 0;
                        return;
                }
-               usleep_range(5000, 10000);
+               cond_resched();
        } while (time_before(jiffies, poll_end));
 
        ent->ret = -ETIMEDOUT;