Hi, David, and all! I experience the following crash in g_mass_storage/fsg when for some reason file= argument doesn't exist. Kernel fails to operate afterwards and cease to function, requiring reboot. [ 498.749664] g_mass_storage gadget: adding config #1 'Linux File-Backed Storage'/bf006a78 [ 498.774810] device: 'lun0': device_add [ 498.778717] PM: Adding info for No Bus:lun0 [ 498.793823] lun0: unable to open backing file: /dev/mmcblk0 [ 498.804656] device: 'lun0': device_unregister [ 498.809082] PM: Removing info for No Bus:lun0 [ 498.825103] Unable to handle kernel paging request at virtual address 6b6b6b6b [ 498.832397] pgd = c68a4000 [ 498.835113] [6b6b6b6b] *pgd=00000000 [ 498.838714] Internal error: Oops: 5 [#1] PREEMPT [ 498.843353] last sysfs file: /sys/devices/platform/i2c_omap.1/i2c-1/1-0048/twl4030_usb/vbus [ 498.851745] Modules linked in: g_mass_storage(+) [ 498.856414] CPU: 0 Not tainted (2.6.33-rc3 #33) [ 498.861358] PC is at __wake_up_common+0x24/0x7c [ 498.865905] LR is at complete+0x4c/0x80 [ 498.869781] pc : [<c00585d8>] lr : [<c005d64c>] psr: 80000093 [ 498.869781] sp : c71c9dd0 ip : c71c9e00 fp : c71c9dfc [ 498.881317] r10: 00000000 r9 : 00000003 r8 : c72a80c0 [ 498.886596] r7 : 00000001 r6 : c7b92200 r5 : 40000013 r4 : 6b6b6b6b [ 498.893157] r3 : 00000000 r2 : 00000001 r1 : 00000003 r0 : c72a80c0 [ 498.899719] Flags: Nzcv IRQs off FIQs on Mode SVC_32 ISA ARM Segment user [ 498.906982] Control: 10c5387d Table: 868a4019 DAC: 00000015 [ 498.912780] Process modprobe (pid: 1483, stack limit = 0xc71c82e8) [ 498.918975] Stack: (0xc71c9dd0 to 0xc71ca000) [ 498.923370] 9dc0: c0483964 c72a80bc 40000013 c7b92200 [ 498.931610] 9de0: fffffffe 00000000 c7832b30 c71c9e44 c71c9e1c c71c9e00 c005d64c c00585c0 [ 498.939849] 9e00: 00000000 c00d786c c7b92228 c72a0000 c72a0000 c71c9e20 bf00adb8 c005d60c [ 498.948059] 9e20: c0308ad8 c005ae28 c71c9e18 00000001 00000001 bf006a78 c72a000c c7832b50 [ 498.956298] 9e40: 00000001 c68387c0 00000100 80000013 00000000 205b8498 38393420 3934372e [ 498.964538] 9e60: 5d343636 bf000020 c71c9efc bf006d86 bf006da2 c01c0834 c71c9efc 00000004 [ 498.972778] 9e80: 00000000 00000000 00000000 bf0048f4 00000000 00000000 00000000 0000ffff [ 498.980987] 9ea0: c7b5f400 00000000 c7832b30 bf006a78 c706de80 00000040 c7b5f400 00000200 [ 498.989227] 9ec0: bf00b324 bf00a188 bf006706 bf006a78 bf006d58 00000040 c7b5f400 c706de80 [ 498.997467] 9ee0: c7832b30 c7832b30 bf006d58 00000040 00000200 bf00a3c0 c0413b0a c0323d9c [ 499.005706] 9f00: c7832b30 c7800440 c706de80 bf00b474 c042be80 00000000 fffffffd c7832000 [ 499.013946] 9f20: bf006b7c 00000000 c7832b30 c0034168 c71c8000 00000000 000ec01c c022dfe0 [ 499.022155] 9f40: c01bd938 c005ae28 00000001 00000000 bf006be8 bf00b700 00000000 c0033374 [ 499.030395] 9f60: 00045484 bf006be8 00000000 40000008 c0034168 00000000 bf006be8 00000000 [ 499.038635] 9f80: 40000008 c0093aec 00000005 c786c308 c68977e0 00000000 40000008 000ec008 [ 499.046875] 9fa0: 00000080 c0033fc0 00000000 40000008 40000008 00045484 000ec0f8 00000000 [ 499.055084] 9fc0: 00000000 40000008 000ec008 00000080 000ec008 000e939c 000ec148 000ec01c [ 499.063323] 9fe0: 000ea5f4 beae9be0 0001934c 00078b9c 20000010 40000008 00000000 00000000 [ 499.071563] [<c00585d8>] (__wake_up_common+0x24/0x7c) from [<c005d64c>] (complete+0x4c/0x80) [ 499.080139] [<c005d64c>] (complete+0x4c/0x80) from [<bf00adb8>] (msg_do_config+0x788/0x9c8 [g_mass_storage]) [ 499.090057] [<bf00adb8>] (msg_do_config+0x788/0x9c8 [g_mass_storage]) from [<bf00a188>] (usb_add_config+0xc4/ 0x244 [g_mass_storage]) [ 499.102111] [<bf00a188>] (usb_add_config+0xc4/0x244 [g_mass_storage]) from [<bf00a3c0>] (msg_bind+0xb8/0x12c [g_mass_storage]) [ 499.113616] [<bf00a3c0>] (msg_bind+0xb8/0x12c [g_mass_storage]) from [<bf00b474>] (composite_bind+0x258/0x46c [g_mass_storage]) [ 499.125183] [<bf00b474>] (composite_bind+0x258/0x46c [g_mass_storage]) from [<c022dfe0>] (usb_gadget_register _driver+0x13c/0x228) [ 499.136932] [<c022dfe0>] (usb_gadget_register_driver+0x13c/0x228) from [<c0033374>] (do_one_initcall+0x5c/0x1 bc) [ 499.147186] [<c0033374>] (do_one_initcall+0x5c/0x1bc) from [<c0093aec>] (sys_init_module+0xc0/0x1f0) [ 499.156372] [<c0093aec>] (sys_init_module+0xc0/0x1f0) from [<c0033fc0>] (ret_fast_syscall+0x0/0x2c) [ 499.165496] Code: e5904000 e1a08000 e1a09001 e1a07002 (e414300c) [ 499.171844] ---[ end trace 0c6c68c335468b65 ]--- [ 499.176544] note: modprobe[1483] exited with preempt_count 1 [ 499.182342] BUG: scheduling while atomic: modprobe/1483/0x40000002 [ 499.188598] Modules linked in: g_mass_storage(+) [ 499.193328] [<c0039ad0>] (unwind_backtrace+0x0/0xdc) from [<c030856c>] (schedule+0x78/0x408) [ 499.201873] [<c030856c>] (schedule+0x78/0x408) from [<c005b0dc>] (__cond_resched+0x18/0x24) [ 499.210327] [<c005b0dc>] (__cond_resched+0x18/0x24) from [<c03089f4>] (_cond_resched+0x30/0x40) [ 499.219146] [<c03089f4>] (_cond_resched+0x30/0x40) from [<c00c6e84>] (unmap_vmas+0x55c/0x604) [ 499.227783] [<c00c6e84>] (unmap_vmas+0x55c/0x604) from [<c00c9818>] (exit_mmap+0xa4/0x1cc) [ 499.236175] [<c00c9818>] (exit_mmap+0xa4/0x1cc) from [<c0060194>] (mmput+0x38/0x10c) [ 499.249694] Spurious irq 95: 0xffffffdf, please flush posted write for irq 95 [ 499.256896] Spurious irq 95: 0xffffffdf, please flush posted write for irq 95 [ 499.264160] [<c0060194>] (mmput+0x38/0x10c) from [<c0064510>] (exit_mm+0x138/0x140) [ 499.271911] [<c0064510>] (exit_mm+0x138/0x140) from [<c0065e74>] (do_exit+0x194/0x67c) [ 499.279937] [<c0065e74>] (do_exit+0x194/0x67c) from [<c0037e80>] (die+0x26c/0x2a0) [ 499.287628] [<c0037e80>] (die+0x26c/0x2a0) from [<c003a624>] (__do_kernel_fault+0x68/0x80) [ 499.295989] [<c003a624>] (__do_kernel_fault+0x68/0x80) from [<c003a818>] (do_page_fault+0x1dc/0x1f4) [ 499.305267] [<c003a818>] (do_page_fault+0x1dc/0x1f4) from [<c00332b0>] (do_DataAbort+0x34/0x98) [ 499.314056] [<c00332b0>] (do_DataAbort+0x34/0x98) from [<c0033aec>] (__dabt_svc+0x4c/0x60) [ 499.322418] Exception stack(0xc71c9d88 to 0xc71c9dd0) [ 499.327514] 9d80: c72a80c0 00000003 00000001 00000000 6b6b6b6b 40000013 [ 499.335784] 9da0: c7b92200 00000001 c72a80c0 00000003 00000000 c71c9dfc c71c9e00 c71c9dd0 [ 499.344085] 9dc0: c005d64c c00585d8 80000093 ffffffff [ 499.349182] [<c0033aec>] (__dabt_svc+0x4c/0x60) from [<c00585d8>] (__wake_up_common+0x24/0x7c) [ 499.357879] [<c00585d8>] (__wake_up_common+0x24/0x7c) from [<c005d64c>] (complete+0x4c/0x80) [ 499.366485] [<c005d64c>] (complete+0x4c/0x80) from [<bf00adb8>] (msg_do_config+0x788/0x9c8 [g_mass_storage]) [ 499.376464] [<bf00adb8>] (msg_do_config+0x788/0x9c8 [g_mass_storage]) from [<bf00a188>] (usb_add_config+0xc4/ 0x244 [g_mass_storage]) [ 499.388519] [<bf00a188>] (usb_add_config+0xc4/0x244 [g_mass_storage]) from [<bf00a3c0>] (msg_bind+0xb8/0x12c [g_mass_storage]) [ 499.400085] [<bf00a3c0>] (msg_bind+0xb8/0x12c [g_mass_storage]) from [<bf00b474>] (composite_bind+0x258/0x46c [g_mass_storage]) [ 499.411743] [<bf00b474>] (composite_bind+0x258/0x46c [g_mass_storage]) from [<c022dfe0>] (usb_gadget_register _driver+0x13c/0x228) [ 499.423522] [<c022dfe0>] (usb_gadget_register_driver+0x13c/0x228) from [<c0033374>] (do_one_initcall+0x5c/0x1 bc) [ 499.433807] [<c0033374>] (do_one_initcall+0x5c/0x1bc) from [<c0093aec>] (sys_init_module+0xc0/0x1f0) [ 499.443054] [<c0093aec>] (sys_init_module+0xc0/0x1f0) from [<c0033fc0>] (ret_fast_syscall+0x0/0x2c) Segmentation fault [ 505.930572] Slab corruption: size-65536 start=c72a0000, len=65536 [ 505.939117] 80b0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6c 6b 6b 6b Any ideas on how to fix that? This dump is from 2.6.33-rc3 kernel, but for current master it is also reproducible. I run this on OMAP3 platform. Thanks a lot, S. -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html