[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH] [Exynos] Fix to be error handled when 10ms delayed for cpu_on



On Tue, 4 Oct 2016, JEUNGWOO, YOO wrote:
> From: casionwoo <casionwoo@xxxxxxxxx>
> 
> Comment of origin code said "wait max 10 ms until cpu is on"
> Origin code expects to print "CPU%d power enable failed", if cpu do not on 
> until 10ms
> But actual code do not reach to print even it wait 10 ms (actually it waits 
> 11ms not 10ms)
> Because the comparing is like bellow
> "if ( timeout-- == 0 )"
> So I modified the code to wait 10ms and print the error statement
> Let me simulate about origin code and modified code.
> 
> Origin code)
> 
>       timeout            delayed time           timeout
> (before while)            (mdelay(1))         (timeout--)
>         10                        1                           9
>         9                                     2                               
> 8
>         8                                     3                               
> 7
>         7                                     4                               
> 6
>         6                                     5                               
> 5
>         5                                     6                               
> 4
>         4                                     7                               
> 3
>         3                                     8                               
> 2
>         2                                     9                               
> 1
>         1                                     10                              > 0
>         0                                     11                              
> -1
> 
> Modified code)
> 
>       timeout            delayed time           timeout
> (before while)            (mdelay(1))         (--timeout)
>         10                        1                           9
>         9                                     2                               
> 8
>         8                                     3                               
> 7
>         7                                     4                               
> 6
>         6                                     5                               
> 5
>         5                                     6                               
> 4
>         4                                     7                               
> 3
>         3                                     8                               
> 2
>         2                                     9                               
> 1
>         1                                     10                              > 0
> 
> Signed-off-by: JEUNGWOO, YOO <casionwoo@xxxxxxxxx>

Reviewed-by: Stefano Stabellini <sstabellini@xxxxxxxxxx>


>  xen/arch/arm/platforms/exynos5.c | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/xen/arch/arm/platforms/exynos5.c 
> b/xen/arch/arm/platforms/exynos5.c
> index c43934f..9edd866 100644
> --- a/xen/arch/arm/platforms/exynos5.c
> +++ b/xen/arch/arm/platforms/exynos5.c
> @@ -175,10 +175,10 @@ static int exynos5_cpu_power_up(void __iomem *power, 
> int cpu)
>          /* wait max 10 ms until cpu is on */
>          while ( exynos_cpu_power_state(power, cpu) != S5P_CORE_LOCAL_PWR_EN )
>          {
> -            if ( timeout-- == 0 )
> -                break;
> -
>              mdelay(1);
> +
> +            if ( --timeout == 0 )
> +                break;
>          }
>  
>          if ( timeout == 0 )
> -- 
> 1.9.1
> 

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
https://lists.xen.org/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.