• Ralf Baechle's avatar
    MIPS: Use inline function to access current thread pointer. · ad04c2e9
    Ralf Baechle authored
    With LTE this fixes this issue:
    
      LDFINAL vmlinux.o
    arch/mips/built-in.o (symbol from plugin): In function `sgimc_init':
    (.text+0x0): multiple definition of `$28'
    init/built-in.o (symbol from plugin):(.text+0x0): first defined here
    kernel/built-in.o (symbol from plugin): In function `get_task_mm':
    (.text+0x0): multiple definition of `$28'
    init/built-in.o (symbol from plugin):(.text+0x0): first defined here
    mm/built-in.o (symbol from plugin): In function `iov_iter_single_seg_count':
    (.text+0x0): multiple definition of `$28'
    init/built-in.o (symbol from plugin):(.text+0x0): first defined here
    fs/built-in.o (symbol from plugin): In function `finish_no_open':
    (.text+0x0): multiple definition of `$28'
    init/built-in.o (symbol from plugin):(.text+0x0): first defined here
    ipc/built-in.o (symbol from plugin): In function `ipc_init_ids':
    (.text+0x0): multiple definition of `$28'
    init/built-in.o (symbol from plugin):(.text+0x0): first defined here
    security/built-in.o (symbol from plugin): In function `key_schedule_gc':
    (.text+0x0): multiple definition of `$28'
    init/built-in.o (symbol from plugin):(.text+0x0): first defined here
    crypto/built-in.o (symbol from plugin): In function `crypto_find_alg':
    (.text+0x0): multiple definition of `$28'
    init/built-in.o (symbol from plugin):(.text+0x0): first defined here
    block/built-in.o (symbol from plugin): In function `elv_rb_find':
    (.text+0x0): multiple definition of `$28'
    init/built-in.o (symbol from plugin):(.text+0x0): first defined here
    argv_split.o (symbol from plugin): In function `argv_free':
    (.text+0x0): multiple definition of `$28'
    init/built-in.o (symbol from plugin):(.text+0x0): first defined here
    dec_and_lock.o (symbol from plugin): In function `_atomic_dec_and_lock':
    (.text+0x0): multiple definition of `$28'
    init/built-in.o (symbol from plugin):(.text+0x0): first defined here
    extable.o (symbol from plugin): In function `sort_extable':
    (.text+0x0): multiple definition of `$28'
    init/built-in.o (symbol from plugin):(.text+0x0): first defined here
    flex_proportions.o (symbol from plugin): In function `fprop_global_init':
    (.text+0x0): multiple definition of `$28'
    init/built-in.o (symbol from plugin):(.text+0x0): first defined here
    idr.o (symbol from plugin): In function `idr_for_each':
    (.text+0x0): multiple definition of `$28'
    init/built-in.o (symbol from plugin):(.text+0x0): first defined here
    is_single_threaded.o (symbol from plugin): In function `current_is_single_threaded':
    (.text+0x0): multiple definition of `$28'
    init/built-in.o (symbol from plugin):(.text+0x0): first defined here
    kobject.o (symbol from plugin): In function `kobject_get':
    (.text+0x0): multiple definition of `$28'
    init/built-in.o (symbol from plugin):(.text+0x0): first defined here
    kobject_uevent.o (symbol from plugin): In function `add_uevent_var':
    (.text+0x0): multiple definition of `$28'
    init/built-in.o (symbol from plugin):(.text+0x0): first defined here
    plist.o (symbol from plugin): In function `plist_add':
    (.text+0x0): multiple definition of `$28'
    init/built-in.o (symbol from plugin):(.text+0x0): first defined here
    radix-tree.o (symbol from plugin): In function `radix_tree_lookup_slot':
    (.text+0x0): multiple definition of `$28'
    init/built-in.o (symbol from plugin):(.text+0x0): first defined here
    ratelimit.o (symbol from plugin): In function `___ratelimit':
    (.text+0x0): multiple definition of `$28'
    init/built-in.o (symbol from plugin):(.text+0x0): first defined here
    rwsem-spinlock.o (symbol from plugin): In function `__init_rwsem':
    (.text+0x0): multiple definition of `$28'
    init/built-in.o (symbol from plugin):(.text+0x0): first defined here
    show_mem.o (symbol from plugin): In function `show_mem':
    (.text+0x0): multiple definition of `$28'
    init/built-in.o (symbol from plugin):(.text+0x0): first defined here
    timerqueue.o (symbol from plugin): In function `timerqueue_iterate_next':
    (.text+0x0): multiple definition of `$28'
    init/built-in.o (symbol from plugin):(.text+0x0): first defined here
    vsprintf.o (symbol from plugin): In function `simple_strtoull':
    (.text+0x0): multiple definition of `$28'
    init/built-in.o (symbol from plugin):(.text+0x0): first defined here
    delay.o (symbol from plugin): In function `__delay':
    (.text+0x0): multiple definition of `$28'
    init/built-in.o (symbol from plugin):(.text+0x0): first defined here
    mips-atomic.o (symbol from plugin): In function `arch_local_irq_disable':
    (.text+0x0): multiple definition of `$28'
    init/built-in.o (symbol from plugin):(.text+0x0): first defined here
    uncached.o (symbol from plugin): In function `run_uncached':
    (.text+0x0): multiple definition of `$28'
    init/built-in.o (symbol from plugin):(.text+0x0): first defined here
    lib/built-in.o (symbol from plugin): In function `_bcd2bin':
    (.text+0x0): multiple definition of `$28'
    init/built-in.o (symbol from plugin):(.text+0x0): first defined here
    arch/mips/lib/built-in.o (symbol from plugin): In function `ioread8':
    (.text+0x0): multiple definition of `$28'
    init/built-in.o (symbol from plugin):(.text+0x0): first defined here
    drivers/built-in.o (symbol from plugin): In function `fb_notifier_call_chain':
    (.text+0x0): multiple definition of `$28'
    init/built-in.o (symbol from plugin):(.text+0x0): first defined here
    net/built-in.o (symbol from plugin): In function `sock_from_file':
    (.text+0x0): multiple definition of `$28'
    init/built-in.o (symbol from plugin):(.text+0x0): first defined here
    klist.o (symbol from plugin): In function `klist_init':
    (.text+0x0): multiple definition of `$28'
    init/built-in.o (symbol from plugin):(.text+0x0): first defined here
    
    It also makes the code a little more readable, so let's merge it.
    Signed-off-by: default avatarRalf Baechle <ralf@linux-mips.org>
    ad04c2e9
thread_info.h 4.49 KB