linux copy_from_user实现原理 - it610.com
struct exception_table_entry {
unsigned long insn, fixup;
};
.section __ex_table,"a"
.align 4
.long 1b,3b
.long 1b,3b分别对应exception_table_entry结构体中的insn、fixup,1b表示page fault时的地址标号,3b表示page fault时对应的handler的地址标号。
asm(
"1: movl $0x123, %eax\n"
"2:\n"
);
asm嵌入汇编,先执行标号1处的指令,再执行标号2处,2处什么都没有,然后asm处理结束。
.pushsection 与 .popsection 成对使用,用于在当前目标文件中插入一个 section