• Al Viro's avatar
    sparc64: Rearrange thread info to cheaply clear syscall noerror state. · 40138249
    Al Viro authored
    After fixing a couple of brainos, it even seems to work.  What's done here
    is move of ->syscall_noerror right before FPDEPTH byte in ->flags and
    using sth to [%g6 + TI_SYS_NOERROR] instead of stb to [%g6 + TI_FPDEPTH] in
    both branches of etrap_save.  AFAICS, that ought to be solid.  Again,
    deciding what to do with now unused delay slot of branch on ->syscall_noerror
    and dealing with the order of tests in ret_from_sys is a separate question,
    but at least that way we don't have to clean ->syscall_noerror in there at
    all.  AFAICS, it ought to be a clear win - sth is not going to cost more than
    stb on etrap_64.S side of things, and we are losing write on syscalls.S one.
    Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    40138249
thread_info_64.h 8.65 KB