Re: [PATCH v2 0/2] UBSan: run-time undefined behavior sanity checker

From: Dmitry Vyukov
Date: Tue Nov 03 2015 - 12:36:03 EST


I guess just nobody reviewed this. I would like to see this merged as well.



On Tue, Nov 3, 2015 at 6:20 PM, Sasha Levin <sasha.levin@xxxxxxxxxx> wrote:
> Anyone knows why wasn't this merged a year ago? I didn't see any review comments, and it
> ended up finding real bugs.
>
> On 11/14/2014 07:50 AM, Andrey Ryabinin wrote:
>> Next spin of UBSan and there are two patches from now.
>> "Two there should be; no more, no less. One to embody the UBSan,
>> the other to not deadlock it."
>>
>> Patches on top of v3.18-rc4. As usual they are available in git:
>> git://github.com/aryabinin/linux ubsan/v2
>>
>> Changes since v1:
>> - Refactoring and cleanups in lib/ubsan.c including Sasha's complains.
>> - Some spelling fixes from Randy
>> - Fixed possible memory corruption on 64 big endian machines, spotted by Rasmus.
>> - Links to the relevant GCC documentation added into changelog (Peter).
>> - Added documentation.
>> - Fix deadlock caused by kernel/printk/printk.c instrumentation
>> (patch "kernel: printk: specify alignment for struct printk_log").
>> - Dropped useless 'Indirect call of a function through a function pointer of the wrong type'
>> checker. GCC doesn't support this, and as clang manual says it's for C++ only.
>> - Added checker for __builtin_unreachable() calls.
>> - Removed redundant -fno-sanitize=float-cast-overflow from CFLAGS.
>> - Added lock to prevent mixing reports.
>>
>> Andrey Ryabinin (2):
>> kernel: printk: specify alignment for struct printk_log
>> UBSan: run-time undefined behavior sanity checker
>>
>> Documentation/ubsan.txt | 69 +++++
>> Makefile | 10 +-
>> arch/x86/Kconfig | 1 +
>> arch/x86/boot/Makefile | 1 +
>> arch/x86/boot/compressed/Makefile | 1 +
>> arch/x86/realmode/rm/Makefile | 1 +
>> arch/x86/vdso/Makefile | 2 +
>> drivers/firmware/efi/libstub/Makefile | 1 +
>> include/linux/sched.h | 3 +
>> kernel/printk/printk.c | 10 +-
>> lib/Kconfig.debug | 22 ++
>> lib/Makefile | 3 +
>> lib/ubsan.c | 567 ++++++++++++++++++++++++++++++++++
>> lib/ubsan.h | 84 +++++
>> scripts/Makefile.lib | 6 +
>> 15 files changed, 775 insertions(+), 6 deletions(-)
>> create mode 100644 Documentation/ubsan.txt
>> create mode 100644 lib/ubsan.c
>> create mode 100644 lib/ubsan.h
>>
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/