Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1322201

CONFIG_UBSAN_ALIGNMENT breaks x86-64 kernel with lockdep enabled

From Mike Krinkin <krinkin.m.u@gmail.com>
Newsgroups linux.kernel
Subject CONFIG_UBSAN_ALIGNMENT breaks x86-64 kernel with lockdep enabled
Date 2016-01-30 01:40 +0100
Message-ID <qWrK2-2Ro-11@gated-at.bofh.it> (permalink)
Organization linux.* mail to news gateway

Show all headers | View raw


Hi,

option CONFIG_UBSAN_ALIGNMENT breaks x86-64 kernel with lockdep enabled,
i. e kernel with CONFIG_UBSAN_ALIGNMENT fails to load without even any
error message.

The problem is that ubsan callbacks use spinlocks and might be called
before lockdep is initialized. Particularly this line in the
reserve_ebda_region function causes problem:

lowmem = *(unsigned short *)__va(BIOS_LOWMEM_KILOBYTES);

If i put lockdep_init() before reserve_ebda_region call in
x86_64_start_reservations kernel loads well. Since CONFIG_UBSAN_ALIGNMENT
isn't useful for x86 anyway it might be better to disable this option for
x86 arch?

Back to linux.kernel | Previous | NextNext in thread | Find similar | Unroll thread


Thread

CONFIG_UBSAN_ALIGNMENT breaks x86-64 kernel with lockdep enabled Mike Krinkin <krinkin.m.u@gmail.com> - 2016-01-30 01:40 +0100
  Re: CONFIG_UBSAN_ALIGNMENT breaks x86-64 kernel with lockdep enabled Andrey Ryabinin <aryabinin@virtuozzo.com> - 2016-02-01 16:10 +0100
    Re: CONFIG_UBSAN_ALIGNMENT breaks x86-64 kernel with lockdep  enabled Andrew Morton <akpm@linux-foundation.org> - 2016-02-01 23:30 +0100
      Re: CONFIG_UBSAN_ALIGNMENT breaks x86-64 kernel with lockdep enabled Andrey Ryabinin <aryabinin@virtuozzo.com> - 2016-02-02 17:20 +0100
        Re: CONFIG_UBSAN_ALIGNMENT breaks x86-64 kernel with lockdep  enabled Andrew Morton <akpm@linux-foundation.org> - 2016-02-02 22:20 +0100

csiph-web