[SOLVED] High CPU YK-L1 by 'mount_root done' after upgrade to 21.02

Hi,

Device:

Model	YOUKU YK1
Architecture	MediaTek MT7620A ver:2 eco:6
Firmware Version	OpenWrt 21.02.0 r16279-5cc0535800 / LuCI openwrt-21.02 branch git-21.231.26241-422c175
Kernel Version	5.4.143
Local Time	2021-08-31 22:28:43
Uptime	0h 8m 49s
Load Average	1.86, 1.57, 0.83

I have upgraded from 18.x to 21.02 and now the device is laggy because all of the CPU is taken by a process mount_root done:

Load average: 1.62 0.50 0.18 2/44 2458
  PID  PPID USER     STAT   VSZ %VSZ %CPU COMMAND
 1963  1946 root     R     1140   1%  55% mount_root done
  280     2 root     SW       0   0%  23% [spi0]

By upgrade I mean I made a full reset and flashed the new OpenWRT from the recovery (Breed). So it's like a brand new install

CORRECTION: I upgraded from ver 18, not 19

Any ideas?

2 Likes

what was the mount command ?

How can I check that?

which one is yours?

1 Like

Mine is 64MB

CORRECTION: it is actually a 32MB. I initially saw the number 64 in LuCI web UI

2 Likes

hmmmm... must be new?

ramips: split Youku YK1 to YK-L1 and YK-L1c

Descriptions:
  Previous supported device YOUKU yk1 is actually Youku YK-L1. Though they look
  really different, the only hardware difference between the two models is flash
  size, YK-L1 has 32 MiB flash but YK-L1c has 16MiB. It seems that YK-L1c can
  compatible with YK-L1's firmware but it's better to split it to different models.

  It is easy to identify the models by looking at the label on the bottom of the
  device. The label has the model number "YK-L1" or "YK-L1c". Due to different flash
  sizes, YK-L1c that using previous YK-L1's firmware needs to apply "force update"
  to install compatible firmware, so please backup config file before system upgrade.

The sticker says its YK-L1

1 Like

When the led stops blinking the ssh prompt changes to root@OpenWrt:(unknown)# and each command output contains ash: getcwd: No such file or directory at the end:

root@OpenWrt:~# uptime
 22:24:45 up 4 min,  load average: 2.15, 1.15, 0.47
root@OpenWrt:~# ps | grep mount
 1962 root      1140 R    mount_root done
 2818 root      1252 S    grep mount
root@OpenWrt:~# ps | grep mount
 1962 root      1140 R    mount_root done
 2939 root      1252 S    grep mount
root@OpenWrt:~# ps | grep mount
 3259 root      1252 S    grep mount
ash: getcwd: No such file or directory
root@OpenWrt:(unknown)# 
ash: getcwd: No such file or directory
root@OpenWrt:(unknown)# uname
Linux
ash: getcwd: No such file or directory

dmesg:

root@OpenWrt:(unknown)# dmesg
[    0.000000] Linux version 5.4.143 (builder@buildhost) (gcc version 8.4.0 (OpenWrt GCC 8.4.0 r16279-5cc0535800)) #0 Tue Aug 31 22:20:08 2021
[    0.000000] Board has DDR2
[    0.000000] Analog PMU set to hw control
[    0.000000] Digital PMU set to hw control
[    0.000000] SoC Type: MediaTek MT7620A ver:2 eco:6
[    0.000000] printk: bootconsole [early0] enabled
[    0.000000] CPU0 revision is: 00019650 (MIPS 24KEc)
[    0.000000] MIPS: machine is YOUKU YK1
[    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, PIPT, no 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]   Normal zone: 288 pages used for memmap
[    0.000000]   Normal zone: 0 pages reserved
[    0.000000]   Normal zone: 32768 pages, LIFO batch:7
[    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: 32480
[    0.000000] Kernel command line: console=ttyS0,57600 rootfstype=squashfs,jffs2
[    0.000000] Dentry cache hash table entries: 16384 (order: 4, 65536 bytes, linear)
[    0.000000] Inode-cache hash table entries: 8192 (order: 3, 32768 bytes, linear)
[    0.000000] Writing ErrCtl register=0001c64f
[    0.000000] Readback ErrCtl register=0001c64f
[    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
[    0.000000] Memory: 122408K/131072K available (5063K kernel code, 205K rwdata, 632K rodata, 1196K init, 213K bss, 8664K reserved, 0K cma-reserved)
[    0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[    0.000000] NR_IRQS: 256
[    0.000000] random: get_random_bytes called from 0x805c5a28 with crng_init=0
[    0.000000] CPU Clock: 580MHz
[    0.000000] clocksource: systick: mask: 0xffff max_cycles: 0xffff, max_idle_ns: 583261500 ns
[    0.000000] systick: enable autosleep mode
[    0.000000] systick: running - mult: 214748, shift: 32
[    0.000000] clocksource: MIPS: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 6590553264 ns
[    0.000011] sched_clock: 32 bits at 290MHz, resolution 3ns, wraps every 7405115902ns
[    0.015505] Calibrating delay loop... 385.02 BogoMIPS (lpj=770048)
[    0.059580] pid_max: default: 32768 minimum: 301
[    0.068978] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes, linear)
[    0.083387] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes, linear)
[    0.105767] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
[    0.125076] futex hash table entries: 256 (order: -1, 3072 bytes, linear)
[    0.138670] pinctrl core: initialized pinctrl subsystem
[    0.150529] NET: Registered protocol family 16
[    0.189204] rt2880_gpio 10000600.gpio: registering 24 gpios
[    0.200270] rt2880_gpio 10000600.gpio: registering 24 irq handlers
[    0.212837] rt2880_gpio 10000638.gpio: registering 16 gpios
[    0.223847] rt2880_gpio 10000638.gpio: registering 16 irq handlers
[    0.236467] rt2880_gpio 10000660.gpio: registering 32 gpios
[    0.247484] rt2880_gpio 10000660.gpio: registering 32 irq handlers
[    0.260114] rt2880_gpio 10000688.gpio: registering 1 gpios
[    0.270956] rt2880_gpio 10000688.gpio: registering 1 irq handlers
[    0.283924] workqueue: max_active 576 requested for napi_workq is out of range, clamping between 1 and 512
[    0.309256] clocksource: Switched to clocksource systick
[    0.320905] thermal_sys: Registered thermal governor 'step_wise'
[    0.321445] NET: Registered protocol family 2
[    0.342110] IP idents hash table entries: 2048 (order: 2, 16384 bytes, linear)
[    0.357322] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 4096 bytes, linear)
[    0.373852] TCP established hash table entries: 1024 (order: 0, 4096 bytes, linear)
[    0.389068] TCP bind hash table entries: 1024 (order: 0, 4096 bytes, linear)
[    0.403072] TCP: Hash tables configured (established 1024 bind 1024)
[    0.415859] UDP hash table entries: 256 (order: 0, 4096 bytes, linear)
[    0.428772] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes, linear)
[    0.442928] NET: Registered protocol family 1
[    0.451511] PCI: CLS 0 bytes, default 32
[    0.462608] rt-timer 10000100.timer: maximum frequency is 1220Hz
[    0.476839] workingset: timestamp_bits=14 max_order=15 bucket_order=1
[    0.498340] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.509852] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[    0.545813] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 252)
[    0.563597] Serial: 8250/16550 driver, 16 ports, IRQ sharing enabled
[    0.579254] printk: console [ttyS0] disabled
[    0.587730] 10000c00.uartlite: ttyS0 at MMIO 0x10000c00 (irq = 20, base_baud = 2500000) is a Palmchip BK-3103
[    0.607368] printk: console [ttyS0] enabled
[    0.623948] printk: bootconsole [early0] disabled
[    0.652418] spi spi0.0: force spi mode3
[    0.672485] spi-nor spi0.0: w25q256 (32768 Kbytes)
[    0.682110] 4 fixed-partitions partitions found on MTD device spi0.0
[    0.694778] Creating 4 MTD partitions on "spi0.0":
[    0.704336] 0x000000000000-0x000000030000 : "u-boot"
[    0.715397] 0x000000030000-0x000000040000 : "u-boot-env"
[    0.727172] 0x000000040000-0x000000050000 : "factory"
[    0.738421] 0x000000050000-0x000002000000 : "firmware"
[    0.753921] 2 uimage-fw partitions found on MTD device firmware
[    0.765790] Creating 2 MTD partitions on "firmware":
[    0.775700] 0x000000000000-0x0000001e60f8 : "kernel"
[    0.786796] 0x0000001e60f8-0x000001fb0000 : "rootfs"
[    0.797885] mtd: device 5 (rootfs) set to be root filesystem
[    0.811382] 1 squashfs-split partitions found on MTD device rootfs
[    0.823790] 0x0000004fb000-0x000001fb0000 : "rootfs_data"
[    0.836641] libphy: Fixed MDIO Bus: probed
[    0.855146] gsw: setting port4 to ephy mode
[    0.863584] mtk_soc_eth 10100000.ethernet eth0 (uninitialized): port 1 link up (100Mbps/Full duplex)
[    0.882327] mtk_soc_eth 10100000.ethernet: loaded mt7620 driver
[    0.894920] mtk_soc_eth 10100000.ethernet eth0: mediatek frame engine at 0xb0100000, irq 5
[    0.911972] rt2880_wdt 10000120.watchdog: Initialized
[    0.923759] NET: Registered protocol family 10
[    0.937415] Segment Routing with IPv6
[    0.944921] NET: Registered protocol family 17
[    0.953870] bridge: filtering via arp/ip/ip6tables is no longer available by default. Update your scripts to load br_netfilter if you need this.
[    0.979717] 8021q: 802.1Q VLAN Support v1.8
[    0.998739] VFS: Mounted root (squashfs filesystem) readonly on device 31:5.
[    1.019686] Freeing unused kernel memory: 1196K
[    1.028739] This architecture does not have kernel memory protection.
[    1.041573] Run /sbin/init as init process
[    1.577208] random: fast init done
[    1.978510] init: Console is alive
[    1.985677] init: - watchdog -
[    3.486745] kmodloader: loading kernel modules from /etc/modules-boot.d/*
[    3.733182] usbcore: registered new interface driver usbfs
[    3.744305] usbcore: registered new interface driver hub
[    3.755035] usbcore: registered new device driver usb
[    3.771890] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    3.786844] ehci-fsl: Freescale EHCI Host controller driver
[    3.799638] ehci-platform: EHCI generic platform driver
[    3.820496] phy phy-usbphy.0: remote usb device wakeup disabled
[    3.832311] phy phy-usbphy.0: UTMI 16bit 30MHz
[    3.841174] ehci-platform 101c0000.ehci: EHCI Host Controller
[    3.852668] ehci-platform 101c0000.ehci: new USB bus registered, assigned bus number 1
[    3.868603] ehci-platform 101c0000.ehci: irq 26, io mem 0x101c0000
[    3.885412] ehci-platform 101c0000.ehci: USB 2.0 started, EHCI 1.00
[    3.898975] hub 1-0:1.0: USB hub found
[    3.906972] hub 1-0:1.0: 1 port detected
[    3.920212] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[    3.934475] ohci-platform: OHCI generic platform driver
[    3.945297] ohci-platform 101c1000.ohci: Generic Platform OHCI controller
[    3.958901] ohci-platform 101c1000.ohci: new USB bus registered, assigned bus number 2
[    3.974833] ohci-platform 101c1000.ohci: irq 26, io mem 0x101c1000
[    4.011987] hub 2-0:1.0: USB hub found
[    4.019987] hub 2-0:1.0: 1 port detected
[    4.056393] kmodloader: done loading kernel modules from /etc/modules-boot.d/*
[    4.075115] init: - preinit -
[    5.502440] random: jshn: uninitialized urandom read (4 bytes read)
[    5.682617] random: jshn: uninitialized urandom read (4 bytes read)
[    5.916471] random: jshn: uninitialized urandom read (4 bytes read)
[    6.516295] urandom_read: 4 callbacks suppressed
[    6.516305] random: procd: uninitialized urandom read (4 bytes read)
[    6.546555] 8021q: adding VLAN 0 to HW filter on device eth0
[    8.131605] mount_root: jffs2 not ready yet, using temporary tmpfs overlay
[    8.150016] urandom-seed: Seed file not found (/etc/urandom.seed)
[    8.292307] procd: - early -
[    8.298347] procd: - watchdog -
[    8.752675] procd: - watchdog -
[    8.873633] procd: - ubus -
[    9.035273] random: ubusd: uninitialized urandom read (4 bytes read)
[    9.055892] random: ubusd: uninitialized urandom read (4 bytes read)
[    9.079844] procd: - init -
[   10.365861] kmodloader: loading kernel modules from /etc/modules.d/*
[   10.657680] Loading modules backported from Linux version v5.10.42-0-g65859eca4dff
[   10.672869] Backport generated by backports.git v5.10.42-1-0-gbee5c545
[   10.761325] xt_time: kernel timezone is -0000
[   10.887919] urngd: jent-rng init failed, err: 2
[   10.922668] PPP generic driver version 2.4.2
[   10.934276] NET: Registered protocol family 24
[   10.988465] rt2800_wmac 10180000.wmac: loaded eeprom from mtd device "factory"
[   11.002959] ieee80211 phy0: rt2x00_set_rt: Info - RT chipset 6352, rev 0500 detected
[   11.018445] ieee80211 phy0: rt2x00_set_rf: Info - RF chipset 7620 detected
[   11.032275] ieee80211 phy0: Selected rate control algorithm 'minstrel_ht'
[   11.144554] kmodloader: done loading kernel modules from /etc/modules.d/*
[   21.761319] random: crng init done
[  124.413603] jffs2_scan_eraseblock(): End of filesystem marker found at 0x0
[  124.452488] jffs2_build_filesystem(): unlocking the mtd device... 
[  124.457304] done.
[  124.473477] jffs2_build_filesystem(): erasing all blocks after the end marker... 
[  125.582804] 8021q: adding VLAN 0 to HW filter on device eth0
[  125.700992] br-lan: port 1(eth0.1) entered blocking state
[  125.711862] br-lan: port 1(eth0.1) entered disabled state
[  125.723064] device eth0.1 entered promiscuous mode
[  125.732669] device eth0 entered promiscuous mode
[  125.878985] br-lan: port 1(eth0.1) entered blocking state
[  125.889800] br-lan: port 1(eth0.1) entered forwarding state
[  126.609773] IPv6: ADDRCONF(NETDEV_CHANGE): br-lan: link becomes ready
[  776.377957] done.
[  776.381862] jffs2: notice: (1962) jffs2_build_xattr_subsystem: complete building xattr subsystem, 0 of xdatum (0 unchecked, 0 orphan) and 0 of xref (0 dead, 0 orphan) found.
[  776.636352] overlayfs: upper fs does not support tmpfile.
ash: getcwd: No such file or directory

1 Like

how are you mounting the drive ? through Luci ?

I'm not mounting anything. I simply flash OpenWRT, wait till it comes online and then connect over SSH. In the top output I see that command

Ah! I thought it was an external device you were mounting.

in that case, do and post the output.

cd /
mount

I also checked the SPI I have and it is winbond q256fvfg which is 32MB. However, OpenWRT reports 64MB in LuCI:

image

image

1 Like

Well, that might be a problem :wink:

I checked 18.06.0 and it reports the flash size correctly:

image

and 19 .07 ?

19.07 also shows wrong 64MB
It could be that I was mainly using 18.06 with this router, and not 19 (as I initially wrote in this topic). Because I really had no problems with the flash previously

Dmesg of 19.07:

root@OpenWrt:~# dmesg | grep spi
[    0.598553] spi spi0.0: force spi mode3
[    0.607016] m25p80 spi0.0: found w25q256, expected mx25l25635f
[    0.629957] m25p80 spi0.0: w25q256 (32768 Kbytes)

then you should probably report it as a bug ...

https://bugs.openwrt.org/

Wow. I actually followed this post: Youku YK1 messed up - #9 by papdee

And it worked!

  1. Flash 21.02
  2. Wait (10-15 min) till the led stops blinking and do not do anything with the router
  3. Plug power off
  4. Power on
  5. It should boot and report the correct flash size, as well as no more high CPU
2 Likes

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.