On Tue, 2010-07-20 at 16:12 -0700, Fa Yoeu wrote:
> Adding a flag to allow halting before powercycling.

LGTM, applied, thanks!

> Signed-off-by: Fa Yoeu <[email protected]>
> 
> --- autotest/server/hosts/remote.py   2010-07-20 16:06:08.000000000 -0700
> +++ autotest/server/hosts/remote.py   2010-07-20 16:06:08.000000000 -0700
> @@ -25,6 +25,7 @@
>  
>      DEFAULT_REBOOT_TIMEOUT = base_classes.Host.DEFAULT_REBOOT_TIMEOUT
>      LAST_BOOT_TAG = object()
> +    DEFAULT_HALT_TIMEOUT = 2 * 60
>  
>      VAR_LOG_MESSAGES_COPY_PATH = "/var/log/messages.autotest_start"
>  
> @@ -88,6 +89,12 @@
>          self.run('echo b > /proc/sysrq-trigger &')
>  
> 
> +    def halt(self, timeout=DEFAULT_HALT_TIMEOUT, wait=True):
> +        self.run('/sbin/halt')
> +        if wait:
> +          self.wait_down(timeout=timeout)
> +
> +
>      def reboot(self, timeout=DEFAULT_REBOOT_TIMEOUT, label=LAST_BOOT_TAG,
>                 kernel_args=None, wait=True, fastsync=False,
>                 reboot_cmd=None, **dargs):
> --- autotest/server/hosts/serial.py   2010-07-20 16:06:08.000000000 -0700
> +++ autotest/server/hosts/serial.py   2010-07-20 16:06:08.000000000 -0700
> @@ -114,7 +114,7 @@
>  
> 
>      def hardreset(self, timeout=DEFAULT_REBOOT_TIMEOUT, wait=True,
> -                  conmux_command='hardreset', num_attempts=1,
> +                  conmux_command='hardreset', num_attempts=1, halt=False,
>                    **wait_for_restart_kwargs):
>          """
>          Reach out and slap the box in the power switch.
> @@ -124,6 +124,7 @@
>          @params wait: Whether or not to wait for the machine to reboot
>          @params num_attempts: Number of times to attempt hard reset erroring
>                                on the last attempt.
> +        @params halt: Halts the machine before hardresetting.
>          @params **wait_for_restart_kwargs: keyword arguments passed to
>                  wait_for_restart()
>          """
> @@ -138,6 +139,8 @@
>              old_boot_id = 'unknown boot_id prior to SerialHost.hardreset'
>  
>          def reboot():
> +            if halt:
> +                self.halt()
>              if not self.run_conmux(conmux_command):
>                  self.record("ABORT", None, "reboot.start",
>                              "hard reset unavailable")
> _______________________________________________
> Autotest mailing list
> [email protected]
> http://test.kernel.org/cgi-bin/mailman/listinfo/autotest


_______________________________________________
Autotest mailing list
[email protected]
http://test.kernel.org/cgi-bin/mailman/listinfo/autotest

Reply via email to