https://bugs.winehq.org/show_bug.cgi?id=51152
--- Comment #14 from Zebediah Figura z.figura12@gmail.com --- (In reply to Paul Gofman from comment #12)
Yes, I read that as well but that's not what I see. I can imagine some ways how kernel can affect that. The only way I see to find that out is to dig the kernel code if there is anything about that.
Why I even think of some kernel-controlled quirk rather than a CPU bug is I don't immediately see how Windows would handle such thing nicely, while the test succeeds on Windows on the same AMD machine here.
I don't really see how the kernel can do anything, unless the processor is violating its own spec by either (a) clearing fsbase anyway or (b) generating a fault.
(In reply to Paul Gofman from comment #13)
(In reply to Zebediah Figura from comment #11)
Created attachment 70185 [details] test program + rdfsbase
What does the attached program print on a "bad" system?
cs 0x33 ds 0 es 0 fs 0 gs 0 ss 0x2b fsbase 0x7f19ffc63580 gsbase 0 Segmentation fault (core dumped)
Hmm, maybe you could try restoring the old value of fsbase via wrfsbase, before calling printf?
I'm trying to see if fsbase is actually getting cleared here. Though maybe I should take your comment 3 as an indication that you can already confirm that.