[OpenWrt-Devel] Ralink MT76228 port to Linux 4.0, set new IP address fail

Baptiste Clenet bapclenet at gmail.com
Fri Jun 12 07:30:05 EDT 2015


2015-06-12 11:12 GMT+02:00 Baptiste Clenet <bapclenet at gmail.com>:
> 2015-06-11 16:31 GMT+02:00 Roman Yeryomin <leroi.lists at gmail.com>:
>> On 11 June 2015 at 16:36, Baptiste Clenet <bapclenet at gmail.com> wrote:
>>> Hi,
>>>
>>> I've edited patches from Linux 3.18 to make the MT7628 work with Linux 4.0.
>>> OpenWRT launches, I have access to the shell.
>>> Next step, I configure the IP address with /etc/config/network and
>>> /etc/init.d/network reload. Ifconfig shows me my new address IP.
>>>
>>> But, I can't connect via ssh to my board and if I reboot the board, I
>>> get errors at boot:
>>> [   10.230000] jffs2: jffs2_scan_inode_node(): CRC failed on node at
>>> 0x004725bc: Read 0xffffffff, calculated 0x149094b5
>>> I would say it appears one hundred times with different calculated CRC.
>>> and finally the last line is:
>>> [   11.000000] jffs2: notice: (305) jffs2_build_xattr_subsystem:
>>> complete building xattr subsystem, 0 of xdatum (0 unchecked, 0 orphan)
>>> and 0 of xref (0 dead, 0 orphan) found.
>>>
>>>
>>> Then, I'm able to access to the shell but I still can't connect via
>>> ssh. The board constantly reports:
>>>
>>> [ 2410.010000] ralink_soc_eth 10100000.ethernet eth0: transmit timed out
>>> [ 2410.020000] ralink_soc_eth 10100000.ethernet eth0: dma_cfg:00000055
>>> [ 2410.030000] ralink_soc_eth 10100000.ethernet eth0: tx_ring=0,
>>> base=00dce000, max=128, ctx=126, dtx=126, fdx=123
>>> [ 2410.050000] ralink_soc_eth 10100000.ethernet eth0: rx_ring=0,
>>> base=01a36000, max=128, calc=121, drx=54
>>> [ 2415.010000] ralink_soc_eth 10100000.ethernet eth0: transmit timed out
>>> [ 2415.020000] ralink_soc_eth 10100000.ethernet eth0: dma_cfg:00000055
>>> [ 2415.030000] ralink_soc_eth 10100000.ethernet eth0: tx_ring=0,
>>> base=00dce000, max=128, ctx=126, dtx=126, fdx=123
>>> [ 2415.050000] ralink_soc_eth 10100000.ethernet eth0: rx_ring=0,
>>> base=01a36000, max=128, calc=121, drx=60
>>>
>>> It seems to be related to ethernet driver. Does anyone know those errors?
>>>
>>
>> I have the "transmit queue time out" error on ar71xx with 4.0.5 also.
>> Situation is very similar because ralink and ar71xx ethernet drivers
>> are maintained in OpenWrt only.
>> I believe it is related to recent timer/clock changes in kernel (in
>> 3.19 AFAIK). But I don't know neither timers nor network Linux stack
>> so well to tell what/where is the problem exactly.
>>
>> If somebody with more experience could point to a possible place to
>> look at that would be awesome.
>>
>>
>> Regards,
>> Roman
>
> Ok, let's see if someone can bring his knowledge on those parts and help us.
> Thanks
>
> Baptiste


I'm adding some details about the bug. after reloading
/etc/init.d/network (with an IP modified), WATCHDOG raises an error:

root at OpenWrt:/# [ 6426.010000] ------------[ cut here ]------------
[ 6426.010000] WARNING: CPU: 0 PID: 0 at net/sched/sch_generic.c:303
dev_watchdog+0x1d8/0x25c()
[ 6426.030000] NETDEV WATCHDOG: eth0 (ralink_soc_eth): transmit queue
0 timed out
[ 6426.050000] Modules linked in: 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_recent xt_nat
xt_multiport xt_mark xt_mac xt_limit xt_id xt_helper xt_conntrack
xt_connmark xt_connlimit xt_connbytes xt_comment xt_TCPMSS xt_REDIRECT
xt_LOG xt_CT spidev slhc rfcomm nf_reject_ipv4 nf_nat_redirect
nf_nat_masquerade_ipv4 nf_nat_ftp nf_nat nf_log_ipv4 nf_defrag_ipv6
nf_defrag_ipv4 nf_conntrack_rtcache nf_conntrack_ftp iptable_raw
iptable_mangle iptable_filter ip_tables hidp hci_uart btusb bnep
bluetooth mac802154 crc_ccitt aead ieee802154_socket ieee802154
act_connmark nf_conntrack act_skbedit act_mirred em_u32 cls_u32
cls_tcindex cls_flow cls_route cls_fw sch_hfsc sch_ingress 6lowpan hid
evdev input_core i2c_ralink i2c_dev ledtrig_usbdev ip6t_REJECT
nf_reject_ipv6 nf_log_ipv6 nf_log_common ip6table_raw ip6table_mangle
ip6table_filter ip6_tables x_tables regmap_spi regmap_i2c i2c_core
regmap_core lzo_decompress lzo_compress ipv6 ecb crypto_blkcipher
leds_gpio ohci_platform ohci_hcd ehci_platform ehci_hcd
gpio_button_hotplug usbcore nls_base usb_common crc16 crypto_hash
[ 6426.250000] CPU: 0 PID: 0 Comm: swapper Not tainted 4.0.4 #1
[ 6426.260000] Stack : 00000000 00000000 00000001 00000000 802b86a4
80311de3 00000000 8035342c
          80312148 000000f9 00000002 00000001 00000004 80049318
00000003 802bd644
          0000012f 000000f9 802bbc48 8030dc6c 00000004 8004785c
00000006 80fa5240
          00000000 00000000 00000000 00000000 00000000 00000000
00000000 00000000
          00000000 00000000 00000000 00000000 00000000 00000000
00000000 00000000
          ...
[ 6426.330000] Call Trace:
[ 6426.340000] [<8001475c>] show_stack+0x48/0x70
[ 6426.340000] [<80025260>] warn_slowpath_common+0xa0/0xd0
[ 6426.360000] [<800252bc>] warn_slowpath_fmt+0x2c/0x38
[ 6426.370000] [<802021d4>] dev_watchdog+0x1d8/0x25c
[ 6426.370000] [<80050558>] call_timer_fn.isra.39+0x24/0x84
[ 6426.380000] [<80050d70>] run_timer_softirq+0x1bc/0x1f8
[ 6426.400000] [<80027794>] __do_softirq+0x150/0x288
[ 6426.400000] [<80027af0>] irq_exit+0x54/0x70
[ 6426.410000] [<80004830>] ret_from_irq+0x0/0x4
[ 6426.420000] [<8001147c>] r4k_wait_irqoff+0x18/0x20
[ 6426.430000] [<8004497c>] cpu_startup_entry+0x114/0x148
[ 6426.440000] [<8032ab64>] start_kernel+0x434/0x44c
[ 6426.450000]
[ 6426.450000] ---[ end trace f537c837a51f3474 ]---
[ 6426.460000] ralink_soc_eth 10100000.ethernet eth0: transmit timed out
[ 6426.480000] ralink_soc_eth 10100000.ethernet eth0: dma_cfg:00000055
[ 6426.490000] ralink_soc_eth 10100000.ethernet eth0: tx_ring=0,
base=00eff000, max=128, ctx=44, dtx=44, fdx=41
[ 6426.510000] ralink_soc_eth 10100000.ethernet eth0: rx_ring=0,
base=00f18000, max=128, calc=71, drx=91
[ 6432.020000] ralink_soc_eth 10100000.ethernet eth0: transmit timed out
[ 6432.030000] ralink_soc_eth 10100000.ethernet eth0: dma_cfg:00000055
[ 6432.040000] ralink_soc_eth 10100000.ethernet eth0: tx_ring=0,
base=00eff000, max=128, ctx=44, dtx=44, fdx=41
[ 6432.060000] ralink_soc_eth 10100000.ethernet eth0: rx_ring=0,
base=00f18000, max=128, calc=71, drx=99
[ 6437.010000] ralink_soc_eth 10100000.ethernet eth0: transmit timed out
[ 6437.020000] ralink_soc_eth 10100000.ethernet eth0: dma_cfg:00000055
[ 6437.030000] ralink_soc_eth 10100000.ethernet eth0: tx_ring=0,
base=00eff000, max=128, ctx=44, dtx=44, fdx=41
[ 6437.050000] ralink_soc_eth 10100000.ethernet eth0: rx_ring=0,
base=00f18000, max=128, calc=71, drx=103
[ 6442.010000] ralink_soc_eth 10100000.ethernet eth0: transmit timed out
[ 6442.020000] ralink_soc_eth 10100000.ethernet eth0: dma_cfg:00000055
[ 6442.030000] ralink_soc_eth 10100000.ethernet eth0: tx_ring=0,
base=00eff000, max=128, ctx=44, dtx=44, fdx=41
[ 6442.050000] ralink_soc_eth 10100000.ethernet eth0: rx_ring=0,
base=00f18000, max=128, calc=71, drx=113

It seems that "NETDEV WATCHDOG: eth0 (ralink_soc_eth): transmit queue
0 timed out" is a well-known issue for ethernet driver but I can't
find any correct solution.
_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel



More information about the openwrt-devel mailing list