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

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


+Andrey

On Tue, Nov 3, 2015 at 6:35 PM, Dmitry Vyukov <dvyukov@xxxxxxxxxx> wrote:
> 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/