selftests: concurrency: add test to verify parallel add/delete
Implement test that runs 5 instances of tc add filter in parallel with 5 instances of tc del filter from same tp instance. Each instance uses its own filter handle and key range. Extend tdc_multibatch.py with additional options required to implement the test: common prefix for all generated batch files, first value of filter handle range, MAC address prefix modifier. These are necessary to allow creating batch files with unique keys and handle ranges with multiple invocation of tdc_multibatch.py helper script. Signed-off-by: Vlad Buslov <vladbu@mellanox.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
committed by
David S. Miller
parent
a788b302c5
commit
be6b294dbd
@@ -21,25 +21,45 @@ parser.add_argument(
|
||||
"operation",
|
||||
choices=['add', 'del', 'replace'],
|
||||
help="operation to perform on filters")
|
||||
parser.add_argument(
|
||||
"-x",
|
||||
"--file_prefix",
|
||||
default="",
|
||||
help="prefix for generated batch file names")
|
||||
parser.add_argument(
|
||||
"-d",
|
||||
"--duplicate_handles",
|
||||
action="store_true",
|
||||
help="duplicate filter handle range in all files")
|
||||
parser.add_argument(
|
||||
"-a",
|
||||
"--handle_start",
|
||||
type=int,
|
||||
default=1,
|
||||
help="start handle range from (default: 1)")
|
||||
parser.add_argument(
|
||||
"-m",
|
||||
"--mac_prefix",
|
||||
type=int,
|
||||
default=0,
|
||||
choices=range(0, 256),
|
||||
help="add this value to third byte of source MAC address of flower filter"
|
||||
"(default: 0)")
|
||||
args = parser.parse_args()
|
||||
|
||||
device = args.device
|
||||
dir = args.dir
|
||||
file_prefix = args.operation + "_"
|
||||
file_prefix = args.file_prefix + args.operation + "_"
|
||||
num_filters = args.num_filters
|
||||
num_files = args.num_files
|
||||
operation = args.operation
|
||||
duplicate_handles = args.duplicate_handles
|
||||
handle = 1
|
||||
handle = args.handle_start
|
||||
mac_prefix = args.mac_prefix
|
||||
|
||||
for i in range(num_files):
|
||||
file = dir + '/' + file_prefix + str(i)
|
||||
os.system("./tdc_batch.py -n {} -a {} -e {} -m {} {} {}".format(
|
||||
num_filters, handle, operation, i, device, file))
|
||||
num_filters, handle, operation, i + mac_prefix, device, file))
|
||||
if not duplicate_handles:
|
||||
handle += num_filters
|
||||
|
||||
Reference in New Issue
Block a user