Andi Kleen wrote:
> I have already merged it.
>
> But in theory all code should run fine in .fixup, so it shouldn't
> actually unbreak anything.
>
No, it makes actual broken code without this:
#define RESTORE_REGS \
RESTORE_INT_REGS; \
1: popl %ds; \
CFI_ADJUST_CFA_OFFSET -4;\
/*CFI_RESTORE ds;*/\
2: popl %es; \
CFI_ADJUST_CFA_OFFSET -4;\
/*CFI_RESTORE es;*/\
.section .fixup,"ax"; \
3: movl $0,(%esp); \
jmp 1b; \
4: movl $0,(%esp); \
jmp 2b; \
.previous; \
...
Those jmp 1b's look a lot like infinite loops if 1: is in the same
section as 3:.
J
_______________________________________________
Virtualization mailing list
[email protected]
https://lists.osdl.org/mailman/listinfo/virtualization