Skip to content

csky_cmpxchg_fixup函数bug #126

@yangli85200

Description

@yangli85200

您好
csky_cmpxchg_fixup函数中:if (instruction_pointer(regs) == csky_cmpxchg_stw)这句代码有点问题,csky_cmpxchg_stw这个变量存储的是发生异常时候的指令的操作码而不是地址,应该改成if (instruction_pointer(regs) == &csky_cmpxchg_stw) instruction_pointer_set(regs, &csky_cmpxchg_ldw);,我看了下linux从4.19开始的所有版本应该都有这个问题,我们的芯片是810会用到这里,实际这个函数是没有起作用的,因为发生异常时候的地址永远不可能等于那个操作码的

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions