lwfinger / rtl8723au

Repo for RTL8723AU code before Linux Kernel commit
126 stars 46 forks source link

Kernel panic with Ubuntu ppa-mainline 3.14.1 kernel #38

Open daikerjohn opened 10 years ago

daikerjohn commented 10 years ago

I'm seeing quite a few panics on the 3.14.x kernel series. I'm using HEAD on kernel_version branch at the moment: 8727c18f6f98273b5b70fd81661f337c7c173855

Here are some of the panics: [ 2711.970762] ------------[ cut here ]------------ [ 2711.970775] WARNING: CPU: 3 PID: 0 at /home/apw/COD/linux/drivers/usb/core/urb.c:450 usb_submit_urb.part.8+0x164/0x5a0() [ 2711.970777] usb 1-1.4: BOGUS urb xfer, pipe 3 != type 1 [ 2711.970779] Modules linked in: 8723au(OF) cfg80211 hid_sensor_incl_3d hid_sensor_gyro_3d hid_sensor_magn_3d hid_sensor_accel_3d hid_sensor_trigger industrialio_triggered_buffer kfifo_buf industrialio hid_sensor_iio_common parport_pc ppdev joydev bnep rfcomm bluetooth snd_hda_codec_hdmi 6lowpan_iphc snd_hda_codec_conexant snd_hda_codec_generic snd_hda_intel snd_hda_codec snd_hwdep snd_pcm nfsd intel_rapl auth_rpcgss x86_pkg_temp_thermal nfs_acl intel_powerclamp coretemp nfs snd_seq_midi kvm_intel snd_seq_midi_event lockd sunrpc binfmt_misc fscache kvm snd_rawmidi dm_multipath scsi_dh crct10dif_pclmul crc32_pclmul ghash_clmulni_intel snd_seq aesni_intel nls_iso8859_1 aes_x86_64 uvcvideo lrw snd_seq_device gf128mul glue_helper ablk_helper snd_timer cryptd microcode videobuf2_vmalloc hid_sensor_hub videobuf2_memops hid_multitouch psmouse videobuf2_core snd videodev serio_raw rts5139(C) lpc_ich soundcore mei_me mei mac_hid lp parport usbhid hid dm_mirror dm_region_hash dm_log i915 i2c_algo_bit drm_kms_helper ahci drm libahci wmi video [last unloaded: cfg80211] [ 2711.970858] CPU: 3 PID: 0 Comm: swapper/3 Tainted: GF WC O 3.14.1-031401-generic #201404141220 [ 2711.970860] Hardware name: LENOVO 20175/INVALID, BIOS 66CN55WW 02/28/2013 [ 2711.970862] 00000000000001c2 ffff88012f2c3d00 ffffffff8175bbf5 0000000000000007 [ 2711.970866] ffff88012f2c3d50 ffff88012f2c3d40 ffffffff8106ac9c ffff8800c6ae0000 [ 2711.970870] ffff880127e1df00 ffff88012783b000 0000000000000003 0000000000000000 [ 2711.970873] Call Trace: [ 2711.970875] [] dump_stack+0x46/0x58 [ 2711.970885] [] warn_slowpath_common+0x8c/0xc0 [ 2711.970890] [] warn_slowpath_fmt+0x46/0x50 [ 2711.970894] [] usb_submit_urb.part.8+0x164/0x5a0 [ 2711.970899] [] ? queue_work+0x177/0x3c0 [ 2711.970902] [] usb_submit_urb+0x35/0x80 [ 2711.970917] [] usb_read_interrupt_complete+0x229/0x353 [8723au] [ 2711.970921] [] usb_hcd_giveback_urb+0x83/0x120 [ 2711.970924] [] usb_giveback_urb_bh+0x96/0x130 [ 2711.970928] [] tasklet_action+0xcf/0xe0 [ 2711.970931] [] do_softirq+0xef/0x330 [ 2711.970935] [] irq_exit+0x11e/0x140 [ 2711.970940] [] do_IRQ+0x67/0x110 [ 2711.970944] [] common_interrupt+0x6d/0x6d [ 2711.970946] [] ? cpuidle_enter_state+0x61/0xe0 [ 2711.970952] [] ? cpuidle_enter_state+0x57/0xe0 [ 2711.970955] [] cpuidle_idle_call+0xc0/0x210 [ 2711.970960] [] arch_cpu_idle+0xe/0x30 [ 2711.970965] [] cpu_idle_loop+0x98/0x260 [ 2711.970969] [] ? clockevents_register_device+0xe2/0x140 [ 2711.970973] [] cpu_startup_entry+0x6b/0x70 [ 2711.970976] [] start_secondary+0xc8/0xd0 [ 2711.970979] ---[ end trace f5287f9056a9eb1c ]--- [ 2715.839255] UpdateHalRAMask8192CUsb => mac_id:0, networkType:0x0b, mask:0x000fffff [ 2715.839255] ==> rssi_level:3, rate_bitmap:0x000ff005 [ 2729.862945] UpdateHalRAMask8192CUsb => mac_id:0, networkType:0x0b, mask:0x000fffff [ 2729.862945] ==> rssi_level:2, rate_bitmap:0x000ff000 [ 2753.575495] ------------[ cut here ]------------ [ 2753.575504] WARNING: CPU: 3 PID: 0 at /home/apw/COD/linux/drivers/usb/core/urb.c:450 usb_submit_urb.part.8+0x164/0x5a0() [ 2753.575506] usb 1-1.4: BOGUS urb xfer, pipe 3 != type 1 [ 2753.575507] Modules linked in: 8723au(OF) cfg80211 hid_sensor_incl_3d hid_sensor_gyro_3d hid_sensor_magn_3d hid_sensor_accel_3d hid_sensor_trigger industrialio_triggered_buffer kfifo_buf industrialio hid_sensor_iio_common parport_pc ppdev joydev bnep rfcomm bluetooth snd_hda_codec_hdmi 6lowpan_iphc snd_hda_codec_conexant snd_hda_codec_generic snd_hda_intel snd_hda_codec snd_hwdep snd_pcm nfsd intel_rapl auth_rpcgss x86_pkg_temp_thermal nfs_acl intel_powerclamp coretemp nfs snd_seq_midi kvm_intel snd_seq_midi_event lockd sunrpc binfmt_misc fscache kvm snd_rawmidi dm_multipath scsi_dh crct10dif_pclmul crc32_pclmul ghash_clmulni_intel snd_seq aesni_intel nls_iso8859_1 aes_x86_64 uvcvideo lrw snd_seq_device gf128mul glue_helper ablk_helper snd_timer cryptd microcode videobuf2_vmalloc hid_sensor_hub videobuf2_memops hid_multitouch psmouse videobuf2_core snd videodev serio_raw rts5139(C) lpc_ich soundcore mei_me mei mac_hid lp parport usbhid hid dm_mirror dm_region_hash dm_log i915 i2c_algo_bit drm_kms_helper ahci drm libahci wmi video [last unloaded: cfg80211] [ 2753.575565] CPU: 3 PID: 0 Comm: swapper/3 Tainted: GF WC O 3.14.1-031401-generic #201404141220 [ 2753.575566] Hardware name: LENOVO 20175/INVALID, BIOS 66CN55WW 02/28/2013 [ 2753.575567] 00000000000001c2 ffff88012f2c3d00 ffffffff8175bbf5 0000000000000007 [ 2753.575571] ffff88012f2c3d50 ffff88012f2c3d40 ffffffff8106ac9c ffff8800c6ae0000 [ 2753.575574] ffff880127e1df00 ffff88012783b000 0000000000000003 0000000000000000 [ 2753.575576] Call Trace: [ 2753.575578] [] dump_stack+0x46/0x58 [ 2753.575585] [] warn_slowpath_common+0x8c/0xc0 [ 2753.575588] [] warn_slowpath_fmt+0x46/0x50 [ 2753.575591] [] usb_submit_urb.part.8+0x164/0x5a0 [ 2753.575594] [] ? queue_work+0x177/0x3c0 [ 2753.575597] [] usb_submit_urb+0x35/0x80 [ 2753.575607] [] usb_read_interrupt_complete+0x229/0x353 [8723au] [ 2753.575610] [] usb_hcd_giveback_urb+0x83/0x120 [ 2753.575612] [] usb_giveback_urb_bh+0x96/0x130 [ 2753.575615] [] tasklet_action+0xcf/0xe0 [ 2753.575617] [] do_softirq+0xef/0x330 [ 2753.575619] [] irq_exit+0x11e/0x140 [ 2753.575623] [] do_IRQ+0x67/0x110 [ 2753.575625] [] common_interrupt+0x6d/0x6d [ 2753.575626] [] ? cpuidle_enter_state+0x61/0xe0 [ 2753.575631] [] ? cpuidle_enter_state+0x57/0xe0 [ 2753.575633] [] cpuidle_idle_call+0xc0/0x210 [ 2753.575637] [] arch_cpu_idle+0xe/0x30 [ 2753.575639] [] cpu_idle_loop+0x98/0x260 [ 2753.575643] [] ? clockevents_register_device+0xe2/0x140 [ 2753.575645] [] cpu_startup_entry+0x6b/0x70 [ 2753.575648] [] start_secondary+0xc8/0xd0 [ 2753.575649] ---[ end trace f5287f9056a9eb1d ]--- [ 2754.949297] ------------[ cut here ]------------ [ 2754.949321] WARNING: CPU: 3 PID: 0 at /home/apw/COD/linux/drivers/usb/core/urb.c:450 usb_submit_urb.part.8+0x164/0x5a0() [ 2754.949324] usb 1-1.4: BOGUS urb xfer, pipe 3 != type 1 [ 2754.949325] Modules linked in: 8723au(OF) cfg80211 hid_sensor_incl_3d hid_sensor_gyro_3d hid_sensor_magn_3d hid_sensor_accel_3d hid_sensor_trigger industrialio_triggered_buffer kfifo_buf industrialio hid_sensor_iio_common parport_pc ppdev joydev bnep rfcomm bluetooth snd_hda_codec_hdmi 6lowpan_iphc snd_hda_codec_conexant snd_hda_codec_generic snd_hda_intel snd_hda_codec snd_hwdep snd_pcm nfsd intel_rapl auth_rpcgss x86_pkg_temp_thermal nfs_acl intel_powerclamp coretemp nfs snd_seq_midi kvm_intel snd_seq_midi_event lockd sunrpc binfmt_misc fscache kvm snd_rawmidi dm_multipath scsi_dh crct10dif_pclmul crc32_pclmul ghash_clmulni_intel snd_seq aesni_intel nls_iso8859_1 aes_x86_64 uvcvideo lrw snd_seq_device gf128mul glue_helper ablk_helper snd_timer cryptd microcode videobuf2_vmalloc hid_sensor_hub videobuf2_memops hid_multitouch psmouse videobuf2_core snd videodev serio_raw rts5139(C) lpc_ich soundcore mei_me mei mac_hid lp parport usbhid hid dm_mirror dm_region_hash dm_log i915 i2c_algo_bit drm_kms_helper ahci drm libahci wmi video [last unloaded: cfg80211] [ 2754.949402] CPU: 3 PID: 0 Comm: swapper/3 Tainted: GF WC O 3.14.1-031401-generic #201404141220 [ 2754.949404] Hardware name: LENOVO 20175/INVALID, BIOS 66CN55WW 02/28/2013 [ 2754.949407] 00000000000001c2 ffff88012f2c3d00 ffffffff8175bbf5 0000000000000007 [ 2754.949411] ffff88012f2c3d50 ffff88012f2c3d40 ffffffff8106ac9c ffff8800c6ae0000 [ 2754.949415] ffff880127e1df00 ffff88012783b000 0000000000000003 0000000000000000 [ 2754.949418] Call Trace: [ 2754.949420] [] dump_stack+0x46/0x58 [ 2754.949430] [] warn_slowpath_common+0x8c/0xc0 [ 2754.949434] [] warn_slowpath_fmt+0x46/0x50 [ 2754.949438] [] usb_submit_urb.part.8+0x164/0x5a0 [ 2754.949442] [] ? queue_work+0x177/0x3c0 [ 2754.949446] [] usb_submit_urb+0x35/0x80 [ 2754.949460] [] usb_read_interrupt_complete+0x229/0x353 [8723au] [ 2754.949464] [] usb_hcd_giveback_urb+0x83/0x120 [ 2754.949467] [] usb_giveback_urb_bh+0x96/0x130 [ 2754.949471] [] tasklet_action+0xcf/0xe0 [ 2754.949474] [] __do_softirq+0xef/0x330 [ 2754.949477] [] irq_exit+0x11e/0x140 [ 2754.949482] [] do_IRQ+0x67/0x110 [ 2754.949487] [] common_interrupt+0x6d/0x6d [ 2754.949488] [] ? cpuidle_enter_state+0x61/0xe0 [ 2754.949494] [] ? cpuidle_enter_state+0x57/0xe0 [ 2754.949498] [] cpuidle_idle_call+0xc0/0x210 [ 2754.949503] [] arch_cpu_idle+0xe/0x30 [ 2754.949507] [] cpu_idle_loop+0x98/0x260 [ 2754.949512] [] ? clockevents_register_device+0xe2/0x140 [ 2754.949515] [] cpu_startup_entry+0x6b/0x70 [ 2754.949519] [] start_secondary+0xc8/0xd0 [ 2754.949522] ---[ end trace f5287f9056a9eb1e ]---

lwfinger commented 10 years ago

I have added logging for a condition that looks suspicious. Please pull again and try the new code. Watch the dmesg output for a line that says "purb->actual_length (NN) > USB_INTR_CONTENT_LENGTH (56)\n".

daikerjohn commented 10 years ago

Sadly, haven't seen the message since I rebuilt and reloaded. I did notice a different panic though... and it appeared before your additional commit.

[11412.633774] ------------[ cut here ]------------ [11412.633797] WARNING: CPU: 0 PID: 1300 at /home/apw/COD/linux/drivers/usb/core/urb.c:450 usb_submit_urb.part.8+0x164/0x5a0() [11412.633803] usb 1-1.4: BOGUS urb xfer, pipe 3 != type 1 [11412.633816] Modules linked in: 8723au(OF) cfg80211 hid_sensor_incl_3d hid_sensor_gyro_3d hid_sensor_magn_3d hid_sensor_accel_3d hid_sensor_trigger industrialio_triggered_buffer kfifo_buf industrialio hid_sensor_iio_common parport_pc ppdev joydev bnep rfcomm bluetooth snd_hda_codec_hdmi 6lowpan_iphc snd_hda_codec_conexant snd_hda_codec_generic snd_hda_intel snd_hda_codec snd_hwdep snd_pcm nfsd intel_rapl auth_rpcgss x86_pkg_temp_thermal nfs_acl intel_powerclamp coretemp nfs snd_seq_midi kvm_intel snd_seq_midi_event lockd sunrpc binfmt_misc fscache kvm snd_rawmidi dm_multipath scsi_dh crct10dif_pclmul crc32_pclmul ghash_clmulni_intel snd_seq aesni_intel nls_iso8859_1 aes_x86_64 uvcvideo lrw snd_seq_device gf128mul glue_helper ablk_helper snd_timer cryptd microcode videobuf2_vmalloc hid_sensor_hub videobuf2_memops hid_multitouch psmouse videobuf2_core snd videodev serio_raw rts5139(C) lpc_ich soundcore mei_me mei mac_hid lp parport usbhid hid dm_mirror dm_region_hash dm_log i915 i2c_algo_bit drm_kms_helper ahci drm libahci wmi video [last unloaded: cfg80211] [11412.633872] CPU: 0 PID: 1300 Comm: wpa_supplicant Tainted: GF WC O 3.14.1-031401-generic #201404141220 [11412.633874] Hardware name: LENOVO 20175/INVALID, BIOS 66CN55WW 02/28/2013 [11412.633876] 00000000000001c2 ffff8800c71a5730 ffffffff8175bbf5 0000000000000007 [11412.633878] ffff8800c71a5780 ffff8800c71a5770 ffffffff8106ac9c ffffffff815861cc [11412.633881] ffff8800c834cf00 ffff88012783b000 0000000000000003 0000000000000000 [11412.633884] Call Trace: [11412.633888] [] dump_stack+0x46/0x58 [11412.633892] [] warn_slowpath_common+0x8c/0xc0 [11412.633896] [] ? ehci_urb_enqueue+0x6c/0x110 [11412.633899] [] warn_slowpath_fmt+0x46/0x50 [11412.633903] [] usb_submit_urb.part.8+0x164/0x5a0 [11412.633916] [] ? _rtw_write3223a+0x20/0x22 [8723au] [11412.633926] [] ? usb_read_interrupt_complete+0x341/0x341 [8723au] [11412.633939] [] usb_read_interrupt+0x94/0xda [8723au] [11412.633948] [] rtl8723au_inirp_init+0x104/0x1f4 [8723au] [11412.633960] [] rtw_hal_inirp_init23a+0x17/0x48 [8723au] [11412.633969] [] usb_intf_start+0x51/0x90 [8723au] [11412.633979] [] netdev_open23a+0x1b9/0x446 [8723au] [11412.633988] [] cfg80211_rtw_change_iface+0x5d/0x143 [8723au] [11412.634001] [] cfg80211_change_iface+0xd9/0x4d0 [cfg80211] [11412.634012] [] nl80211_set_interface+0x188/0x260 [cfg80211] [11412.634017] [] genl_family_rcv_msg+0x36b/0x3c0 [11412.634022] [] ? kmalloc_node_track_caller+0x54/0x1d0 [11412.634025] [] genl_rcv_msg+0x44/0x80 [11412.634029] [] ? genl_family_rcv_msg+0x3c0/0x3c0 [11412.634032] [] netlink_rcv_skb+0xa9/0xd0 [11412.634036] [] genl_rcv+0x2c/0x40 [11412.634039] [] netlink_unicast+0x128/0x1d0 [11412.634042] [] netlink_sendmsg+0x364/0x440 [11412.634047] [] sock_sendmsg+0xaf/0xc0 [11412.634050] [] _sys_sendmsg+0x3cc/0x3e0 [11412.634055] [] ? iput_final+0xe0/0x170 [11412.634060] [] ? d_free+0x48/0x70 [11412.634065] [] ? acct_account_cputime+0x1c/0x20 [11412.634068] [] ? account_user_time+0x99/0xb0 [11412.634071] [] ? vtime_account_user+0x5d/0x70 [11412.634075] [] sys_sendmsg+0x49/0x90 [11412.634078] [] SyS_sendmsg+0x19/0x20 [11412.634082] [] tracesys+0xe1/0xe6 [11412.634085] ---[ end trace f5287f9056a9ebf2 ]--- [11412.634502] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready

lwfinger commented 10 years ago

We are looking into this one. By the way, these are not panics, merely warnings. A panic is reserved for those cases where the kernel cannot continue without the possibility of doing damage to file systems, etc. A warning only calls attention to some condition that is wrong, but so wrong that execution cannot continue.

daikerjohn commented 10 years ago

Thanks for taking a look! If you prefer to pass along patches instead of committing, I can apply and build accordingly. I know my way around 'patch' and 'diff'. My apologies for the misuse of panic/warning. Thanks for educating me along the way!

lwfinger commented 10 years ago

Jes Sorensen found this one. Fixes to both master and kernel-version have been pushed. Thanks for your patience.