2015-02-11 06:56:43

by Nicholas Mc Guire

[permalink] [raw]
Subject: [PATCH RFC] blackfin: make timeout HZ independent

The timeout is in jiffies so the hard-coded numeric value becomes HZ
dependent, which is probably not the intent. To resolve this the
timeout is converted with msecs_to_jiffies.

Signed-off-by: Nicholas Mc Guire <[email protected]>
---

Due to tool-chain problems this patch was not even compile tested, further
it is unclear if the interpretation of 5000 as 5000 milliseconds is even
correct it is based on looking at other archs (e.g arch/arm64/kernel/smp.c,
arch/arm/kernel/smp.c...) which use msecs_to_jiffies(5000), but other
architectures use completely different timeouts.

Patch is against 3.19.0 (localversion-next is -next-20150210)

arch/blackfin/mach-common/smp.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/blackfin/mach-common/smp.c b/arch/blackfin/mach-common/smp.c
index 8ad3e90..8a05c32 100644
--- a/arch/blackfin/mach-common/smp.c
+++ b/arch/blackfin/mach-common/smp.c
@@ -417,7 +417,7 @@ static DECLARE_COMPLETION(cpu_killed);

int __cpu_die(unsigned int cpu)
{
- return wait_for_completion_timeout(&cpu_killed, 5000);
+ return wait_for_completion_timeout(&cpu_killed, msecs_to_jiffies(5000));
}

void cpu_die(void)
--
1.7.10.4


2015-02-12 03:51:05

by Steven Miao

[permalink] [raw]
Subject: Re: [PATCH RFC] blackfin: make timeout HZ independent

Applied. Thanks.

On Wed, Feb 11, 2015 at 2:52 PM, Nicholas Mc Guire <[email protected]> wrote:
> The timeout is in jiffies so the hard-coded numeric value becomes HZ
> dependent, which is probably not the intent. To resolve this the
> timeout is converted with msecs_to_jiffies.
>
> Signed-off-by: Nicholas Mc Guire <[email protected]>
> ---
>
> Due to tool-chain problems this patch was not even compile tested, further
> it is unclear if the interpretation of 5000 as 5000 milliseconds is even
> correct it is based on looking at other archs (e.g arch/arm64/kernel/smp.c,
> arch/arm/kernel/smp.c...) which use msecs_to_jiffies(5000), but other
> architectures use completely different timeouts.
I think msecs_to_jiffies(5000) is ok, we will test it on our bf561 board.
>
> Patch is against 3.19.0 (localversion-next is -next-20150210)
>
> arch/blackfin/mach-common/smp.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/arch/blackfin/mach-common/smp.c b/arch/blackfin/mach-common/smp.c
> index 8ad3e90..8a05c32 100644
> --- a/arch/blackfin/mach-common/smp.c
> +++ b/arch/blackfin/mach-common/smp.c
> @@ -417,7 +417,7 @@ static DECLARE_COMPLETION(cpu_killed);
>
> int __cpu_die(unsigned int cpu)
> {
> - return wait_for_completion_timeout(&cpu_killed, 5000);
> + return wait_for_completion_timeout(&cpu_killed, msecs_to_jiffies(5000));
> }
>
> void cpu_die(void)
> --
> 1.7.10.4
>
-steven