Dear friends. I have the crash oops and aiee situations at the end of copying files from one mass-storage flash into another. I use linux kernel 2.6.12 rc3, arm 920T processor and isp1761 usb philips chip. Log from terminal:
drivers/usb/phcd/host/pehci.c: Error: We should not put the same stuff Unable to handle kernel NULL pointer dereference at virtual address 0000000c pgd = c1d48000 [0000000c] *pgd=31cb1031, *pte=00000000, *ppte=00000000 Internal error: Oops: 17
Modules linked in: pehci usb_storage mousedev usbhid isp1761_hal g_ether s3c2410_udc usbcore s3c2410_tlv320aic23 s3c2410_audio tlv320 spi_s3c2410 soundcore evdev ds2745 s3c2410_ts tsdev tps65010 sa2410_speed sa2410_regs sa2410_gpio unix CPU: 0 PC is at pehci_hcd_atl_worker+0x210/0x71c [pehci] LR is at 0x4 pc : [<bf0652ac>] lr : [<00000004>] Not tainted sp : c1d89bec ip : c17afdec fp : c1d89c64 r10: 00000000 r9 : fffffffb r8 : 00000000 r7 : c0649520 r6 : bf06b3c0 r5 : c1873000 r4 : c17afda0 r3 : 00000004 r2 : 00000000 r1 : c064e920 r0 : 00000002 Flags: nzcv IRQs on FIQs on Mode SVC_32 Segment user Control: C000717F Table: 31D48000 DAC: 00000015 Process klogd (pid: 754, stack limit = 0xc1d88194) Backtrace: [<bf06509c>] (pehci_hcd_atl_worker+0x0/0x71c [pehci]) from [<bf0658bc>] (pehci_hcd_irq+0x78/0xa8 [pehci]) [<bf065844>] (pehci_hcd_irq+0x0/0xa8 [pehci]) from [<bf057190>] (isp1761_pci_isr+0x70/0x7c [isp1761_hal]) r5 = BF059240 r4 = C1D89D0C [<bf057120>] (isp1761_pci_isr+0x0/0x7c [isp1761_hal]) from [<c00c1ad0>] (__do_irq+0x4c/0x88) r5 = 00000000 r4 = C1F599A0 [<c00c1a84>] (__do_irq+0x0/0x88) from [<c00c1c2c>] (do_edge_IRQ+0xb0/0x12c) r8 = C1D89D0C r7 = C1D89D0C r6 = C1F599A0 r5 = 00000011 r4 = C02E2A8C [<c00c1b7c>] (do_edge_IRQ+0x0/0x12c) from [<c00c1db4>] (asm_do_IRQ+0x50/0x12c) r7 = C1D4ECC0 r6 = 00000001 r5 = C1D89D40 r4 = FFFFFFFF [<c00c1d64>] (asm_do_IRQ+0x0/0x12c) from [<c00c0960>] (__irq_svc+0x20/0x140) [<c01fb1dc>] (alloc_skb+0x0/0xc0) from [<c01f9560>] (sock_alloc_send_skb+0x70/0x270) r8 = 00000062 r7 = C1D4ECC0 r6 = C1D89E5C r5 = C1D4ECC0 r4 = C1D89DFC [<c01f94f0>] (sock_alloc_send_skb+0x0/0x270) from [<bf0019fc>] (unix_dgram_sendmsg+0x168/0x488 [unix]) [<bf001894>] (unix_dgram_sendmsg+0x0/0x488 [unix]) from [<c01f71f4>] (sock_aio_write+0x11c/0x12c) [<c01f70dc>] (sock_aio_write+0x4/0x12c) from [<c0109fe8>] (do_sync_write+0xb4/0xe8) r6 = C1CC6AC0 r5 = 00000000 r4 = 00000000 [<c0109f34>] (do_sync_write+0x0/0xe8) from [<c010a0f4>] (vfs_write+0xd8/0x138) [<c010a01c>] (vfs_write+0x0/0x138) from [<c010a214>] (sys_write+0x4c/0x74) [<c010a1c8>] (sys_write+0x0/0x74) from [<c00c0e60>] (ret_fast_syscall+0x0/0x2c) r8 = C00C0FE4 r7 = 00000004 r6 = BEC3E819 r5 = BEC3E7D3 r4 = BEC3E7B8 Code: 1a000007 e51be060 e11e0003 0a000004 (e598300c) <0>Kernel panic - not syncing: Aiee, killing interrupt handler! I debugged pehci driver and found that linux crashes during executing if(hcpriv->timer < 20) in function pehci_hcd_atl_worker. So, hcpriv == NULL. So my question is, why this hcpriv pointer became NULL?