Wireless disables it self [WDR4300]

Hi!

I've been experiencing this problem intermittently over 2 years at least on the 18.06 and 19.07 releases. For no aparent reason both wireless interfaces (wlan0 and wlan1) keeps disabling by it self and I have to manually re-enable through the luci Network->wireless page (just rebooting doesn't work). Some times this happens in minutes after I re-enable the wireless interfaces, some times it takes 2-10 days.

I don't known how to properly debug this issue the logs I saw didn't showed much info, any tips?

If I can't fix this, one workaround would be writing a script that constantly monitors these interfaces and re-enables it whenever they go down.

Here is my kernel log:

[    0.000000] Linux version 4.14.171 (builder@buildhost) (gcc version 7.5.0 (OpenWrt GCC 7.5.0 r10947-65030d81f3)) #0 Thu Feb 27 21:05:12 2020
[    0.000000] bootconsole [early0] enabled
[    0.000000] CPU0 revision is: 0001974c (MIPS 74Kc)
[    0.000000] MIPS: machine is TP-Link TL-WDR4300 v1
[    0.000000] SoC: Atheros AR9344 rev 2
[    0.000000] Determined physical RAM map:
[    0.000000]  memory: 08000000 @ 00000000 (usable)
[    0.000000] Initrd not found or empty - disabling initrd
[    0.000000] Primary instruction cache 64kB, VIPT, 4-way, linesize 32 bytes.
[    0.000000] Primary data cache 32kB, 4-way, VIPT, cache aliases, linesize 32 bytes
[    0.000000] Zone ranges:
[    0.000000]   Normal   [mem 0x0000000000000000-0x0000000007ffffff]
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x0000000000000000-0x0000000007ffffff]
[    0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x0000000007ffffff]
[    0.000000] On node 0 totalpages: 32768
[    0.000000] free_area_init_node: node 0, pgdat 804fbf60, node_mem_map 81008b80
[    0.000000]   Normal zone: 256 pages used for memmap
[    0.000000]   Normal zone: 0 pages reserved
[    0.000000]   Normal zone: 32768 pages, LIFO batch:7
[    0.000000] random: get_random_bytes called from 0x804ff740 with crng_init=0
[    0.000000] pcpu-alloc: s0 r0 d32768 u32768 alloc=1*32768
[    0.000000] pcpu-alloc: [0] 0 
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 32512
[    0.000000] Kernel command line: console=ttyS0,115200 rootfstype=squashfs,jffs2
[    0.000000] PID hash table entries: 512 (order: -1, 2048 bytes)
[    0.000000] Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
[    0.000000] Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
[    0.000000] Writing ErrCtl register=00000000
[    0.000000] Readback ErrCtl register=00000000
[    0.000000] Memory: 123300K/131072K available (4028K kernel code, 163K rwdata, 532K rodata, 1220K init, 212K bss, 7772K reserved, 0K cma-reserved)
[    0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[    0.000000] NR_IRQS: 51
[    0.000000] CPU clock: 560.000 MHz
[    0.000000] clocksource: MIPS: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 6825930166 ns
[    0.000010] sched_clock: 32 bits at 280MHz, resolution 3ns, wraps every 7669584382ns
[    0.008316] Calibrating delay loop... 278.93 BogoMIPS (lpj=1394688)
[    0.084946] pid_max: default: 32768 minimum: 301
[    0.090058] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.097117] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.109253] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[    0.119763] futex hash table entries: 256 (order: -1, 3072 bytes)
[    0.126332] pinctrl core: initialized pinctrl subsystem
[    0.134211] NET: Registered protocol family 16
[    0.142463] PCI host bridge /ahb/pcie-controller@180c0000 ranges:
[    0.148968]  MEM 0x0000000010000000..0x0000000013ffffff
[    0.154568]   IO 0x0000000000000000..0x0000000000000000
[    0.176856] PCI host bridge to bus 0000:00
[    0.181231] pci_bus 0000:00: root bus resource [mem 0x10000000-0x13ffffff]
[    0.188596] pci_bus 0000:00: root bus resource [io  0x0000]
[    0.194520] pci_bus 0000:00: root bus resource [??? 0x00000000 flags 0x0]
[    0.201760] pci_bus 0000:00: No busn resource found for root bus, will use [bus 00-ff]
[    0.210227] pci 0000:00:00.0: [168c:0033] type 00 class 0x028000
[    0.210286] pci 0000:00:00.0: reg 0x10: [mem 0x00000000-0x0001ffff 64bit]
[    0.210342] pci 0000:00:00.0: reg 0x30: [mem 0x00000000-0x0000ffff pref]
[    0.210423] pci 0000:00:00.0: supports D1
[    0.210435] pci 0000:00:00.0: PME# supported from D0 D1 D3hot
[    0.210676] pci_bus 0000:00: busn_res: [bus 00-ff] end is updated to 00
[    0.210705] pci 0000:00:00.0: BAR 0: assigned [mem 0x10000000-0x1001ffff 64bit]
[    0.218543] pci 0000:00:00.0: BAR 6: assigned [mem 0x10020000-0x1002ffff pref]
[    0.229177] clocksource: Switched to clocksource MIPS
[    0.235575] NET: Registered protocol family 2
[    0.241149] TCP established hash table entries: 1024 (order: 0, 4096 bytes)
[    0.248570] TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
[    0.255386] TCP: Hash tables configured (established 1024 bind 1024)
[    0.262296] UDP hash table entries: 256 (order: 0, 4096 bytes)
[    0.268524] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[    0.275472] NET: Registered protocol family 1
[    0.280187] PCI: CLS 0 bytes, default 32
[    0.283092] Crashlog allocated RAM at address 0x3f00000
[    0.290001] workingset: timestamp_bits=30 max_order=15 bucket_order=0
[    0.302034] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.308242] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[    0.328085] io scheduler noop registered
[    0.332305] io scheduler deadline registered (default)
[    0.338129] ar7200-usb-phy usb-phy: phy reset is missing
[    0.345859] pinctrl-single 1804002c.pinmux: 544 pins at pa b804002c size 68
[    0.354085] gpio-export gpio-export: 4 gpio(s) exported
[    0.360453] Serial: 8250/16550 driver, 16 ports, IRQ sharing enabled
[    0.369695] console [ttyS0] disabled
[    0.373540] 18020000.uart: ttyS0 at MMIO 0x18020000 (irq = 9, base_baud = 2500000) is a 16550A
[    0.382770] console [ttyS0] enabled
[    0.390209] bootconsole [early0] disabled
[    0.419898] m25p80 spi0.0: s25fl064k (8192 Kbytes)
[    0.424811] 3 fixed-partitions partitions found on MTD device spi0.0
[    0.431284] Creating 3 MTD partitions on "spi0.0":
[    0.436152] 0x000000000000-0x000000020000 : "u-boot"
[    0.442030] 0x000000020000-0x0000007f0000 : "firmware"
[    0.448170] 2 tplink-fw partitions found on MTD device firmware
[    0.454233] Creating 2 MTD partitions on "firmware":
[    0.459297] 0x000000000000-0x000000185c43 : "kernel"
[    0.465078] 0x000000185c44-0x0000007d0000 : "rootfs"
[    0.470887] mtd: device 3 (rootfs) set to be root filesystem
[    0.476667] 1 squashfs-split partitions found on MTD device rootfs
[    0.483000] 0x0000003f0000-0x0000007d0000 : "rootfs_data"
[    0.489286] 0x0000007f0000-0x000000800000 : "art"
[    0.495935] libphy: Fixed MDIO Bus: probed
[    0.840972] libphy: ag71xx_mdio: probed
[    0.847658] switch0: Atheros AR8327 rev. 4 switch registered on mdio-bus.0
[    1.498669] ag71xx 19000000.eth: connected to PHY at mdio-bus.0:00 [uid=004dd034, driver=Atheros AR8216/AR8236/AR8316]
[    1.510205] eth0: Atheros AG71xx at 0xb9000000, irq 4, mode: rgmii
[    1.519090] NET: Registered protocol family 10
[    1.528831] Segment Routing with IPv6
[    1.532729] NET: Registered protocol family 17
[    1.537291] bridge: filtering via arp/ip/ip6tables is no longer available by default. Update your scripts to load br_netfilter if you need this.
[    1.550460] 8021q: 802.1Q VLAN Support v1.8
[    1.557196] hctosys: unable to open rtc device (rtc0)
[    1.567919] VFS: Mounted root (squashfs filesystem) readonly on device 31:3.
[    1.580565] Freeing unused kernel memory: 1220K
[    1.585163] This architecture does not have kernel memory protection.
[    2.341108] init: Console is alive
[    2.344780] init: - watchdog -
[    2.539196] random: fast init done
[    3.227174] kmodloader: loading kernel modules from /etc/modules-boot.d/*
[    3.318520] usbcore: registered new interface driver usbfs
[    3.324222] usbcore: registered new interface driver hub
[    3.329745] usbcore: registered new device driver usb
[    3.340825] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    3.349237] ehci-platform: EHCI generic platform driver
[    3.354807] ehci-platform 1b000000.usb: EHCI Host Controller
[    3.360635] ehci-platform 1b000000.usb: new USB bus registered, assigned bus number 1
[    3.368661] ehci-platform 1b000000.usb: irq 3, io mem 0x1b000000
[    3.399226] ehci-platform 1b000000.usb: USB 2.0 started, EHCI 1.00
[    3.406370] hub 1-0:1.0: USB hub found
[    3.410573] hub 1-0:1.0: 1 port detected
[    3.416039] kmodloader: done loading kernel modules from /etc/modules-boot.d/*
[    3.426136] init: - preinit -
[    4.064622] usb 1-1: new high-speed USB device number 2 using ehci-platform
[    4.322440] random: procd: uninitialized urandom read (4 bytes read)
[    4.329588] hub 1-1:1.0: USB hub found
[    4.335974] hub 1-1:1.0: 4 ports detected
[    4.459878] random: jshn: uninitialized urandom read (4 bytes read)
[    4.703853] random: jshn: uninitialized urandom read (4 bytes read)
[    6.336358] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[    6.342418] IPv6: ADDRCONF(NETDEV_UP): eth0.1: link is not ready
[    7.390455] eth0: link up (1000Mbps/Full duplex)
[    7.395214] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[    7.401976] IPv6: ADDRCONF(NETDEV_CHANGE): eth0.1: link becomes ready
[    9.772397] jffs2: notice: (487) jffs2_build_xattr_subsystem: complete building xattr subsystem, 4 of xdatum (2 unchecked, 2 orphan) and 103 of xref (2 dead, 0 orphan) found.
[    9.793563] mount_root: switching to jffs2 overlay
[    9.822830] overlayfs: upper fs does not support tmpfile.
[    9.837770] urandom-seed: Seeding with /etc/urandom.seed
[   10.092290] eth0: link down
[   10.140701] procd: - early -
[   10.146584] procd: - watchdog -
[   10.736720] procd: - watchdog -
[   10.740292] procd: - ubus -
[   10.765318] urandom_read: 5 callbacks suppressed
[   10.765326] random: ubusd: uninitialized urandom read (4 bytes read)
[   10.794542] random: ubusd: uninitialized urandom read (4 bytes read)
[   10.802482] procd: - init -
[   12.007052] urngd: v1.0.2 started.
[   12.034341] kmodloader: loading kernel modules from /etc/modules.d/*
[   12.357042] random: crng init done
[   12.935120] SCSI subsystem initialized
[   13.145870] ip6_tables: (C) 2000-2006 Netfilter Core Team
[   13.181258] Loading modules backported from Linux version v4.19.98-0-gd183c8e2647a
[   13.188941] Backport generated by backports.git v4.19.98-1-0-g8204eb99
[   13.211867] ip_tables: (C) 2000-2006 Netfilter Core Team
[   13.239394] nf_conntrack version 0.5.0 (2048 buckets, 8192 max)
[   13.390639] usbcore: registered new interface driver usb-storage
[   13.546533] wireguard: WireGuard 0.0.20190702 loaded. See www.wireguard.com for information.
[   13.555160] wireguard: Copyright (C) 2015-2019 Jason A. Donenfeld <Jason@zx2c4.com>. All Rights Reserved.
[   13.625325] xt_time: kernel timezone is -0000
[   13.682560] usbcore: registered new interface driver dm9601
[   13.775298] PPP generic driver version 2.4.2
[   13.790335] NET: Registered protocol family 24
[   13.873087] ath: EEPROM regdomain: 0x0
[   13.873096] ath: EEPROM indicates default country code should be used
[   13.873100] ath: doing EEPROM country->regdmn map search
[   13.873116] ath: country maps to regdmn code: 0x3a
[   13.873123] ath: Country alpha2 being used: US
[   13.873127] ath: Regpair used: 0x3a
[   13.886992] ieee80211 phy0: Selected rate control algorithm 'minstrel_ht'
[   13.888815] ieee80211 phy0: Atheros AR9340 Rev:2 mem=0xb8100000, irq=12
[   13.895951] PCI: Enabling device 0000:00:00.0 (0000 -> 0002)
[   14.024580] ath: EEPROM regdomain: 0x0
[   14.024589] ath: EEPROM indicates default country code should be used
[   14.024593] ath: doing EEPROM country->regdmn map search
[   14.024609] ath: country maps to regdmn code: 0x3a
[   14.024615] ath: Country alpha2 being used: US
[   14.024620] ath: Regpair used: 0x3a
[   14.036485] ieee80211 phy1: Selected rate control algorithm 'minstrel_ht'
[   14.038405] ieee80211 phy1: Atheros AR9300 Rev:4 mem=0xb0000000, irq=14
[   14.089594] kmodloader: done loading kernel modules from /etc/modules.d/*
[   27.854810] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[   27.862131] eth0: link up (1000Mbps/Full duplex)
[   27.866850] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[   27.907051] br-lan: port 1(eth0.1) entered blocking state
[   27.912595] br-lan: port 1(eth0.1) entered disabled state
[   27.918393] device eth0.1 entered promiscuous mode
[   27.923307] device eth0 entered promiscuous mode
[   27.951188] br-lan: port 1(eth0.1) entered blocking state
[   27.956675] br-lan: port 1(eth0.1) entered forwarding state
[   27.962571] IPv6: ADDRCONF(NETDEV_UP): br-lan: link is not ready
[   28.909651] IPv6: ADDRCONF(NETDEV_CHANGE): br-lan: link becomes ready
[   31.488014] ath: EEPROM regdomain: 0x804c
[   31.488023] ath: EEPROM indicates we should expect a country code
[   31.488029] ath: doing EEPROM country->regdmn map search
[   31.488034] ath: country maps to regdmn code: 0x3b
[   31.488041] ath: Country alpha2 being used: BR
[   31.488045] ath: Regpair used: 0x3b
[   31.488053] ath: regdomain 0x804c dynamically updated by user
[   31.488127] ath: EEPROM regdomain: 0x804c
[   31.488131] ath: EEPROM indicates we should expect a country code
[   31.488135] ath: doing EEPROM country->regdmn map search
[   31.488140] ath: country maps to regdmn code: 0x3b
[   31.488145] ath: Country alpha2 being used: BR
[   31.488149] ath: Regpair used: 0x3b
[   31.488154] ath: regdomain 0x804c dynamically updated by user
[   34.026964] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready
[   34.127425] br-lan: port 2(wlan0) entered blocking state
[   34.132901] br-lan: port 2(wlan0) entered disabled state
[   34.138702] device wlan0 entered promiscuous mode
[   34.202622] IPv6: ADDRCONF(NETDEV_UP): wlan1: link is not ready
[   34.223738] br-lan: port 3(wlan1) entered blocking state
[   34.229138] br-lan: port 3(wlan1) entered disabled state
[   34.234927] device wlan1 entered promiscuous mode
[   34.239869] br-lan: port 3(wlan1) entered blocking state
[   34.245268] br-lan: port 3(wlan1) entered forwarding state
[   35.069262] br-lan: port 3(wlan1) entered disabled state
[   35.101787] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready
[   35.108427] br-lan: port 2(wlan0) entered blocking state
[   35.113882] br-lan: port 2(wlan0) entered forwarding state
[   35.246782] IPv6: ADDRCONF(NETDEV_CHANGE): wlan1: link becomes ready
[   35.253751] br-lan: port 3(wlan1) entered blocking state
[   35.259221] br-lan: port 3(wlan1) entered forwarding state
[43833.195325] device wlan1 left promiscuous mode
[43833.199958] br-lan: port 3(wlan1) entered disabled state
[43833.210644] device wlan0 left promiscuous mode
[43833.215368] br-lan: port 2(wlan0) entered disabled state
[43834.861293] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready
[43834.891376] IPv6: ADDRCONF(NETDEV_UP): wlan1: link is not ready
[43834.952968] br-lan: port 2(wlan0) entered blocking state
[43834.958436] br-lan: port 2(wlan0) entered disabled state
[43834.964208] device wlan0 entered promiscuous mode
[43834.969118] br-lan: port 2(wlan0) entered blocking state
[43834.974561] br-lan: port 2(wlan0) entered forwarding state
[43834.989637] br-lan: port 3(wlan1) entered blocking state
[43834.995114] br-lan: port 3(wlan1) entered disabled state
[43835.000868] device wlan1 entered promiscuous mode
[43835.009276] br-lan: port 3(wlan1) entered blocking state
[43835.014735] br-lan: port 3(wlan1) entered forwarding state
[43835.314225] br-lan: port 2(wlan0) entered disabled state
[43835.319990] br-lan: port 3(wlan1) entered disabled state
[43836.002814] IPv6: ADDRCONF(NETDEV_CHANGE): wlan1: link becomes ready
[43836.009506] br-lan: port 3(wlan1) entered blocking state
[43836.014956] br-lan: port 3(wlan1) entered forwarding state
[43836.081008] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready
[43836.087697] br-lan: port 2(wlan0) entered blocking state
[43836.093122] br-lan: port 2(wlan0) entered forwarding state
[45857.476021] device wlan0 left promiscuous mode
[45857.480756] br-lan: port 2(wlan0) entered disabled state
[45857.501692] device wlan1 left promiscuous mode
[45857.506329] br-lan: port 3(wlan1) entered disabled state

Thanks!

Is this the same behavior as if you switch the wifi switch to off or on?

If this is true, it could be that your power source, pull up/down resistors or something related to the switch is defect so that it will trigger the wifi on/off hotplug event.
Removing this hotplug script could solve the issue.

1 Like

Yes I'd definitely try chmod -x /etc/rc.button/rfkill. That will disable the script associated with the wifi on/off "button" on the back.

2 Likes

I never messed with this physical wifi switch before, I'll try disabling this script as @mk24 suggested.

Hello!

I have the same issue using WDR4300.

Can you solve the problem?

Tks