352 static int handle_unaligned_access(u16 instruction, struct pt_regs *regs) 353 { 354 u_int rm; 355 int ret, index; 356 357 index = (instruction>>8)&15; /* 0x0F00 */ 358 rm = regs->regs[index]; 359 360 /* shout about the first ten userspace fixups */ 361 if (user_mode(regs) && handle_unaligned_notify_count>0) { 362 handle_unaligned_notify_count--; 363 364 printk("Fixing up unaligned userspace access in \"%s\" pid=%d pc=0x%p ins=0x%04hx\n", 365 current->comm,current->pid,(u16*)regs->pc,instruction); 366 } ... 487 } [링크 : http://www.gelato.unsw.edu.au/lxr/source/arch/sh/kernel/traps.c] |
Fixing up unaligned userspace access in "stbmw.out" pid=378 pc=0x29aa1848 ins=0x6111
이러한 커널 경고 메시지가 나올 때
PID는 Process ID
PC는 Program counter
INS는 INStruction 을 의미한다.
Fixing up unaligned userspace access in "sh" pid=48 pc=0x0ccda168 ins=0x60f0 Fixing up unaligned userspace access in "sh" pid=48 pc=0x0ccd9eac ins=0x9015 DissAddr Obj Code Dissassembly 0CCDA158 6893 MOV R9,R8 0CCDA15A 410B JSR @R1 0CCDA15C 7801 ADD #H'01,R8 0CCDA15E 64A2 MOV.L @R10,R4 0CCDA160 3488 SUB R8,R4 0CCDA162 D13C MOV.L @(H'00F0:8,PC),R1 0CCDA164 410B JSR @R1 0CCDA166 0009 NOP 0CCDA168 60F0 MOV.B @R15,R0 ## Faulting Address 0CCDA16A 8809 CMP/EQ #H'09,R0 0CCDA16C 8904 BT @H'CCDA178:8 0CCDA16E 9162 MOV.W @(H'00C4:8,PC),R1 0CCDA170 31FC ADD R15,R1 0CCDA172 9061 MOV.W @(H'00C2:8,PC),R0 0CCDA174 5119 MOV.L @(H'24:4,R1),R1 0CCDA176 0F16 MOV.L R1,@(R0,R15) 0CCDA178 AE21 BRA @H'CCD9DBE:12 0CCDA17A 0009 NOP [링크 : http://markmail.org/message/yfqbcoa6xumlk6pdb+state:results] |
그나저나.. so 파일로 분산해서 사용할 때는 어떻게 해야 하나..
'Linux' 카테고리의 다른 글
convert(1) - convert between image formats as well as resize an image (0) | 2009.04.28 |
---|---|
addr2line을 이용한 Fixing up unaligned userspace access 추적 (0) | 2009.04.24 |
GTK_IM_MODULE을 이용하여 기본 IM을 설정하자(default Input Method) (0) | 2009.04.15 |
/dev/random 을 이용한 랜덤값 얻기 (3) | 2009.04.14 |
Xwindow 시작 세션 변경하기 (2) | 2009.04.12 |