Hi folks,

Thank you for all the responses to my issues with using kernel.boot.

I wanted to take a step back and create a script that manually calls grub with 
the new kernel and then reboots and then look at getting kernel.boot to work.
I have been trying to get step_init working with a job.reboot. But, I'm having 
some difficulty. I have a simple test scenario with just a control file as 
follows:

cat /usr/local/autotest/client/tests/simple_reboot_test/control

AUTHOR = 'steve.wa...@sap.com'
TIME = 'MEDIUM'
NAME = 'Simple reboot test'
TEST_TYPE = 'client'
TEST_CLASS = 'Rebooting'
TEST_CATEGORY = 'Functional'
import time

DOC = '''
Does a reboot and then prints something to screen.
'''

def step_init():
    print "******************************** step_init ..."
    job.next_step([step_test])
    job.reboot('Ubuntu, with Linux 3.2.0-24-generic')

def step_test():
    print "******************************** step_test: "

I think this is how it should be set up. It seems that job.reboot() needs to 
take a kernel title as a parameter - is that correct?

I'm getting the following errors when I run it using the autotest server 
command as follows:
./server/autoserv --verbose -m heca-autotest-b -c 
./client/tests/simple_reboot_test/control

The first error I get at the server side is:

13:43:34 ERROR| Exception escaped control file, job aborting:
Traceback (most recent call last):
  File "/usr/local/autotest/server/server_job.py", line 535, in run
    self._execute_code(server_control_file, namespace)
  File "/usr/local/autotest/server/server_job.py", line 1018, in _execute_code
    execfile(code_file, namespace, namespace)
  File "/usr/local/autotest/results.2012-06-13-13.43.11/control.srv", line 10, 
in <module>
    job.parallel_simple(run_client, machines)
  File "/usr/local/autotest/server/server_job.py", line 437, in parallel_simple
    return_results=return_results)
  File "/usr/local/autotest/server/subcommand.py", line 92, in parallel_simple
    function(arg)
  File "/usr/local/autotest/results.2012-06-13-13.43.11/control.srv", line 7, 
in run_client
    at.run(control, host=host)
  File "/usr/local/autotest/server/autotest_remote.py", line 319, in run
    client_disconnect_timeout)
  File "/usr/local/autotest/server/autotest_remote.py", line 400, in _do_run
    client_disconnect_timeout=client_disconnect_timeout)
  File "/usr/local/autotest/server/autotest_remote.py", line 770, in 
execute_control
    raise error.AutotestRunError(msg)
AutotestRunError: Aborting - unexpected final status message from client on 
heca-autotest-b: START   ----         ----                timestamp=1339590832  
              localtime=Jun 13 13:33:52

In the client logs, I see the following error:

06/13 13:47:44 DEBUG|  boottool:1340| Title chosen to boot once: Ubuntu, with 
Linux 3.2.0-24-generic
06/13 13:47:44 DEBUG|  boottool:1348| Title actually set as default:
06/13 13:47:44 DEBUG|  boottool:1355| Setting boot once for entry: Ubuntu, with 
Linux 3.2.0-24-generic
06/13 13:47:44 ERROR|logging_ma:0584| grubby: kernel not found

Would I be right in thinking that the "Aborting error ...." on the server logs 
is linked to the "grubby: kernel not found error" on the client logs?

This is trying to access the original working kernel but it is still failing. I 
can't tell what command grubby is trying to run however. Anybody got any ideas 
what might be going wrong?

Thanks,
Steve

Dr. Steve Walsh
Researcher, SAP Research, CEC Belfast
SAP (UK) Limited, The Concourse Building, Queen's Road , Queen's Island, 
Titanic Quarter, BT3 9TD Belfast
T +44 (0)28 9078 5721

_______________________________________________
Autotest mailing list
Autotest@test.kernel.org
http://test.kernel.org/cgi-bin/mailman/listinfo/autotest

Reply via email to