Messages in this thread | | | Date | Fri, 29 Nov 1996 07:00:33 +0100 (MET) | From | "Michael L. Galbraith" <> | Subject | fs and gs register question (intel) |
| |
The kernel no longer pushes/pops the gs and fs registers - but...
./arch/i386/kernel/process.c __asm__ __volatile__("mov %w0,%%fs ; mov %w0,%%gs ; lldt %w0" __asm__("mov %%gs,%0":"=r" (dump->regs.gs)); ./arch/i386/kernel/vm86.c "xorl %%eax,%%eax; mov %%ax,%%fs; mov %%ax,%%gs\n\t" ./arch/i386/kernel/signal.c __asm__("mov %w0,%%fs ; mov %w0,%%gs":"=r" (seg) :"0" (seg));
I'm appearently missing something here - when/where are these registers saved/restored? It seems to me that this guarantees catastrophe.
So - since my little box isn't retching (much) - what am I missing?
scritch scritch baffle
Mike
| |