[PATCH 0/5 v11] KASan for Arm
Florian Fainelli
f.fainelli at gmail.com
Wed Jul 1 18:28:14 EDT 2020
On 7/1/2020 2:41 PM, Ard Biesheuvel wrote:
> On Wed, 1 Jul 2020 at 22:16, Florian Fainelli <f.fainelli at gmail.com> wrote:
>>
>>
>>
>> On 7/1/2020 5:09 AM, Ard Biesheuvel wrote:
>>>
>>> I pushed these changes and a few more to
>>>
>>> https://git.kernel.org/pub/scm/linux/kernel/git/ardb/linux.git/log/?h=arm-kasan-v11
>>
>> This branch works a bit better however I am still seeing some boot
>> errors (some sample logs attached) similar to Linus' branch.
>>
>
> These crashes are all identical, they all crash on the bc9ffe00 shadow
> address not being backed by early shadow memory.
>
> That value has all bits PTE index bits set to 1, and given how
> memblock usually allocates top down, it means we are allocating page
> by page and calling check_memory_region() on it during the memset()
> until the point where we hit a PMD that is not set, covering the
> window bc800000-bc9fffff
>
> Are there any memory reservations in the range ec000000-ecffffff ?
Not that I can see according to memblock=debug:
[ 0.000000] reserved.cnt = 0x6
[ 0.000000] reserved[0x0] [0x0000000000000000-0x0000000000000fff],
0x0000000000001000 bytes flags: 0x0
[ 0.000000] reserved[0x1] [0x0000000000003000-0x0000000000007fff],
0x0000000000005000 bytes flags: 0x0
[ 0.000000] reserved[0x2] [0x0000000000200000-0x0000000002dd0b7f],
0x0000000002bd0b80 bytes flags: 0x0
[ 0.000000] reserved[0x3] [0x0000000006400000-0x00000000065fffff],
0x0000000000200000 bytes flags: 0x0
[ 0.000000] reserved[0x4] [0x000000000e415000-0x000000000e41960b],
0x000000000000460c bytes flags: 0x0
[ 0.000000] reserved[0x5] [0x000000007f000000-0x000000007fffffff],
0x0000000001000000 bytes flags: 0x0
[ 0.000000] reserved.cnt = 0x7
[ 0.000000] reserved[0x0] [0x0000000000000000-0x0000000000000fff],
0x0000000000001000 bytes flags: 0x0
[ 0.000000] reserved[0x1] [0x0000000000003000-0x0000000000007fff],
0x0000000000005000 bytes flags: 0x0
[ 0.000000] reserved[0x2] [0x0000000000200000-0x0000000002dd0b7f],
0x0000000002bd0b80 bytes flags: 0x0
[ 0.000000] reserved[0x3] [0x0000000006400000-0x00000000064fffff],
0x0000000000100000 bytes flags: 0x0
[ 0.000000] reserved[0x4] [0x0000000007008000-0x000000000700ffff],
0x0000000000008000 bytes flags: 0x0
[ 0.000000] reserved[0x5] [0x0000000007819000-0x000000000781e5cf],
0x00000000000055d0 bytes flags: 0x0
[ 0.000000] reserved[0x6] [0x000000003cc00000-0x000000003dbfffff],
0x0000000001000000 bytes flags: 0x0
> Are you using the default vmalloc range?
Yes.
> Any other peculiarities in the memory layout?
Not that I can think of, the memory is mapped at PA 0x0000_0000 all the
way to 0xbfff_ffff and then all other memory is mapped at PA
0x1_0000_0000 and aboved.
--
Florian
More information about the linux-arm-kernel
mailing list