linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/5 v8] KASan for Arm
@ 2020-05-07 12:45 Linus Walleij
  2020-05-07 12:45 ` [PATCH 1/5 v8] ARM: Disable KASan instrumentation for some code Linus Walleij
                   ` (5 more replies)
  0 siblings, 6 replies; 8+ messages in thread
From: Linus Walleij @ 2020-05-07 12:45 UTC (permalink / raw)
  To: Florian Fainelli, Abbott Liu, Russell King, Ard Biesheuvel,
	Andrey Ryabinin
  Cc: Linus Walleij, Arnd Bergmann, linux-arm-kernel

It's time to repost this, now that I got it into better shape.

Main changes:
- Restore the series number to v8 following my previous
  "v1" which was actually v7, following Florians versions.
  What was I thinking. :(
- Doesn't crash randomly in QEMU etc. This was because
  mmu.c was instrumented, and when we were lucky this did
  not poke around in memory that crashed us.
- Handle the undefined symbols better (like suggested by
  Ard)
- Fix up documentation.
- Better patch split in logical chunks.

Remaining issues:
- Does it work for you?
- Crash on ARMv5/v5 in v4wbi_flush_user_tlb_range+0x10/0x4c.
  I wonder why. If you know, please tell me, I naturally
  have to fix this.
- The code in kasan_init.c to first back up TTBR0 and then
  restore it looks *fragile* even if it is working. I think
  we need to do something better in a per-proc file such
  as is done in cpu_v7_switch_mm() and other well organized
  MMU manipulation, I certainly feel this should be done
  like that.

Abbott Liu (1):
  ARM: Define the virtual space of KASan's shadow region

Andrey Ryabinin (4):
  ARM: Disable KASan instrumentation for some code
  ARM: Replace string mem* functions for KASan
  ARM: Initialize the mapping of KASan shadow memory
  ARM: Enable KASan for ARM

 Documentation/arm/memory.rst       |   5 +
 Documentation/dev-tools/kasan.rst  |   4 +-
 arch/arm/Kconfig                   |  10 +
 arch/arm/boot/compressed/Makefile  |   1 +
 arch/arm/boot/compressed/string.c  |  19 ++
 arch/arm/include/asm/kasan.h       |  32 +++
 arch/arm/include/asm/kasan_def.h   |  81 ++++++++
 arch/arm/include/asm/memory.h      |   5 +
 arch/arm/include/asm/pgalloc.h     |   9 +-
 arch/arm/include/asm/string.h      |  21 ++
 arch/arm/include/asm/thread_info.h |   4 +
 arch/arm/kernel/entry-armv.S       |   5 +-
 arch/arm/kernel/entry-common.S     |   9 +-
 arch/arm/kernel/head-common.S      |   7 +-
 arch/arm/kernel/setup.c            |   2 +
 arch/arm/kernel/unwind.c           |   6 +-
 arch/arm/lib/memcpy.S              |   3 +
 arch/arm/lib/memmove.S             |   5 +-
 arch/arm/lib/memset.S              |   3 +
 arch/arm/mm/Makefile               |   5 +
 arch/arm/mm/kasan_init.c           | 324 +++++++++++++++++++++++++++++
 arch/arm/mm/mmu.c                  |  18 ++
 arch/arm/mm/pgd.c                  |  15 +-
 arch/arm/vdso/Makefile             |   2 +
 24 files changed, 581 insertions(+), 14 deletions(-)
 create mode 100644 arch/arm/include/asm/kasan.h
 create mode 100644 arch/arm/include/asm/kasan_def.h
 create mode 100644 arch/arm/mm/kasan_init.c

-- 
2.25.4


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2020-05-07 17:29 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-05-07 12:45 [PATCH 0/5 v8] KASan for Arm Linus Walleij
2020-05-07 12:45 ` [PATCH 1/5 v8] ARM: Disable KASan instrumentation for some code Linus Walleij
2020-05-07 12:45 ` [PATCH 2/5 v8] ARM: Replace string mem* functions for KASan Linus Walleij
2020-05-07 12:45 ` [PATCH 3/5 v8] ARM: Define the virtual space of KASan's shadow region Linus Walleij
2020-05-07 17:28   ` Ard Biesheuvel
2020-05-07 12:45 ` [PATCH 4/5 v8] ARM: Initialize the mapping of KASan shadow memory Linus Walleij
2020-05-07 12:45 ` [PATCH 5/5 v8] ARM: Enable KASan for ARM Linus Walleij
2020-05-07 17:29 ` [PATCH 0/5 v8] KASan for Arm Ard Biesheuvel

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).