Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755768Ab2HFKPh (ORCPT ); Mon, 6 Aug 2012 06:15:37 -0400 Received: from na3sys009aog136.obsmtp.com ([74.125.149.85]:36162 "EHLO na3sys009aog136.obsmtp.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755654Ab2HFKPf (ORCPT ); Mon, 6 Aug 2012 06:15:35 -0400 Date: Mon, 6 Aug 2012 13:12:01 +0300 From: Felipe Balbi To: Peiyong Feng Cc: balbi@ti.com, linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org, Lukasz Majewski Subject: Re: [BUG] Kernel panic when try s3c-hsotg.c with kernel 3.5 Message-ID: <20120806101200.GJ17551@arwen.pp.htv.fi> Reply-To: balbi@ti.com References: MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="PEkEgRdBLZYkpbX2" Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 8132 Lines: 198 --PEkEgRdBLZYkpbX2 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Hi, On Mon, Aug 06, 2012 at 06:12:05PM +0800, Peiyong Feng wrote: > I got a kernel panic when try hsotg of ok6410 which is based on s3c6410: >=20 >=20 > cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapte= rs > Unable to handle kernel NULL pointer dereference at virtual address 00000= 100 > pgd =3D c0004000 > [00000100] *pgd=3D00000000 > Internal error: Oops: 5 [#1] ARM > Modules linked in: > CPU: 0 Not tainted (3.5.0 #9) > PC is at s3c_hsotg_handle_outdone+0x44/0x158 > LR is at s3c_hsotg_irq+0x75c/0x804 > pc : [] lr : [] psr: 60000193 > sp : c782fd20 ip : 00000029 fp : c13a1460 > r10: 00000000 r9 : 00000008 r8 : 000000d0 > r7 : c13a1400 r6 : 00000002 r5 : 00000000 r4 : 00060002 > r3 : 000000d0 r2 : 00000000 r1 : 00080200 r0 : c13a1400 > Flags: nZCv IRQs off FIQs on Mode SVC_32 ISA ARM Segment kernel > Control: 00c5387d Table: 50004008 DAC: 00000017 > Process swapper (pid: 1, stack limit =3D 0xc782e268) > Stack: (0xc782fd20 to 0xc7830000) > fd20: c13a1460 c0200f64 00000000 00060002 00000000 00000002 c13a1400 0000= 0010 > fd40: 00000000 c024061c 00060002 00000000 00000002 00000008 c782fda0 c139= a5c0 > fd60: c139a5c0 00000000 00000000 0000005a c04cc52c c04cc594 c04ea5fe c005= 65c0 > fd80: 00000000 00000000 00000000 c04cc52c c139a5c0 c04cc57c 00000000 c04e= b328 > fda0: c04cc55c c04eb324 c04c44c0 c0056768 c04cc52c c04cc57c 00000000 c005= 8d64 > fdc0: 0000005a c04d7dd8 00000000 c005617c 0000005a c000efbc c04eb350 0000= 0001 > fde0: c782fe08 c000853c c036c540 60000013 ffffffff c782fe3c c04cc57c c04c= c55c > fe00: 60000013 c000dd80 c04cc57c c782c000 ffffffff 00000001 60000013 c04c= c52c > fe20: c139a5c0 0000005a c04cc57c c04cc55c 60000013 c04c44c0 f6010000 c782= fe50 > fe40: c036c53c c036c540 60000013 ffffffff c023fec0 c00574c8 00000000 c008= b2dc > fe60: c023fec0 00000000 00000000 c13a1400 0000005a c139a5c0 c04cc52c c005= 7960 > fe80: 0000005a c13a1400 c04c44b8 00000000 c051d238 c049b0ec 00000000 c036= 88fc > fea0: c7853e60 c13a1400 c7804f80 00000000 c04c44f4 60000013 c7855a80 0000= 0000 > fec0: c04e1bb4 c04c44c0 c04c44c0 c04e1bb4 c04e1bb4 c051d238 c049b0ec 0000= 0000 > fee0: c04eb040 c020588c c04c44c0 c0204524 c04c44c0 c04c44f4 c04e1bb4 c020= 46ac > ff00: c13a01e0 c0204738 00000000 c782ff18 c04e1bb4 c0202e30 c7803878 c782= 3700 > ff20: c04dd1d0 c040b8d4 c04e1bb4 c04e1bb4 c04dd1d0 c0203600 c040b8d4 c01b= 8568 > ff40: 00000000 00000000 c04e1bb4 00000007 c04eb040 c782e000 c04a65e0 c020= 4ce8 > ff60: 00000000 c04a65d4 00000007 c04eb040 c782e000 c0008628 c04c7ea0 0000= 0000 > ff80: 0000009c 00000000 c0625cf9 c0037178 00000006 00000006 c0461b84 c042= cee8 > ffa0: c04c7ea0 c04abdd4 c04a65d4 00000007 c04eb040 0000009c c04841b0 c04a= 65e0 > ffc0: 00000000 c048430c 00000006 00000006 c04841b0 00000000 00000000 c048= 421c > ffe0: c000f08c 00000013 00000000 00000000 00000000 c000f08c 00000000 0000= 0000 > [] (s3c_hsotg_handle_outdone+0x44/0x158) from [] > (s3c_hsotg_irq+0x75c/0x804) > [] (s3c_hsotg_irq+0x75c/0x804) from [] > (handle_irq_event_percpu+0x50/0x1bc) > [] (handle_irq_event_percpu+0x50/0x1bc) from [] > (handle_irq_event+0x3c/0x5c) > [] (handle_irq_event+0x3c/0x5c) from [] > (handle_level_irq+0x8c/0x118) > [] (handle_level_irq+0x8c/0x118) from [] > (generic_handle_irq+0x38/0x44) > [] (generic_handle_irq+0x38/0x44) from [] > (handle_IRQ+0x30/0x84) > [] (handle_IRQ+0x30/0x84) from [] (vic_handle_irq+0x6= 8/0xa8) > [] (vic_handle_irq+0x68/0xa8) from [] (__irq_svc+0x40= /0x60) > Exception stack(0xc782fe08 to 0xc782fe50) > fe00: c04cc57c c782c000 ffffffff 00000001 60000013 c04c= c52c > fe20: c139a5c0 0000005a c04cc57c c04cc55c 60000013 c04c44c0 f6010000 c782= fe50 > fe40: c036c53c c036c540 60000013 ffffffff > [] (__irq_svc+0x40/0x60) from [] > (_raw_spin_unlock_irqrestore+0x10/0x14) > [] (_raw_spin_unlock_irqrestore+0x10/0x14) from [] > (__setup_irq+0x178/0x3f8) > [] (__setup_irq+0x178/0x3f8) from [] > (request_threaded_irq+0xc4/0x12c) > [] (request_threaded_irq+0xc4/0x12c) from [] > (s3c_hsotg_probe+0x14c/0x700) > [] (s3c_hsotg_probe+0x14c/0x700) from [] > (platform_drv_probe+0x18/0x1c) > [] (platform_drv_probe+0x18/0x1c) from [] > (driver_probe_device+0x78/0x200) > [] (driver_probe_device+0x78/0x200) from [] > (__driver_attach+0x8c/0x90) > [] (__driver_attach+0x8c/0x90) from [] > (bus_for_each_dev+0x60/0x8c) > [] (bus_for_each_dev+0x60/0x8c) from [] > (bus_add_driver+0xac/0x250) > [] (bus_add_driver+0xac/0x250) from [] > (driver_register+0x58/0x130) > [] (driver_register+0x58/0x130) from [] > (do_one_initcall+0x34/0x17c) > [] (do_one_initcall+0x34/0x17c) from [] > (kernel_init+0xf0/0x1bc) > [] (kernel_init+0xf0/0x1bc) from [] > (kernel_thread_exit+0x0/0x8) > Code: e0433106 e0833006 e1a03183 e0828003 (e5984030) > ---[ end trace 2ea4e574318ecf99 ]--- > Kernel panic - not syncing: Fatal exception in interrupt > -------------------------------------------------------------------------= ---------- >=20 >=20 > When I try locate the source using arm-linux-gdb, I got this: > ------------------------------------------------------------- > GNU gdb (Sourcery G++ Lite 2008q3-72) 6.8.50.20080821-cvs > Copyright (C) 2008 Free Software Foundation, Inc. > License GPLv3+: GNU GPL version 3 or later > This is free software: you are free to change and redistribute it. > There is NO WARRANTY, to the extent permitted by law. Type "show copying" > and "show warranty" for details. > This GDB was configured as "--host=3Di686-pc-linux-gnu > --target=3Darm-none-linux-gnueabi". > For bug reporting instructions, please see: > ... > (gdb) l *(s3c_hsotg_handle_outdone+0x44) > 0xc023e7fc is in s3c_hsotg_handle_outdone (drivers/usb/gadget/s3c-hsotg.c= :1553). > 1548 static void s3c_hsotg_handle_outdone(struct s3c_hsotg *hsotg, > 1549 int epnum, bool was_setup) > 1550 { > 1551 u32 epsize =3D readl(hsotg->regs + DOEPTSIZ(epnum)); > 1552 struct s3c_hsotg_ep *hs_ep =3D &hsotg->eps[epnum]; > 1553 struct s3c_hsotg_req *hs_req =3D hs_ep->req; > 1554 struct usb_request *req =3D &hs_req->req; > 1555 unsigned size_left =3D DxEPTSIZ_XferSize_GET(epsize); > 1556 int result =3D 0; > 1557=09 > (gdb) >=20 >=20 >=20 > I also try the old linux like 2.6.36, I works fine. Lukasz, any ideas ? --=20 balbi --PEkEgRdBLZYkpbX2 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: Digital signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.12 (GNU/Linux) iQIcBAEBAgAGBQJQH5hwAAoJEIaOsuA1yqREVw8P/2iiaLtLqGLNzzYGSDa/ka8Y hGTYmywI9mYyBTVfZbarQY2g1/V+t+rgtGaxzwPP+ZtOUDhnsOtCepUXUSti/vo8 cyyEPulHo9aUpmcpSYSZal/g5MXwJLIzBvJmL/ochPcLu2k0LMHAE2hdm/yysSK8 WnMcyZf/wzBDoxC3o7XRf7W75wTbxyTG5RT4XgAI/2LvT0xRpR4A5kT9f+lpU8hM UkQvRdxERVIQN5gyveBmmTlmjwkILgjC96dmJBLI3xaxkziWzaD8V03SdTpvBZ0B DZjzF1yyTJl+8hxZQ1LfDkL/ZDKjHdNKYTQl8jBZSX9m36wRoeaRbu4oFxhOLVid RHqzrsc2fsNhsfAldnUiy/Ds6VdRok4S1aAS1Od4rDH9ORwVtsz5aXMr/n54lfZ/ eDIN7q8v4X+tjROvtYSHlL6HSjKupKuAl1UHL9kT3UNsqNrI1yoAPZIVmsp2JTU3 VOlUa03KYbSK+eq59loVDL9gaSudpoRVlBLDyYSScbxyxVXQa+BGP8fh4nO1OPV8 RrtT8up9F4v3VhBCf+S7k0eqT95CF4aAkqke9KezXI2vpCLLO4sd8O5ckAJWbO2E kBw/NlXiPM3dHFUFF9gP5iHgjtrs1saMsMHl/yAvgAvyH4QDf7ay2/avel0WMznf b5H9ycbCYrg9GitV/z40 =bd/2 -----END PGP SIGNATURE----- --PEkEgRdBLZYkpbX2-- -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/