2016-04-08 10:13 GMT+03:00 Ingo Molnar <mi...@kernel.org>: > > * Andy Lutomirski <l...@kernel.org> wrote: > >> ARCH_GET_FS and ARCH_GET_GS attempted to figure out the fsbase and >> gsbase respectively from saved thread state. This was wrong: fsbase >> and gsbase live in registers while a thread is running, not in >> memory. > > So I'm wondering, the current code looks totally broken,what user-space code > can > possibly use this? I checked glibc and Wine, and neither of them does. Wine > uses > ARCH_SET_GS and glibc uses ARCH_SET_FS, but that's all - neither actually > tries to > use the ARCH_GET_* reading APIs.
Just FYI, CRIU also does not use ARCH_GET_{FS,GS}, only ARCH_SET_{FS,GS}. It gets them with the help of PTRACE_GETREGSET. > So for backporting purposes I'd be much happier about simply returning > -EINVAL or > -ENOSYS, and we could re-introduce this code in v4.7.