On Mon, 2009-07-06 at 16:44 +0530, sudhir kumar wrote: > Hi, > In order to include netperf tests under kvm guests run I have been > trying to run netperf testsuit in autotest but I am getting barrier > failures. I want to understand the philosophy of implementation of the > autotest wrappers, so thought of quickly asking it on the list. > Here are my questions: Ok, I see the confusion. Netperf2 has 'roles', a 'server' role and a 'client' role. Those should not be confused with autotest server and autotest client. > 1. There are 3 control files control.server, control.client and > control.parallel. What is the scenario for which file ? control.server - autotest client control file for netperf server role control.client - autotest client control file for netperf client role control.parallel - autotest server control file for running both at once > Will > ../../autotest/bin control.client with proper configuration on machine > (say, 9.126.89.168) be able to run netperf completely automatically > or No, it will not. > do I need to run the netserver on the other machine(say, > 9.124.124.82)? Yes, precisely. > # cat control.client | grep ip > server_ip='9.124.124.82', > client_ip='9.126.89.168', > > 2. What is the purpose of control.parallel ? control.parallel is a server control file, that has API to consider hosts as high level objects where we can instantiate autotest and run client side control files. > 3. What is the use of barriers in netperf2.py? Is it mandatory ? I > tried to understand it by going through the code but still I want to > double check. Barriers are mandatory. They are our mechanism of coordinating multi-machine tests. With barriers, we can sync the actions of multiple machines. It works (roughly) like this: * First machine to join a barrier 'coordinates it'. It will open a socket for communication and wait until the following members join. * Second machine checks on the barrier. If all conditions and all members are met, test proceeds. We can't start the netperf client before having a server up, right? That's why we have a barrier here. If for some reason we have a client ready to fire the client before we have a machine with a server up, we tell it to wait on the barrier until the machine with the server instance be ready. Once the machine with the server is ready, it checks on the barrier, the interested parties acknowledge the presence of each other and the test proceeds. > The execution of this test using autotest is so far failing for me. > (though a minimal manual execution from command lines passes for me). > It mainly fails on barrier due to timeouts "timeout waiting for > barrier: start_1". I tried by running > ../../bin/autotest client.control on machineA with server_ip set to > remote machine(B) and client ip set to this machine's ip(A). > ../../bin/autotest server.control on one machineB with server_ip set > to machineB and client ip set to the remote machine's ip(A). That should work. Problem with firewall rules perhaps? > I want to ensure that I am not doing anything wrong. > Thanks in advance!! It's a pleasure to help! Lucas -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html