最新的wifi驱动,配合aplay -Dplug:dmix播放两个音频文件,Oops!

随便找两个wav文件,测试下,也不要去配置wifi连接啥的,有wifi驱动即可,很容易出现。
如果只是播放一个文件,是不会出现的。
另外,如果把mt_wifi rmmod掉,那么播放2个音频也是不会出现问题的。
所以,基本规律为,在aplay播放两个音频进行mixer播放的时候,恶化了wifi驱动的一些bug,导致系统重启。
目前Oops的打印,都是一样的,就是挂在mt_wifi里面。

测试脚本:
#!/bin/sh
int=1
while [ 1 ]
do
let “int++”
echo $int >> log.txt
sleep 1
aplay -Dplug:dmix /tmp/mounts/SD-P1/file1.wav &
aplay -Dplug:dmix /tmp/mounts/SD-P1/file2.wav &
sleep 30
killall aplay
sleep 5
done

内核打印:
[15294.550000] CPU 0 Unable to handle kernel paging request at virtual address 29002900, epc == 801d5d3c, ra == 801d5dd0
[15294.570000] Oops[#1]:
[15294.570000] CPU: 0 PID: 0 Comm: swapper Not tainted 3.18.29 #75
[15294.570000] task: 8030aad0 ti: 80304000 task.ti: 80304000
[15294.570000] $ 0 : 00000000 00000000 00000008 00200000
[15294.570000] $ 4 : 29002900 00000001 00000000 00000000
[15294.570000] $ 8 : 00000001 c0a9873b 00000008 00000104
[15294.570000] $12 : 43420000 775ed3a0 00000000 3262005e
[15294.570000] $16 : 81d50f40 00000000 829dbf00 00000000
[15294.570000] $20 : 829dbf00 00000101 10020180 828c0000
[15294.570000] $24 : 00000018 80040e68
[15294.570000] $28 : 80304000 80305c40 828c0000 801d5dd0
[15294.570000] Hi : 00000de9
[15294.570000] Lo : 0a384180
[15294.570000] epc : 801d5d3c skb_release_data+0xb8/0xfc
[15294.570000] ra : 801d5dd0 __kfree_skb+0x14/0xd0
[15294.570000] Status: 1100e403 KERNEL EXL IE
[15294.570000] Cause : 00800008
[15294.570000] BadVA : 29002900
[15294.570000] PrId : 00019655 (MIPS 24KEc)
[15294.570000] Modules linked in: mt_wifi pppoe ppp_async iptable_nat pppox ppp_generic nf_nat_ipv4 nf_conntrack_ipv6 nf_conntrack_ipv4 ipt_REJECT ipt_MASQUERADE xt_time xt_tcpudp xt_state xt_nat xt_multiport xt_mark xt_mac xt_limit xt_id xt_conntrack xt_comment xt_TCPMSS xt_REDIRECT xt_LOG xt_CT slhc nf_reject_ipv4 nf_nat_masquerade_ipv4 nf_nat_ftp nf_nat nf_log_ipv4 nf_defrag_ipv6 nf_defrag_ipv4 nf_conntrack_rtcache nf_conntrack_ftp nf_conntrack iptable_raw iptable_mangle iptable_filter ip_tables crc_ccitt snd_soc_mt76xx_machine snd_soc_mt76xx_pcm snd_soc_mt76xx_i2s snd_soc_mt76xx_i2s_ctl i2c_wm8960 snd_soc_wm8960 ralink_gdma i2c_ralink snd_soc_core i2c_dev ip6t_REJECT nf_reject_ipv6 nf_log_ipv6 nf_log_common ip6table_raw ip6table_mangle ip6table_filter ip6_tables x_tables snd_compress snd_pcm_oss snd_mixer_oss snd_pcm snd_timer snd_rawmidi snd_seq_device snd_hwdep snd input_core soundcore vfat fat autofs4 nls_utf8 nls_iso8859_1 nls_cp437 regmap_spi regmap_i2c i2c_core regmap_core lzo_decompress lzo_compress ipv6 mmc_block usb_storage sdhci_pltfm sdhci mtk_sd mmc_core leds_gpio ohci_platform ohci_hcd ehci_platform ehci_hcd sd_mod scsi_mod gpio_button_hotplug ext4 jbd2 mbcache usbcore nls_base usb_common crc16 crypto_hash [last unloaded: mt_wifi]
[15294.570000] Process swapper (pid: 0, threadinfo=80304000, task=8030aad0, tls=00000000)
[15294.570000] Stack : 829dbf00 801d5d94 81d5008a c09d37bc 829dbf00 81d50080 c09d2000 801d5dd0
829dbf00 00000101 10020180 828c0000 80305cc8 828394ac 03261040 83261040
00000000 0000000f 81d50080 00000001 000000be 82ae9c00 c09d2000 c0b02000
829dbf00 81d50080 80305cd4 8283a63c 0ad0d800 8005b9e8 80305d2c 800501ec
00000000 00000de9 01d50040 c11b0000 00000000 00000040 80305cd4 00000000

[15294.570000] Call Trace:
[15294.570000] [<801d5d3c>] skb_release_data+0xb8/0xfc
[15294.570000] [<801d5dd0>] __kfree_skb+0x14/0xd0
[15294.570000] [<828394ac>] dev_rx_mgmt_frm+0x1f4/0x214 [mt_wifi]
[15294.570000] [<8283a63c>] rtmp_rx_done_handle+0x4c4/0x4f8 [mt_wifi]
[15294.570000] [<82872468>] mt_mac_int_4_tasklet+0xfcc/0x10ac [mt_wifi]

@hejianqiang 声音驱动有问题,不管是官方的,还是widora的,都会有啵啵声。

@mango 有空的时候,帮忙看看,多谢!

这个我确实还没有多少思路 : (

顶一下自己的帖子。请帮忙看下哦,Mango大大。