Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

3.8 Crash on reboot #26

Closed
17twenty opened this issue Feb 21, 2013 · 2 comments
Closed

3.8 Crash on reboot #26

17twenty opened this issue Feb 21, 2013 · 2 comments

Comments

@17twenty
Copy link

The 3.8 version seems to have a bug that is triggered on a reboot (but not a shutdown)

I've had a cursory look and the function dsps_musb_exit() in drivers/usb/musb/musb_dsps.c:

static int dsps_musb_exit(struct musb *musb)
{
    struct device *dev = musb->controller;
    struct platform_device *pdev = to_platform_device(dev);
    struct dsps_glue *glue = dev_get_drvdata(dev->parent);

    del_timer_sync(&glue->timer[pdev->id]);

    /* Shutdown the on-chip PHY and its PLL. */
    musb_dsps_phy_control(glue, pdev->id, 0);

    /* NOP driver needs change if supporting dual instance */
    /* **Commenting out this line makes it not crash** */   
    usb_put_phy(musb->xceiv);
    usb_nop_xceiv_unregister();

    return 0;
}

Stacktrace follows:

root@beaglebone:~# reboot

Broadcast message from root@beaglebone (ttyO0) (Tue Feb 19 00:51:11 2013):
The system is going down for reboot NOW!
INIT: Switching to runlevel: 6
INIT: Sending processes the TERM signal
INIT: Sending processes the KStopping syslogd/klogd: stopped syslogd (pid 529)
stopped klogd (pid 531)
done
Deconfiguring network interfaces... ifdown: interface eth0 not configured
done.
Sending all processes the TERM signal...
Sending all processes the KILL signal...
Unmounting remote filesystems...
Deactivating swap...
Unmounting local filesystems...
[  227.484942] EXT4-fs (mmcblk0p2): re-mounted. Opts: data=ordered
Rebooting... [  229.678720] (NULL device *): gadget not registered.
[  229.685277] Unable to handle kernel paging request at virtual address 7665645
7
[  229.692965] pgd = cf404000
[  229.695887] [76656457] *pgd=00000000
[  229.699749] Internal error: Oops: 5 [#1] SMP ARM
[  229.704614] Modules linked in:
[  229.707857] CPU: 0    Not tainted  (3.8.0-00360-g1eb76fa #1)
[  229.713836] PC is at kobject_put+0xc/0x74
[  229.718083] LR is at dsps_musb_exit+0x44/0x50
[  229.722682] pc : [<c0286538>]    lr : [<c03b435c>]    psr: 20000013
[  229.722682] sp : cf415e30  ip : cf235250  fp : 00000001
[  229.734750] r10: 00000000  r9 : cf414000  r8 : cf165e44
[  229.740252] r7 : c082799c  r6 : cf104180  r5 : cf234100  r4 : 76656437
[  229.747120] r3 : f9e10620  r2 : 00000000  r1 : 00000000  r0 : 76656437
[  229.753991] Flags: nzCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment user
[  229.761499] Control: 10c5387d  Table: 8f404019  DAC: 00000015
[  229.767547] Process reboot (pid: 569, stack limit = 0xcf414240)
[  229.773777] Stack: (0xcf415e30 to 0xcf416000)
[  229.778377] 5e20:                                     76656437 00000000 cf165
e10 c03b435c
[  229.786995] 5e40: cf234100 60000013 c089ade0 c03ad798 c03ad718 cf165e1c cf165
e10 c0312e08
[  229.795610] 5e60: c0312df4 c0310208 00000000 00000000 c07f0630 00000002 c000daa4 c004e27c
[  229.804227] 5e80: 01234567 c004e298 01234567 c004e434 cf415f00 fffffffe cf16f500 cf48b000
[  229.881758] 5fa0: 00000058 c000d920 00000001 00000003 fee1dead 28121969 01234567 00000002
[  229.890371] 5fc0: 00000001 00000003 00000000 00000058 000125d8 00000000 00000000 00000001
[  229.898985] 5fe0: 0001250c be88ac94 00008f90 45e66480 20000010 fee1dead 00000000 00000000
[  229.907624] [<c0286538>] (kobject_put+0xc/0x74) from [<c03b435c>] (dsps_musb_exit+0x44/0x50)
[  229.916526] [<c03b435c>] (dsps_musb_exit+0x44/0x50) from [<c03ad798>] (musb_shutdown+0x80/0x90)
[  229.925701] [<c03ad798>] (musb_shutdown+0x80/0x90) from [<c0312e08>] (platform_drv_shutdown+0x14/0x18)
[  229.935526] [<c0312e08>] (platform_drv_shutdown+0x14/0x18) from [<c0310208>] (device_shutdown+0x110/0x174)
[  229.945721] [<c0310208>] (device_shutdown+0x110/0x174) from [<c004e27c>] (kernel_restart_prepare+0x2c/0x3c)
[  229.955991] [<c004e27c>] (kernel_restart_prepare+0x2c/0x3c) from [<c004e298>] (kernel_restart+0xc/0x4c)
[  229.965892] [<c004e298>] (kernel_restart+0xc/0x4c) from [<c004e434>] (sys_reboot+0x154/0x1b8)
[  229.974889] [<c004e434>] (sys_reboot+0x154/0x1b8) from [<c000d920>] (ret_fast_syscall+0x0/0x30)
[  229.984054] Code: c069a545 e92d4013 e2504000 0a000015 (e5d43020)
[  229.990651] ---[ end trace 329b79ba8e6fef82 ]---
/etc/rc6.d/S90reboot: line 15:   569 Segmentation fault      reboot -d -f
@cmicali
Copy link

cmicali commented Mar 4, 2013

I'm seeing the same issue, but the fix @17twenty provided did solve the problem for me.

@koenkooi
Copy link
Contributor

fixed in f599fcd

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants