2014-01-13 11:37:20

by Alexandre Oliva

[permalink] [raw]
Subject: [3.13-rc regression] Unbreak Loongson2 and r4k-generic flush icache range

Commit 14bd8c08, that replaced Loongson2-specific ifdefs with cpu tests,
inverted the CPU test in local_r4k_flush_icache_range. Loongson2 won't
boot up using the generic icache flush code. Presumably other CPUs
might face other problems when presented with Loongson2-specific icache
flush code too. This patch enabled my Yeeloong to boot up successfully
a 3.13-rc kernel for the first time, after a long git bisect session.

Signed-off-by: Alexandre Oliva <[email protected]>
---
arch/mips/mm/c-r4k.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/mips/mm/c-r4k.c b/arch/mips/mm/c-r4k.c
index 62ffd20..1c2029d 100644
--- a/arch/mips/mm/c-r4k.c
+++ b/arch/mips/mm/c-r4k.c
@@ -580,11 +580,11 @@ static inline void local_r4k_flush_icache_range(unsigned long start, unsigned lo
else {
switch (boot_cpu_type()) {
case CPU_LOONGSON2:
- protected_blast_icache_range(start, end);
+ protected_loongson23_blast_icache_range(start, end);
break;

default:
- protected_loongson23_blast_icache_range(start, end);
+ protected_blast_icache_range(start, end);
break;
}
}
--
1.8.3.1

--
Alexandre Oliva, freedom fighter http://FSFLA.org/~lxoliva/
You must be the change you wish to see in the world. -- Gandhi
Be Free! -- http://FSFLA.org/ FSF Latin America board member
Free Software Evangelist Red Hat Brazil Compiler Engineer


2014-01-13 13:31:10

by Sergei Shtylyov

[permalink] [raw]
Subject: Re: [3.13-rc regression] Unbreak Loongson2 and r4k-generic flush icache range

Hello.

On 13-01-2014 15:26, Alexandre Oliva wrote:

> Commit 14bd8c08, that replaced Loongson2-specific ifdefs with cpu tests,

Please also specify that commit's summary line in parens.

> inverted the CPU test in local_r4k_flush_icache_range. Loongson2 won't
> boot up using the generic icache flush code. Presumably other CPUs
> might face other problems when presented with Loongson2-specific icache
> flush code too. This patch enabled my Yeeloong to boot up successfully
> a 3.13-rc kernel for the first time, after a long git bisect session.

> Signed-off-by: Alexandre Oliva <[email protected]>

Fix for this issue has been posted long ago:

http://marc.info/?l=linux-mips&m=138575576803890

WBR, Sergei

2014-01-14 10:01:50

by Alexandre Oliva

[permalink] [raw]
Subject: Re: [3.13-rc regression] Unbreak Loongson2 and r4k-generic flush icache range

On Jan 13, 2014, Sergei Shtylyov <[email protected]> wrote:

> Hello.

>> Commit 14bd8c08, that replaced Loongson2-specific ifdefs with cpu tests,
>> inverted the CPU test in local_r4k_flush_icache_range. Loongson2 won't
>> boot up using the generic icache flush code. Presumably other CPUs
>> might face other problems when presented with Loongson2-specific icache
>> flush code too. This patch enabled my Yeeloong to boot up successfully
>> a 3.13-rc kernel for the first time, after a long git bisect session.

>> Signed-off-by: Alexandre Oliva <[email protected]>

> Fix for this issue has been posted long ago:

> http://marc.info/?l=linux-mips&m=138575576803890

Thanks. As long ago as that was, I still don't see it in Torvalds's
master branch. Was a pull request including this patch ever send his
way? Such a trivial fix for such a show-stopper shouldn't find any
difficulties making 3.13, I think.

--
Alexandre Oliva, freedom fighter http://FSFLA.org/~lxoliva/
You must be the change you wish to see in the world. -- Gandhi
Be Free! -- http://FSFLA.org/ FSF Latin America board member
Free Software Evangelist Red Hat Brazil Compiler Engineer