]> git.baikalelectronics.ru Git - kernel.git/commit
csky: Fixup cpu speculative execution to IO area
authorGuo Ren <guoren@linux.alibaba.com>
Sat, 28 Mar 2020 11:14:37 +0000 (19:14 +0800)
committerGuo Ren <guoren@linux.alibaba.com>
Fri, 3 Apr 2020 04:40:07 +0000 (12:40 +0800)
commit9a6199cfd9964696d7b7dc636a1a2b13901c58f2
tree5758db614e0a99fc098daa1433d400196e690704
parent2f30554b5b7171fe6954007f30ed77c31c056447
csky: Fixup cpu speculative execution to IO area

For the memory size ( > 512MB, < 1GB), the MSA setting is:

 - SSEG0: PHY_START        , PHY_START + 512MB
 - SSEG1: PHY_START + 512MB, PHY_START + 1GB

But the real memory is no more than 1GB, there is a gap between the
end size of memory and border of 1GB. CPU could speculatively
execute to that gap and if the gap of the bus couldn't respond to
the CPU request, then the crash will happen.

Now make the setting with:

 - SSEG0: PHY_START        , PHY_START + 512MB (no change)
 - SSEG1: Disabled (We use highmem to use the memory of 512MB~1GB)

We also deprecated zhole_szie[] settings, it's only used by arm
style CPUs. All memory gap should use Reserved setting of dts in
csky system.

Signed-off-by: Guo Ren <guoren@linux.alibaba.com>
arch/csky/abiv1/inc/abi/entry.h
arch/csky/abiv2/inc/abi/entry.h
arch/csky/kernel/head.S
arch/csky/kernel/setup.c
arch/csky/kernel/smp.c