ARM汇编实战3: destory stack issue

来源:互联网 发布:被芯哪个牌子好 知乎 编辑:程序博客网 时间:2024/06/07 11:38

<1>[ 2894.179063] [(2012-12-31 07:20:58.219291396 UTC)] Unable to handle kernel paging request at virtual address da922100
<1>[ 2894.179583] [(2012-12-31 07:20:58.219808063 UTC)] pgd = d8330000
<1>[ 2894.179889] [(2012-12-31 07:20:58.220114729 UTC)] [da922100] *pgd=00000000
<0>[ 2894.180258] [(2012-12-31 07:20:58.220481396 UTC)] Internal error: Oops: 80000005 [#1] PREEMPT SMP ARM
<4>[ 2894.180703] [(2012-12-31 07:20:58.220928063 UTC)] Modules linked in: sm_event_driver sm_event_log
<4>[ 2894.181169] [(2012-12-31 07:20:58.221393063 UTC)] CPU: 0 Not tainted (3.4.0 #1)
<4>[ 2894.183676] [(2012-12-31 07:20:58.223899729 UTC)] PC is at 0xda922100
<4>[ 2894.190121] [(2012-12-31 07:20:58.230344729 UTC)] LR is at msm_spm_drv_set_low_power_mode+0x44/0xa4
<4>[ 2894.199141] [(2012-12-31 07:20:58.239364729 UTC)] pc : [<da922100>] lr : [<c008559c>] psr: 60000193
<4>[ 2894.199193] [(2012-12-31 07:20:58.239416396 UTC)] sp : c088ff30 ip : 00000002 fp : 00000082
<4>[ 2894.217186] [(2012-12-31 07:20:58.257409729 UTC)] r10: 71bcd3dc r9 : 00000000 r8 : 005c6f2f
<4>[ 2894.225694] [(2012-12-31 07:20:58.265919728 UTC)] r7 : c088e000 r6 : 00000000 r5 : c0b657b0 r4 : 00000002
<4>[ 2894.235504] [(2012-12-31 07:20:58.275728062 UTC)] r3 : c0b657d8 r2 : 00000000 r1 : a0000193 r0 : 00000000
<4>[ 2894.245316] [(2012-12-31 07:20:58.285541395 UTC)] Flags: nZCv IRQs off FIQs on Mode SVC_32 ISA ARM Segment kernel
<4>[ 2894.255991] [(2012-12-31 07:20:58.296216395 UTC)] Control: 10c5387d Table: 285e404a DAC: 00000015



c0085558 <msm_spm_drv_set_low_power_mode>: c0085558:e92d4070 push{r4, r5, r6, lr} c008555c:e2505000 subsr5, r0, #0; 0x0 c0085560:0a00001f beqc00855e4 <msm_spm_drv_set_low_power_mode+0x8c> c0085564:e595302c ldrr3, [r5, #44] c0085568:e201107f andr1, r1, #127; 0x7f c008556c:e3c33e7f bicr3, r3, #2032; 0x7f0 c0085570:e1831201 orrr1, r3, r1, lsl #4 c0085574:e585102c strr1, [r5, #44] c0085578:e3a01003 movr1, #3; 0x3 c008557c:ebffff92 blc00853cc <msm_spm_drv_flush_shadow> c0085580:f57ff04f dsbsy c0085584:e59f3060 ldrr3, [pc, #96]; c00855ec <msm_spm_drv_set_low_power_mode+0x94> c0085588:e5933018 ldrr3, [r3, #24] c008558c:e3530000 cmpr3, #0; 0x0 c0085590:0a000000 beqc0085598 <msm_spm_drv_set_low_power_mode+0x40> c0085594:e12fff33 blxr3 c0085598:ebfe6302 blc001e1a8 <write_to_strongly_ordered_memory> c008559c:e59f304c ldrr3, [pc, #76]; c00855f0 <msm_spm_drv_set_low_power_mode+0x98> c00855a0:e5930000 ldrr0, [r3] c00855a4:e2100001 andsr0, r0, #1; 0x1 c00855a8:08bd8070 popeq{r4, r5, r6, pc} c00855ac:e1a06005 movr6, r5 c00855b0:e3a04000 movr4, #0; 0x0 c00855b4:e5953090 ldrr3, [r5, #144] c00855b8:e59f0034 ldrr0, [pc, #52]; c00855f4 <msm_spm_drv_set_low_power_mode+0x9c> c00855bc:e59f1034 ldrr1, [pc, #52]; c00855f8 <msm_spm_drv_set_low_power_mode+0xa0> c00855c0:e7932004 ldrr2, [r3, r4] c00855c4:e2844004 addr4, r4, #4; 0x4 c00855c8:e5963020 ldrr3, [r6, #32] c00855cc:e2866004 addr6, r6, #4; 0x4 c00855d0:eb14dd1c blc05bca48 <printk> c00855d4:e354006c cmpr4, #108; 0x6c c00855d8:1afffff5 bnec00855b4 <msm_spm_drv_set_low_power_mode+0x5c> c00855dc:e3a00000 movr0, #0; 0x0 c00855e0:e8bd8070 pop{r4, r5, r6, pc} c00855e4:e3e00015 mvnr0, #21; 0x15 c00855e8:e8bd8070 pop{r4, r5, r6, pc} c00855ec:c08b4824 .word0xc08b4824 c00855f0:c0b657d8 .word0xc0b657d8 c00855f4:c074d187 .word0xc074d187 c00855f8:c05d34c4 .word0xc05d34c4 

c008559c: e59f304c ldr r3, [pc, #76] ; c00855f0 <msm_spm_drv_set_low_power_mode+0x98> 

after this code: r3 become 0xc0b657d8, it is right. 


SP: 0xc088feb0: feb0 00000002 c08be328 00000000 c05c7718 00000000 00000002 0003f557 0003f57d fed0 00000001 da922100 60000193 ffffffff c088ff1c c05c5bf8 00000000 a0000193 fef0 00000000 c0b657d8 00000002 c0b657b0 00000000 c088e000 005c6f2f 00000000 ff10 71bcd3dc 00000082 00000002 c088ff30 c008559c da922100 60000193 ffffffff ff30 15752a00 00000000 da71720a 000002a1 00000002 c05c76ac ffffffff 00000000 ff50 00000002 c08e0208 00000000 c088e000 c0b66d34 c05d46f4 c08be30c 0020406a ff70 410fc051 00000000 c088ff8c c05c4214 c05c4f08 c08cae54 c088e000 c000f4e0 ff90 c08b6128 04c4b402 c00e9c8c 00000000 c088ffb4 00000001 c0d690f4 c05a9710 

sp:c088ff30 
c00855e0: e8bd8070 pop {r4, r5, r6, pc} 

pc: da922100, till here panic. 
0 0