OSDN Git Service

selftests: forwarding: lib: Add helpers for busywaiting
authorPetr Machata <petrm@mellanox.com>
Fri, 24 Jan 2020 13:23:16 +0000 (15:23 +0200)
committerDavid S. Miller <davem@davemloft.net>
Sat, 25 Jan 2020 09:56:31 +0000 (10:56 +0100)
commit4121d9479b24c20ff7d3e7b62a7cf330fae7b2af
tree14f81a442d81c22b2239cab4a8b9f2e4456f6cf8
parentadc6c7ec11293117ec2763ccbe17d58349e011cf
selftests: forwarding: lib: Add helpers for busywaiting

The function busywait() is handy as a safety-latched variant of a while
loop. Many selftests deal specifically with counter values, and busywaiting
on them is likely to be rather common (it is not quite common now, but
busywait() has not been around for very long). To facilitate expressing
simply what is tested, introduce two helpers:

- until_counter_is(), which can be used as a predicate passed to
  busywait(), which holds when expression, which is itself passed as an
  argument to until_counter_is(), reaches a desired value.

- busywait_for_counter(), which is useful for waiting until a given counter
  changes "by" (as opposed to "to") a certain amount.

Signed-off-by: Petr Machata <petrm@mellanox.com>
Signed-off-by: Ido Schimmel <idosch@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
tools/testing/selftests/net/forwarding/lib.sh