From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S265823AbUGMUbH (ORCPT ); Tue, 13 Jul 2004 16:31:07 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S265824AbUGMUbH (ORCPT ); Tue, 13 Jul 2004 16:31:07 -0400 Received: from e1.ny.us.ibm.com ([32.97.182.101]:29653 "EHLO e1.ny.us.ibm.com") by vger.kernel.org with ESMTP id S265823AbUGMUaw (ORCPT ); Tue, 13 Jul 2004 16:30:52 -0400 Date: Tue, 13 Jul 2004 13:30:25 -0700 From: "Martin J. Bligh" To: linux-kernel Subject: panic from isp1020 Message-ID: <133950000.1089750625@flay> X-Mailer: Mulberry/2.1.2 (Linux/x86) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Content-Disposition: inline Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org 2.6.7-mm4 Unable to handle kernel NULL pointer dereference at virtual address 00000154 printing eip: c01eb588 *pde = 26549001 *pte = 00000000 Oops: 0002 [#1] SMP Modules linked in: CPU: 0 EIP: 0060:[] Not tainted VLI EFLAGS: 00010046 (2.6.7-mm4) EIP is at isp1020_intr_handler+0x23c/0x2e0 eax: 00000000 ebx: f0c78000 ecx: 00000000 edx: 00000050 esi: 00000000 edi: 00000001 ebp: f13c8000 esp: c0343f30 ds: 007b es: 007b ss: 0068 Process swapper (pid: 0, threadinfo=c0342000 task=c02b9980) Stack: f0c78000 00000002 f13c8000 00000000 00000013 00000001 f13c81cc c01eb339 00000013 f13c8000 c0343fac f13d1bc0 24000001 c0105a37 00000013 f13c8000 c0343fac c033ba60 00000260 00000013 c0343fa4 c0105d42 00000013 c0343fac Call Trace: [] do_isp1020_intr_handler+0x25/0x38 [] handle_IRQ_event+0x2b/0x50 [] do_IRQ+0xa2/0x124 [] common_interrupt+0x18/0x20 [] default_idle+0x2c/0x34 [] cpu_idle+0x30/0x40 [] rest_init+0x49/0x4c [] start_kernel+0x172/0x178 Code: 00 01 00 00 00 f6 43 0d 20 74 15 8d 96 c0 00 00 00 8d 43 20 6a 60 50 52 e8 d6 8f fc ff 83 c4 0c 80 3b 03 75 11 53 e8 a4 00 00 00 <89> 86 54 01 00 00 83 c4 04 eb 0a c7 86 54 01 00 00 00 00 07 00 The EIP according to addr2line is: Cmnd->result = isp1020_return_status(sts); (drivers/scsi/qlogicisp.c:1048) 0xc01eb588 : mov %eax,0x154(%esi) but esi is 0 .... Dump of assembler code for function isp1020_intr_handler: 0xc01eb34c : sub $0x8,%esp 0xc01eb34f : push %ebp 0xc01eb350 : push %edi 0xc01eb351 : push %esi 0xc01eb352 : push %ebx 0xc01eb353 : mov 0x20(%esp,1),%ebp 0xc01eb357 : lea 0x1cc(%ebp),%eax 0xc01eb35d : mov %eax,0x14(%esp,1) 0xc01eb361 : mov 0x1cc(%ebp),%eax 0xc01eb367 : test %eax,%eax 0xc01eb369 : je 0xc01eb371 0xc01eb36b : movzwl 0xa(%eax),%eax 0xc01eb36f : jmp 0xc01eb392 0xc01eb371 : mov 0xb4(%ebp),%edx 0xc01eb377 : mov 0xc039e538,%eax 0xc01eb37c : add $0xa,%edx 0xc01eb37f : test %eax,%eax 0xc01eb381 : je 0xc01eb390 0xc01eb383 : movzwl (%edx,%eax,1),%eax 0xc01eb387 : jmp 0xc01eb392 0xc01eb389 : lea 0x0(%esi,1),%esi 0xc01eb390 : in (%dx),%ax 0xc01eb392 : test $0x4,%al 0xc01eb394 : je 0xc01eb624 0xc01eb39a : mov 0x1cc(%ebp),%eax 0xc01eb3a0 : test %eax,%eax 0xc01eb3a2 : je 0xc01eb3b0 0xc01eb3a4 : movzwl 0x7a(%eax),%eax 0xc01eb3a8 : jmp 0xc01eb3ca 0xc01eb3aa : lea 0x0(%esi),%esi 0xc01eb3b0 : mov 0xb4(%ebp),%edx 0xc01eb3b6 : mov 0xc039e538,%eax 0xc01eb3bb : add $0x7a,%edx 0xc01eb3be : test %eax,%eax 0xc01eb3c0 : je 0xc01eb3c8 0xc01eb3c2 : movzwl (%edx,%eax,1),%eax 0xc01eb3c6 : jmp 0xc01eb3ca 0xc01eb3c8 : in (%dx),%ax 0xc01eb3ca : movzwl %ax,%eax 0xc01eb3cd : mov %eax,0x10(%esp,1) 0xc01eb3d1 : mov 0x1cc(%ebp),%eax 0xc01eb3d7 : mov $0x7000,%ecx 0xc01eb3dc : test %eax,%eax 0xc01eb3de : je 0xc01eb3f0 0xc01eb3e0 : mov %cx,0xc0(%eax) 0xc01eb3e7 : jmp 0xc01eb414 0xc01eb3e9 : lea 0x0(%esi,1),%esi 0xc01eb3f0 : mov 0xb4(%ebp),%edx 0xc01eb3f6 : mov 0xc039e538,%eax 0xc01eb3fb : add $0xc0,%edx 0xc01eb401 : test %eax,%eax 0xc01eb403 : je 0xc01eb410 0xc01eb405 : mov %cx,(%edx,%eax,1) 0xc01eb409 : jmp 0xc01eb414 0xc01eb40b : nop 0xc01eb40c : lea 0x0(%esi,1),%esi 0xc01eb410 : mov %ecx,%eax 0xc01eb412 : out %ax,(%dx) 0xc01eb414 : mov 0x1cc(%ebp),%eax 0xc01eb41a : test %eax,%eax 0xc01eb41c : je 0xc01eb424 0xc01eb41e : movzwl 0xc(%eax),%eax 0xc01eb422 : jmp 0xc01eb442 0xc01eb424 : mov 0xb4(%ebp),%edx 0xc01eb42a : mov 0xc039e538,%eax 0xc01eb42f : add $0xc,%edx 0xc01eb432 : test %eax,%eax 0xc01eb434 : je 0xc01eb440 0xc01eb436 : movzwl (%edx,%eax,1),%eax 0xc01eb43a : jmp 0xc01eb442 0xc01eb43c : lea 0x0(%esi,1),%esi 0xc01eb440 : in (%dx),%ax 0xc01eb442 : test $0x1,%al 0xc01eb444 : je 0xc01eb504 0xc01eb44a : mov 0x1cc(%ebp),%eax 0xc01eb450 : test %eax,%eax 0xc01eb452 : je 0xc01eb460 0xc01eb454 : movzwl 0x70(%eax),%eax 0xc01eb458 : jmp 0xc01eb47a 0xc01eb45a : lea 0x0(%esi),%esi 0xc01eb460 : mov 0xb4(%ebp),%edx 0xc01eb466 : mov 0xc039e538,%eax 0xc01eb46b : add $0x70,%edx 0xc01eb46e : test %eax,%eax 0xc01eb470 : je 0xc01eb478 0xc01eb472 : movzwl (%edx,%eax,1),%eax 0xc01eb476 : jmp 0xc01eb47a 0xc01eb478 : in (%dx),%ax 0xc01eb47a : movzwl %ax,%eax 0xc01eb47d : cmp $0x4006,%eax 0xc01eb482 : jg 0xc01eb4a0 0xc01eb484 : cmp $0x4005,%eax 0xc01eb489 : jge 0xc01eb4c0 0xc01eb48b : cmp $0x4002,%eax 0xc01eb490 : jg 0xc01eb4cd 0xc01eb492 : cmp $0x4001,%eax 0xc01eb497 : jl 0xc01eb4cd 0xc01eb499 : jmp 0xc01eb4c0 0xc01eb49b : nop 0xc01eb49c : lea 0x0(%esi,1),%esi 0xc01eb4a0 : cmp $0x8001,%eax 0xc01eb4a5 : je 0xc01eb4ae 0xc01eb4a7 : cmp $0x8006,%eax 0xc01eb4ac : jne 0xc01eb4cd 0xc01eb4ae : mov 0x14(%esp,1),%eax 0xc01eb4b2 : movl $0x1,0xf8(%eax) 0xc01eb4bc : jmp 0xc01eb4cd 0xc01eb4be : mov %esi,%esi 0xc01eb4c0 : push $0xc02954a0 0xc01eb4c5 : call 0xc0118814 0xc01eb4ca : add $0x4,%esp 0xc01eb4cd : mov 0x1cc(%ebp),%eax 0xc01eb4d3 : test %eax,%eax 0xc01eb4d5 : je 0xc01eb4e0 0xc01eb4d7 : movw $0x0,0xc(%eax) 0xc01eb4dd : jmp 0xc01eb504 0xc01eb4df : nop 0xc01eb4e0 : mov 0xb4(%ebp),%edx 0xc01eb4e6 : mov 0xc039e538,%eax 0xc01eb4eb : add $0xc,%edx 0xc01eb4ee : test %eax,%eax 0xc01eb4f0 : je 0xc01eb500 0xc01eb4f2 : movw $0x0,(%edx,%eax,1) 0xc01eb4f8 : jmp 0xc01eb504 0xc01eb4fa : lea 0x0(%esi),%esi 0xc01eb500 : xor %eax,%eax 0xc01eb502 : out %ax,(%dx) 0xc01eb504 : mov 0x14(%esp,1),%eax 0xc01eb508 : mov 0xf4(%eax),%edi 0xc01eb50e : cmp 0x10(%esp,1),%edi 0xc01eb512 : je 0xc01eb61a 0xc01eb518 : mov 0x14(%esp,1),%eax 0xc01eb51c : mov %edi,%ebx 0xc01eb51e : shl $0x6,%ebx 0xc01eb521 : inc %edi 0xc01eb522 : add 0xe8(%eax),%ebx 0xc01eb528 : and $0x7,%edi 0xc01eb52b : add $0xfc,%eax 0xc01eb530 : mov 0x4(%ebx),%edx 0xc01eb533 : shl $0x2,%edx 0xc01eb536 : mov (%edx,%eax,1),%esi 0xc01eb539 : movl $0x0,(%edx,%eax,1) 0xc01eb540 : movzwl 0xa(%ebx),%eax 0xc01eb544 : add $0xfffffffc,%ax 0xc01eb548 : cmp $0x1,%ax 0xc01eb54c : jbe 0xc01eb554 0xc01eb54e : testb $0x8,0xe(%ebx) 0xc01eb552 : je 0xc01eb562 0xc01eb554 : mov 0x14(%esp,1),%eax 0xc01eb558 : movl $0x1,0xf8(%eax) 0xc01eb562 : testb $0x20,0xd(%ebx) 0xc01eb566 : je 0xc01eb57d 0xc01eb568 : lea 0xc0(%esi),%edx 0xc01eb56e : lea 0x20(%ebx),%eax 0xc01eb571 : push $0x60 0xc01eb573 : push %eax 0xc01eb574 : push %edx 0xc01eb575 : call 0xc01b4550 0xc01eb57a : add $0xc,%esp 0xc01eb57d : cmpb $0x3,(%ebx) 0xc01eb580 : jne 0xc01eb593 0xc01eb582 : push %ebx 0xc01eb583 : call 0xc01eb62c 0xc01eb588 : mov %eax,0x154(%esi) 0xc01eb58e : add $0x4,%esp 0xc01eb591 : jmp 0xc01eb59d 0xc01eb593 : movl $0x70000,0x154(%esi) 0xc01eb59d : cmpw $0x0,0x9e(%esi) 0xc01eb5a5 : je 0xc01eb5b7 0xc01eb5a7 : cmpl $0x3,0x4c(%esi) 0xc01eb5ab : jne 0xc01eb5d0 0xc01eb5ad : ud2a 0xc01eb5af : dec %edx 0xc01eb5b0 : add %dl,%al 0xc01eb5b2 : aam $0x28 0xc01eb5b4 : shr $0x19,%bl 0xc01eb5b7 : cmpl $0x0,0x64(%esi) 0xc01eb5bb : je 0xc01eb5d0 0xc01eb5bd : cmpl $0x3,0x4c(%esi) 0xc01eb5c1 : jne 0xc01eb5d0 0xc01eb5c3 : ud2a 0xc01eb5c5 : and %eax,(%eax) 0xc01eb5c7 : rcl %ah 0xc01eb5c9 : sub %al,%al 0xc01eb5cb : nop 0xc01eb5cc : lea 0x0(%esi,1),%esi 0xc01eb5d0 : mov 0x1cc(%ebp),%eax 0xc01eb5d6 : mov %edi,%ecx 0xc01eb5d8 : test %eax,%eax 0xc01eb5da : je 0xc01eb5e2 0xc01eb5dc : mov %di,0x7a(%eax) 0xc01eb5e0 : jmp 0xc01eb604 0xc01eb5e2 : mov 0xb4(%ebp),%edx 0xc01eb5e8 : mov 0xc039e538,%eax 0xc01eb5ed : add $0x7a,%edx 0xc01eb5f0 : test %eax,%eax 0xc01eb5f2 : je 0xc01eb600 0xc01eb5f4 : mov %di,(%edx,%eax,1) 0xc01eb5f8 : jmp 0xc01eb604 0xc01eb5fa : lea 0x0(%esi),%esi 0xc01eb600 : mov %ecx,%eax 0xc01eb602 : out %ax,(%dx) 0xc01eb604 : push %esi 0xc01eb605 : mov 0x120(%esi),%eax 0xc01eb60b : call *%eax 0xc01eb60d : add $0x4,%esp 0xc01eb610 : cmp 0x10(%esp,1),%edi 0xc01eb614 : jne 0xc01eb518 0xc01eb61a : mov 0x14(%esp,1),%eax 0xc01eb61e : mov %edi,0xf4(%eax) 0xc01eb624 : pop %ebx 0xc01eb625 : pop %esi 0xc01eb626 : pop %edi 0xc01eb627 : pop %ebp 0xc01eb628 : pop %ecx 0xc01eb629 : pop %edx 0xc01eb62a : ret