Hi,Steve your example: role - server ... steps: - lava-wait ipv4_1 - lava-wait ipv4_2 .. The server will be blocked at lava-wait event till client lava-send ipv4_1 .. message. If only one client run "lava-send ipv4_2 ip=193" then server can't exit block status because it be blocked at "wait ipv4_1" event.
Steve McIntyre steve.mcintyre@linaro.org 于2019年5月14日周二 上午12:59写道:
Hi Jack,
On Mon, May 13, 2019 at 11:54:47PM +0800, jack lu wrote:
if mulitnode api don't privide the "parameter queue mechanism",how can
realized
multi client access simultaneously server resource? For example, a test scene that have a server roler and two client roler.
how
dows roler server know message is from which client? Need user write a
program
to implement it(queue mechanism)? roler server: steps:
- lava-wait ipv4
- ipdata=$(cat /tmp/lava_multi_node_cache.txt | cut -d = -f 2)
.. roler client1: steps: - lava-send ipv4 ip=192 .. roler client2: steps: - lava-send ipv4 ip=193 .. from roler server , ipdata can't be sured 192 or 193.
Simple - use different variables ipv4_1 and ipv4_2 for the two clients? In the test code running on the server you'll need to be working out what to do with each one anyway.
So, in the test action you'd end up with something like:
- test: role
- server
... steps: - lava-wait ipv4_1 - lava-wait ipv4_2 - ipdata=$(cat /tmp/lava_multi_node_cache.txt | cut -d = -f 2) <do server test> ... - client1 ... steps: - lava-send ipv4_! ip=192 <do client test> ... - client2 ... steps: - lava-send ipv4_2 ip=193 <do client test>
Does that help you?
Cheers,
Steve McIntyre steve.mcintyre@linaro.org http://www.linaro.org/ Linaro.org | Open source software for ARM SoCs