• A
    iwlegacy: mark il_adjust_beacon_interval as noinline · 31ced24d
    Arnd Bergmann 提交于
    With the new optimized do_div() code, some versions of gcc
    produce obviously incorrect code that leads to a link error
    in iwlegacy/common.o:
    
    drivers/built-in.o: In function `il_send_rxon_timing':
    :(.text+0xa6b4d4): undefined reference to `____ilog2_NaN'
    :(.text+0xa6b4f0): undefined reference to `__aeabi_uldivmod'
    
    In a few thousand randconfig builds, I have seen this problem
    a couple of times in this file, but never anywhere else in the
    kernel, so we can try to work around this in the only file
    that shows the behavior, by marking the il_adjust_beacon_interval
    function as noinline, which convinces gcc to use the unoptimized
    do_div() all the time.
    Signed-off-by: NArnd Bergmann <arnd@arndb.de>
    Acked-by: NNicolas Pitre <nico@linaro.org>
    Acked-by: NStanislaw Gruszka <sgruszka@redhat.com>
    Signed-off-by: NKalle Valo <kvalo@codeaurora.org>
    31ced24d
common.c 143.3 KB