Linux kernel e1000设备驱动程序中e1000_tx_队列上的后缀“clone.44”
e1000_tx_queue是e1000 linux设备驱动程序中的函数。当我将e1000模块转储到汇编代码时,此功能显示为e1000_tx_queue.clone.44。比如:Linux kernel e1000设备驱动程序中e1000_tx_队列上的后缀“clone.44”,linux-kernel,linux-device-driver,Linux Kernel,Linux Device Driver,e1000_tx_queue是e1000 linux设备驱动程序中的函数。当我将e1000模块转储到汇编代码时,此功能显示为e1000_tx_queue.clone.44。比如: 00000c10 <e1000_tx_queue.clone.44>: c10: 55 push %ebp c11: 89 e5 mov %esp,%ebp c13: 57
00000c10 <e1000_tx_queue.clone.44>:
c10: 55 push %ebp
c11: 89 e5 mov %esp,%ebp
c13: 57 push %edi
c14: 56 push %esi
c15: 53 push %ebx
c16: 83 ec 10 sub $0x10,%esp
c19: e8 fc ff ff ff call c1a <e1000_tx_queue.clone.44+0xa>
c1a: R_386_PC32 mcount
c1e: 89 45 ec mov %eax,-0x14(%ebp)
c21: 8b 45 08 mov 0x8(%ebp),%eax
c24: 89 55 e8 mov %edx,-0x18(%ebp)
c27: a8 04 test $0x4,%al
c29: 0f 84 ad 00 00 00 je cdc <e1000_tx_queue.clone.44+0xcc>
c2f: 89 c2 mov %eax,%edx
c31: 83 e2 08 and $0x8,%edx
c34: 83 fa 01 cmp $0x1,%edx
c37: 19 ff sbb %edi,%edi
c39: 81 e7 00 ff ff ff and $0xffffff00,%edi
<MORE>
那么在这种情况下,后缀clone.44是什么意思呢?这是由编译器添加的,它的用途是什么?
这可能与GCC在代码优化过程中使用的函数克隆有关。专家可能会给出一些提示。我不确定.44在本例中是什么意思,克隆的某种索引还是其他什么。也可能有帮助。