Comment # 8 on bug 1092456 from
HAVE_JUMP_LABEL is defined in <linux/jump_label.h> this way:

  #if defined(CC_HAVE_ASM_GOTO) && defined(CONFIG_JUMP_LABEL)
  # define HAVE_JUMP_LABEL
  #endif

where CONFIG_JUMP_LABEL is enabled. CC_HAVE_ASM_GOTO is detected on build
time by trying to compile this (see scripts/gcc-goto.sh):

-----------------------------------------------------------------------------
int main(void)
{
#if defined(__arm__) || defined(__aarch64__)
        /*
         * Not related to asm goto, but used by jump label
         * and broken on some ARM GCC versions (see GCC Bug 48637).
         */
        static struct { int dummy; int state; } tp;
        asm (".long %c0" :: "i" (&tp.state));
#endif

entry:
        asm goto ("" :::: entry);
        return 0;
}
-----------------------------------------------------------------------------

For some reason this succeeds when building the module but fails when building
the kernel packages in IBS. There is one related commit between 4.16 and
4.17-rc1: e501ce957a78 ("x86: Force asm-goto") but I don't see how it could
break the detection in IBS.


You are receiving this mail because: