nosmp copy:
00002fa8 <kmem_cache_alloc_trace>: 2fa8: e1a0c00d mov ip, sp 2fac: e92ddbf0 push {r4, r5, r6, r7, r8, r9, fp, ip, lr, pc} 2fb0: e24cb004 sub fp, ip, #4 2fb4: e24dd008 sub sp, sp, #8 2fb8: e52de004 push {lr} ; (str lr, [sp, #-4]!) 2fbc: ebfffffe bl 0 <__gnu_mcount_nc> 2fc0: e59f3128 ldr r3, [pc, #296] ; 30f0 <kmem_cache_alloc_trace+0x148> 2fc4: e1a0700e mov r7, lr 2fc8: e1a05000 mov r5, r0 2fcc: e1a06001 mov r6, r1 2fd0: e1a08002 mov r8, r2 2fd4: e5933000 ldr r3, [r3] 2fd8: e2033010 and r3, r3, #16 2fdc: e1130001 tst r3, r1 2fe0: 0a000000 beq 2fe8 <kmem_cache_alloc_trace+0x40> 2fe4: ebfffffe bl 0 <_cond_resched> 2fe8: e5953000 ldr r3, [r5] 2fec: e593c004 ldr ip, [r3, #4] 2ff0: e5934000 ldr r4, [r3] 2ff4: e3540000 cmp r4, #0 2ff8: 1a000005 bne 3014 <kmem_cache_alloc_trace+0x6c> 2ffc: e1a00005 mov r0, r5 3000: e1a01006 mov r1, r6 3004: e1a02007 mov r2, r7 3008: ebfffffe bl 2f4 <ksize+0xc0> 300c: e1a04000 mov r4, r0 3010: ea000016 b 3070 <kmem_cache_alloc_trace+0xc8> 3014: e5953014 ldr r3, [r5, #20] 3018: e7942003 ldr r2, [r4, r3] 301c: e10f0000 mrs r0, CPSR 3020: f10c0080 cpsid i 3024: e5953000 ldr r3, [r5] 3028: e5931000 ldr r1, [r3] 302c: e1510004 cmp r1, r4 3030: 1a000008 bne 3058 <kmem_cache_alloc_trace+0xb0> 3034: e5931004 ldr r1, [r3, #4] 3038: e151000c cmp r1, ip 303c: 1a000005 bne 3058 <kmem_cache_alloc_trace+0xb0> 3040: e5832000 str r2, [r3] 3044: e2811001 add r1, r1, #1 3048: e5953000 ldr r3, [r5] 304c: e5831004 str r1, [r3, #4] 3050: e3a03001 mov r3, #1 3054: ea000000 b 305c <kmem_cache_alloc_trace+0xb4> 3058: e3a03000 mov r3, #0 305c: e121f000 msr CPSR_c, r0 3060: e3530000 cmp r3, #0 3064: 0affffdf beq 2fe8 <kmem_cache_alloc_trace+0x40> 3068: e5953014 ldr r3, [r5, #20] 306c: f7d2f003 pld [r2, r3] 3070: e3160902 tst r6, #32768 ; 0x8000 3074: 0a000006 beq 3094 <kmem_cache_alloc_trace+0xec> 3078: e3540000 cmp r4, #0 307c: 0a000004 beq 3094 <kmem_cache_alloc_trace+0xec> 3080: e5951010 ldr r1, [r5, #16] 3084: e3510000 cmp r1, #0 3088: 0a000001 beq 3094 <kmem_cache_alloc_trace+0xec> 308c: e1a00004 mov r0, r4 3090: ebfffffe bl 0 <__memzero> 3094: e59f3058 ldr r3, [pc, #88] ; 30f4 <kmem_cache_alloc_trace+0x14c> 3098: e595900c ldr r9, [r5, #12] 309c: e5932004 ldr r2, [r3, #4] 30a0: e3520000 cmp r2, #0 30a4: 0a00000e beq 30e4 <kmem_cache_alloc_trace+0x13c> 30a8: e5935010 ldr r5, [r3, #16] 30ac: e3550000 cmp r5, #0 30b0: 0a00000b beq 30e4 <kmem_cache_alloc_trace+0x13c> 30b4: e2855008 add r5, r5, #8 30b8: e58d9000 str r9, [sp] 30bc: e1a03008 mov r3, r8 30c0: e58d6004 str r6, [sp, #4] 30c4: e1a01007 mov r1, r7 30c8: e515c008 ldr ip, [r5, #-8] 30cc: e1a02004 mov r2, r4 30d0: e5150004 ldr r0, [r5, #-4] 30d4: e12fff3c blx ip 30d8: e4953008 ldr r3, [r5], #8 30dc: e3530000 cmp r3, #0 30e0: 1afffff4 bne 30b8 <kmem_cache_alloc_trace+0x110> 30e4: e24bd024 sub sp, fp, #36 ; 0x24 30e8: e1a00004 mov r0, r4 30ec: e89dabf0 ldm sp, {r4, r5, r6, r7, r8, r9, fp, sp, pc} ...
nosmp copy:
00002fa8 <kmem_cache_ alloc_trace> : alloc_trace+ 0x148> alloc_trace+ 0x40> alloc_trace+ 0x6c> alloc_trace+ 0xc8> alloc_trace+ 0xb0> alloc_trace+ 0xb0> alloc_trace+ 0xb4> alloc_trace+ 0x40> alloc_trace+ 0xec> alloc_trace+ 0xec> alloc_trace+ 0xec> alloc_trace+ 0x14c> alloc_trace+ 0x13c> alloc_trace+ 0x13c> alloc_trace+ 0x110>
2fa8: e1a0c00d mov ip, sp
2fac: e92ddbf0 push {r4, r5, r6, r7, r8, r9, fp, ip, lr, pc}
2fb0: e24cb004 sub fp, ip, #4
2fb4: e24dd008 sub sp, sp, #8
2fb8: e52de004 push {lr} ; (str lr, [sp, #-4]!)
2fbc: ebfffffe bl 0 <__gnu_mcount_nc>
2fc0: e59f3128 ldr r3, [pc, #296] ; 30f0 <kmem_cache_
2fc4: e1a0700e mov r7, lr
2fc8: e1a05000 mov r5, r0
2fcc: e1a06001 mov r6, r1
2fd0: e1a08002 mov r8, r2
2fd4: e5933000 ldr r3, [r3]
2fd8: e2033010 and r3, r3, #16
2fdc: e1130001 tst r3, r1
2fe0: 0a000000 beq 2fe8 <kmem_cache_
2fe4: ebfffffe bl 0 <_cond_resched>
2fe8: e5953000 ldr r3, [r5]
2fec: e593c004 ldr ip, [r3, #4]
2ff0: e5934000 ldr r4, [r3]
2ff4: e3540000 cmp r4, #0
2ff8: 1a000005 bne 3014 <kmem_cache_
2ffc: e1a00005 mov r0, r5
3000: e1a01006 mov r1, r6
3004: e1a02007 mov r2, r7
3008: ebfffffe bl 2f4 <ksize+0xc0>
300c: e1a04000 mov r4, r0
3010: ea000016 b 3070 <kmem_cache_
3014: e5953014 ldr r3, [r5, #20]
3018: e7942003 ldr r2, [r4, r3]
301c: e10f0000 mrs r0, CPSR
3020: f10c0080 cpsid i
3024: e5953000 ldr r3, [r5]
3028: e5931000 ldr r1, [r3]
302c: e1510004 cmp r1, r4
3030: 1a000008 bne 3058 <kmem_cache_
3034: e5931004 ldr r1, [r3, #4]
3038: e151000c cmp r1, ip
303c: 1a000005 bne 3058 <kmem_cache_
3040: e5832000 str r2, [r3]
3044: e2811001 add r1, r1, #1
3048: e5953000 ldr r3, [r5]
304c: e5831004 str r1, [r3, #4]
3050: e3a03001 mov r3, #1
3054: ea000000 b 305c <kmem_cache_
3058: e3a03000 mov r3, #0
305c: e121f000 msr CPSR_c, r0
3060: e3530000 cmp r3, #0
3064: 0affffdf beq 2fe8 <kmem_cache_
3068: e5953014 ldr r3, [r5, #20]
306c: f7d2f003 pld [r2, r3]
3070: e3160902 tst r6, #32768 ; 0x8000
3074: 0a000006 beq 3094 <kmem_cache_
3078: e3540000 cmp r4, #0
307c: 0a000004 beq 3094 <kmem_cache_
3080: e5951010 ldr r1, [r5, #16]
3084: e3510000 cmp r1, #0
3088: 0a000001 beq 3094 <kmem_cache_
308c: e1a00004 mov r0, r4
3090: ebfffffe bl 0 <__memzero>
3094: e59f3058 ldr r3, [pc, #88] ; 30f4 <kmem_cache_
3098: e595900c ldr r9, [r5, #12]
309c: e5932004 ldr r2, [r3, #4]
30a0: e3520000 cmp r2, #0
30a4: 0a00000e beq 30e4 <kmem_cache_
30a8: e5935010 ldr r5, [r3, #16]
30ac: e3550000 cmp r5, #0
30b0: 0a00000b beq 30e4 <kmem_cache_
30b4: e2855008 add r5, r5, #8
30b8: e58d9000 str r9, [sp]
30bc: e1a03008 mov r3, r8
30c0: e58d6004 str r6, [sp, #4]
30c4: e1a01007 mov r1, r7
30c8: e515c008 ldr ip, [r5, #-8]
30cc: e1a02004 mov r2, r4
30d0: e5150004 ldr r0, [r5, #-4]
30d4: e12fff3c blx ip
30d8: e4953008 ldr r3, [r5], #8
30dc: e3530000 cmp r3, #0
30e0: 1afffff4 bne 30b8 <kmem_cache_
30e4: e24bd024 sub sp, fp, #36 ; 0x24
30e8: e1a00004 mov r0, r4
30ec: e89dabf0 ldm sp, {r4, r5, r6, r7, r8, r9, fp, sp, pc}
...