• H
    sw64: activate CONFIG_THREAD_INFO_IN_TASK · 2654ebb7
    He Sheng 提交于
    Sunway inclusion
    category: feature
    bugzilla: https://gitee.com/openeuler/kernel/issues/I6ILGG
    
    --------------------------------
    
    This patch activates CONFIG_THREAD_INFO_IN_TASK which moves the
    thread_info into task_struct.
    
    This has the following consequences:
      - thread_info is now located at the beginning of task_struct.
      - thread_info doesn't have anymore the `task` field.
    
    This patch:
      - Adds hmcall wrktp and rdktp to save/restore `current` task
        pointer.
      - Changes the current_thread_info() macro to point to `current`.
      - Selects CONFIG_THREAD_INFO_IN_TASK.
      - Modifies raw_smp_processor_id() to get ->cpu from `current`
        without including linux/sched.h to avoid circular inclusion and
        without including asm/asm-offsets.h to avoid symbol names
        duplication between ASM constants and C constants.
      - Modifies task_pt_regs() macro to avoid error which says that
        task_stack_page() is undefined. This error can not be fixed by
        including linux/sched.h which results in circular inclusion.
    Signed-off-by: NHe Sheng <hesheng@wxiat.com>
    Reviewed-by: NCui Wei <cuiwei@wxiat.com>
    Signed-off-by: NGu Zitao <guzitao@wxiat.com>
    2654ebb7
current.h 356 字节