Opened 9 years ago
Last modified 4 years ago
#5071 reopened defect
Kamikaze, brcm47xx, WRT54G v1.1: jffs2 marker not detected, rootfs_data not mounted
Reported by: | anonymous | Owned by: | developers |
---|---|---|---|
Priority: | response-needed | Milestone: | Chaos Calmer 15.05 |
Component: | kernel | Version: | Backfire 10.03 |
Keywords: | jffs2 kamikaze | Cc: |
Description
I recently installed Kamikaze 8.09 on a
linksys wrt54g v1.1. If I make any changes
to the system, then shutdown and reboot,
the changes are lost. I've reported this
on the general forum posting
(http://forum.openwrt.org/viewtopic.php?id=20125)
and as indicated there, the problem is solved
by reverting to a kernel 2.4 release of kamikaze.
I've since found two other forum postings
where 3 other users report the same, or at
least a similar problem:
http://forum.openwrt.org/viewtopic.php?id=17976
http://forum.openwrt.org/viewtopic.php?id=18004
Below is a transcript to illustrate:
~$ telnet 192.168.1.1 Trying 192.168.1.1... Connected to 192.168.1.1. Escape character is '^]'. === IMPORTANT ============================ Use 'passwd' to set your login password this will disable telnet and enable SSH ------------------------------------------ BusyBox v1.11.2 (2009-01-06 15:14:38 CET) built-in shell (ash) Enter 'help' for a list of built-in commands. _______ ________ __ | |.-----.-----.-----.| | | |.----.| |_ | - || _ | -__| || | | || _|| _| |_______|| __|_____|__|__||________||__| |____| |__| W I R E L E S S F R E E D O M KAMIKAZE (8.09, r14511) ---------------------------- * 10 oz Vodka Shake well with ice and strain * 10 oz Triple sec mixture into 10 shot glasses. * 10 oz lime juice Salute! --------------------------------------------------- root@OpenWrt:/# ls -l /etc/passwd -rw-r--r-- 1 root root 119 Oct 6 14:15 /etc/passwd root@OpenWrt:/# passwd Changing password for root New password: Retype password: Password for root changed by root root@OpenWrt:~# ls -l /etc/passwd -rw-r--r-- 1 root root 152 Feb 6 05:21 /etc/passwd root@OpenWrt:~# date Fri Feb 6 05:21:30 UTC 2009
Timestamp has changed on the passwd file.
So, I logout and try telnet again, then
ssh when telnet is refused as expected.
root@OpenWrt:/# exit Connection closed by foreign host. ~$ telnet 192.168.1.1 Trying 192.168.1.1... Connected to 192.168.1.1. Escape character is '^]'. Login failed. Connection closed by foreign host. ~$ ssh root@192.168.1.1 The authenticity of host '192.168.1.1 (192.168.1.1)' can't be established. RSA key fingerprint is fc:cc:66:ca:00:22:4e:65:b6:d5:92:14:9d:ec:13:5b. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added '192.168.1.1' (RSA) to the list of known hosts. root@192.168.1.1's password: BusyBox v1.11.2 (2009-01-06 15:14:38 CET) built-in shell (ash) Enter 'help' for a list of built-in commands. _______ ________ __ | |.-----.-----.-----.| | | |.----.| |_ | - || _ | -__| || | | || _|| _| |_______|| __|_____|__|__||________||__| |____| |__| W I R E L E S S F R E E D O M KAMIKAZE (8.09, r14511) ---------------------------- * 10 oz Vodka Shake well with ice and strain * 10 oz Triple sec mixture into 10 shot glasses. * 10 oz lime juice Salute! --------------------------------------------------- root@OpenWrt:~# exit Connection to 192.168.1.1 closed. ~$
Log out again, remove power, reboot the wrt.
~$ ssh root@192.168.1.1 ssh: connect to host 192.168.1.1 port 22: Connection refused
Ssh connection is refused after reboot. Must
revert to a telnet session, which is accepted
without password.
~$ telnet 192.168.1.1 Trying 192.168.1.1... Connected to 192.168.1.1. Escape character is '^]'. === IMPORTANT ============================ Use 'passwd' to set your login password this will disable telnet and enable SSH ------------------------------------------ BusyBox v1.11.2 (2009-01-06 15:14:38 CET) built-in shell (ash) Enter 'help' for a list of built-in commands. _______ ________ __ | |.-----.-----.-----.| | | |.----.| |_ | - || _ | -__| || | | || _|| _| |_______|| __|_____|__|__||________||__| |____| |__| W I R E L E S S F R E E D O M KAMIKAZE (8.09, r14511) ---------------------------- * 10 oz Vodka Shake well with ice and strain * 10 oz Triple sec mixture into 10 shot glasses. * 10 oz lime juice Salute! --------------------------------------------------- root@OpenWrt:/# date Fri Feb 6 04:29:17 UTC 2009 root@OpenWrt:/# ls -lF /etc/passwd -rw-r--r-- 1 root root 119 Oct 6 14:15 /etc/passwd
And the password file is back to its
previous state. Below, it doesn't look
like the jffs2 partition is mounted. See the
log transcript that follows.
root@OpenWrt:/# mount rootfs on / type rootfs (rw) /dev/root on /rom type squashfs (ro) proc on /proc type proc (rw) sysfs on /sys type sysfs (rw) tmpfs on /tmp type tmpfs (rw,nosuid,nodev,size=6848k) tmpfs on /dev type tmpfs (rw,size=512k) devpts on /dev/pts type devpts (rw,mode=600) mini_fo:/tmp/root on / type mini_fo (rw) root@OpenWrt:/# dmesg | less undary -- force read-only mtd: partition "rootfs" set to be root filesystem mtd: partition "rootfs_data" created automatically, ofs=290000, len=160000 0x00290000-0x003f0000 : "rootfs_data" 0x003f0000-0x00400000 : "nvram" TCP vegas registered NET: Registered protocol family 1 NET: Registered protocol family 17 802.1Q VLAN Support v1.8 Ben Greear <greearb@candelatech.com> All bugs added by David S. Miller <davem@redhat.com> turn off boot console early0 VFS: Mounted root (squashfs filesystem) readonly. Freeing unused kernel memory: 128k freed Please be patient, while OpenWrt loads ... Algorithmics/MIPS FPU Emulator v1.5 diag: Detected 'Linksys WRT54G V1.x' b44: eth0: Link is up at 100 Mbps, full duplex. b44: eth0: Flow control is off for TX and off for RX. roboswitch: Probing device eth0: No Robo switch in managed mode found roboswitch: Probing device eth1: <3>roboswitch: [/home/nbd/release/brcm47xx/bui ld_dir/linux-brcm47xx/kmod-switch/switch-robo.c:117] SIOCGETCPHYRD failed! roboswitch: [/home/nbd/release/brcm47xx/build_dir/linux-brcm47xx/kmod-switch/sw itch-robo.c:117] SIOCGETCPHYRD failed! No Robo switch in managed mode found roboswitch: Probing device eth2: No such device roboswitch: Probing device eth3: No such device b44: eth0: powering down PHY jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000000: 0x8585 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000004: 0x0c0c i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000008: 0xb1b1 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00010000: 0x8585 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00010004: 0x0c0c i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00010008: 0xb1b1 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00020000: 0x8585 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00020004: 0x0c0c i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00020008: 0xb1b1 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00030000: 0x8585 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00030004: 0x0c0c i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00030008: 0xb1b1 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00040000: 0x8585 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00040004: 0x0c0c i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00040008: 0xb1b1 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00050000: 0x8585 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00050004: 0x0c0c i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00050008: 0xb1b1 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00060000: 0x8585 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00060004: 0x0c0c i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00060008: 0xb1b1 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00070000: 0x8585 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00070004: 0x0c0c i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00070008: 0xb1b1 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00080000: 0x8585 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00080004: 0x0c0c i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00080008: 0xb1b1 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00090000: 0x8585 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00090004: 0x0c0c i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00090008: 0xb1b1 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000a0000: 0x8585 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000a0004: 0x0c0c i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000a0008: 0xb1b1 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000b0000: 0x8585 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000b0004: 0x0c0c i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000b0008: 0xb1b1 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000c0000: 0x8585 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000c0004: 0x0c0c i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000c0008: 0xb1b1 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000d0000: 0x8585 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000d0004: 0x0c0c i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000d0008: 0xb1b1 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000e0000: 0x8585 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000e0004: 0x0c0c i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000e0008: 0xb1b1 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000f0000: 0x8585 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000f0004: 0x0c0c i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000f0008: 0xb1b1 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00100000: 0x8585 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00100004: 0x0c0c i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00100008: 0xb1b1 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00110000: 0x8585 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00110004: 0x0c0c i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00110008: 0xb1b1 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00120000: 0x8585 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00120004: 0x0c0c i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00120008: 0xb1b1 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00130000: 0x8585 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00130004: 0x0c0c i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00130008: 0xb1b1 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00140000: 0x8585 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00140004: 0x0c0c i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00140008: 0xb1b1 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0014000c: 0x8585 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00140010: 0x4444 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00140014: 0x1d1d i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00140018: 0x0202 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0014001c: 0x0101 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00140020: 0xeded i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0014002c: 0x1515 i nstead Further such events for this erase block will not be printed jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00150000: 0x8585 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00150004: 0x0c0c i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00150008: 0xb1b1 i nstead Cowardly refusing to erase blocks on filesystem with no valid JFFS2 nodes empty_blocks 0, bad_blocks 0, c->nr_blocks 22 mini_fo: using base directory: / mini_fo: using storage directory: /tmp/root b44: eth0: Link is up at 100 Mbps, full duplex. b44: eth0: Flow control is off for TX and off for RX. br-lan: Dropping NETIF_F_UFO since no NETIF_F_HW_CSUM feature. device eth0.0 entered promiscuous mode device eth0 entered promiscuous mode br-lan: port 1(eth0.0) entering learning state br-lan: topology change detected, propagating br-lan: port 1(eth0.0) entering forwarding state There is already a switch registered on the device 'eth0' roboswitch: Probing device eth1: <3>roboswitch: [/home/nbd/release/brcm47xx/bui ld_dir/linux-brcm47xx/kmod-switch/switch-robo.c:117] SIOCGETCPHYRD failed! roboswitch: [/home/nbd/release/brcm47xx/build_dir/linux-brcm47xx/kmod-switch/sw itch-robo.c:117] SIOCGETCPHYRD failed! No Robo switch in managed mode found roboswitch: Probing device eth2: No such device roboswitch: Probing device eth3: No such device b43-phy0: Broadcom 4306 WLAN found b43-phy0 debug: Found PHY: Analog 2, Type 2, Revision 2 b43-phy0 debug: Found Radio: Manuf 0x17F, Version 0x2050, Revision 2 b43-phy0 debug: DebugFS (CONFIG_DEBUG_FS) not enabled in kernel config phy0: Selected rate control algorithm 'pid' Broadcom 43xx driver loaded [ Features: NLR, Firmware-ID: FW13 ] br-lan: port 1(eth0.0) entering disabled state br-lan: port 1(eth0.0) entering learning state br-lan: topology change detected, propagating br-lan: port 1(eth0.0) entering forwarding state PPP generic driver version 2.4.2 ip_tables: (C) 2000-2006 Netfilter Core Team nf_conntrack version 0.5.0 (1024 buckets, 4096 max) jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000000: 0x8585 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000004: 0x0c0c i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000008: 0xb1b1 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00010000: 0x8585 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00010004: 0x0c0c i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00010008: 0xb1b1 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00020000: 0x8585 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00020004: 0x0c0c i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00020008: 0xb1b1 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00030000: 0x8585 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00030004: 0x0c0c i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00030008: 0xb1b1 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00040000: 0x8585 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00040004: 0x0c0c i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00040008: 0xb1b1 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00050000: 0x8585 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00050004: 0x0c0c i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00050008: 0xb1b1 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00060000: 0x8585 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00060004: 0x0c0c i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00060008: 0xb1b1 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00070000: 0x8585 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00070004: 0x0c0c i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00070008: 0xb1b1 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00080000: 0x8585 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00080004: 0x0c0c i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00080008: 0xb1b1 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00090000: 0x8585 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00090004: 0x0c0c i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00090008: 0xb1b1 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000a0000: 0x8585 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000a0004: 0x0c0c i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000a0008: 0xb1b1 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000b0000: 0x8585 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000b0004: 0x0c0c i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000b0008: 0xb1b1 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000c0000: 0x8585 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000c0004: 0x0c0c i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000c0008: 0xb1b1 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000d0000: 0x8585 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000d0004: 0x0c0c i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000d0008: 0xb1b1 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000e0000: 0x8585 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000e0004: 0x0c0c i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000e0008: 0xb1b1 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000f0000: 0x8585 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000f0004: 0x0c0c i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000f0008: 0xb1b1 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00100000: 0x8585 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00100004: 0x0c0c i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00100008: 0xb1b1 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00110000: 0x8585 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00110004: 0x0c0c i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00110008: 0xb1b1 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00120000: 0x8585 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00120004: 0x0c0c i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00120008: 0xb1b1 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00130000: 0x8585 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00130004: 0x0c0c i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00130008: 0xb1b1 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00140000: 0x8585 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00140004: 0x0c0c i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00140008: 0xb1b1 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0014000c: 0x8585 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00140010: 0x4444 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00140014: 0x1d1d i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00140018: 0x0202 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0014001c: 0x0101 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00140020: 0xeded i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0014002c: 0x1515 i nstead Further such events for this erase block will not be printed jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00150000: 0x8585 i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00150004: 0x0c0c i nstead jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00150008: 0xb1b1 i nstead Cowardly refusing to erase blocks on filesystem with no valid JFFS2 nodes empty_blocks 0, bad_blocks 0, c->nr_blocks 22
[as suggested in forum post 17976 above
I tried an mtd erase.]
root@OpenWrt:/# mtd erase rootfs_data Unlocking rootfs_data ... Erasing rootfs_data ... root@OpenWrt:/# mount rootfs on / type rootfs (rw) /dev/root on /rom type squashfs (ro) proc on /proc type proc (rw) sysfs on /sys type sysfs (rw) tmpfs on /tmp type tmpfs (rw,nosuid,nodev,size=6848k) tmpfs on /dev type tmpfs (rw,size=512k) devpts on /dev/pts type devpts (rw,mode=600) mini_fo:/tmp/root on / type mini_fo (rw) root@OpenWrt:/#
Hmm, this is different. I tried the
"mtd erase rootfs_data" 3 or 4 times before and
each time it changed the output of "mount" to
show a jffs2 partition.
Since then I reflashed with the latest Linksys
firmware for this wrt (WRT54GV4.0_4.21.1_US_code.trx)
and then reflashed again with Kamikaze 8.09. That
didn't solve the problem either. But reverting to
kernel 2.4 as suggested in forum posting 20125 has
fixed the problem.
Thanks.
Attachments (0)
Change History (25)
comment:1 Changed 9 years ago by anonymous
comment:2 Changed 9 years ago by anonymous
Me too. See:
#4988: defect: D-Link DIR-320 fails to access jffs (new)
comment:3 Changed 9 years ago by anonymous
Probably not exactly the same problem.
erasing mtdblock3 succeeds and jffs2 even can mount it as long as it is empty. After unmounting you can see the correct 0x1985 content on the partition. But the jffs2 filesystem does not read the contents correctly. The upper and lower 8 bits of the 16 bit words are exactly the same in the log file. Either the jffs2 filesystem has a bug or the mtd calls it uses. Reading via "hexdump /dev/mtd3" works correctly
hexdump /dev/mtdblock3 0000000 1985 2003 000c 0000 b0b1 e41e ffff ffff 0000010 ffff ffff ffff ffff ffff ffff ffff ffff * 0010000 1985 2003 000c 0000 b0b1 e41e ffff ffff 0010010 ffff ffff ffff ffff ffff ffff ffff ffff * 0020000 1985 2003 000c 0000 b0b1 e41e ffff ffff 0020010 ffff ffff ffff ffff ffff ffff ffff ffff * 0030000 1985 2003 000c 0000 b0b1 e41e ffff ffff 0030010 ffff ffff ffff ffff ffff ffff ffff ffff * 0040000 1985 2003 000c 0000 b0b1 e41e ffff ffff 0040010 ffff ffff ffff ffff ffff ffff ffff ffff * 0050000 1985 2003 000c 0000 b0b1 e41e ffff ffff 0050010 ffff ffff ffff ffff ffff ffff ffff ffff * 0060000 1985 2003 000c 0000 b0b1 e41e ffff ffff 0060010 ffff ffff ffff ffff ffff ffff ffff ffff * 0070000 1985 2003 000c 0000 b0b1 e41e ffff ffff 0070010 ffff ffff ffff ffff ffff ffff ffff ffff * 0080000 1985 2003 000c 0000 b0b1 e41e ffff ffff 0080010 ffff ffff ffff ffff ffff ffff ffff ffff * 0090000 1985 2003 000c 0000 b0b1 e41e ffff ffff 0090010 ffff ffff ffff ffff ffff ffff ffff ffff * 00a0000 1985 2003 000c 0000 b0b1 e41e ffff ffff 00a0010 ffff ffff ffff ffff ffff ffff ffff ffff * 00b0000 1985 2003 000c 0000 b0b1 e41e ffff ffff 00b0010 ffff ffff ffff ffff ffff ffff ffff ffff * 00c0000 1985 2003 000c 0000 b0b1 e41e ffff ffff 00c0010 ffff ffff ffff ffff ffff ffff ffff ffff * 00d0000 1985 2003 000c 0000 b0b1 e41e ffff ffff 00d0010 ffff ffff ffff ffff ffff ffff ffff ffff * 00e0000 1985 2003 000c 0000 b0b1 e41e ffff ffff 00e0010 ffff ffff ffff ffff ffff ffff ffff ffff * 00f0000 1985 2003 000c 0000 b0b1 e41e ffff ffff 00f0010 ffff ffff ffff ffff ffff ffff ffff ffff * 0100000 1985 2003 000c 0000 b0b1 e41e ffff ffff 0100010 ffff ffff ffff ffff ffff ffff ffff ffff * 0110000 1985 2003 000c 0000 b0b1 e41e ffff ffff 0110010 ffff ffff ffff ffff ffff ffff ffff ffff * 0120000 1985 2003 000c 0000 b0b1 e41e ffff ffff 0120010 ffff ffff ffff ffff ffff ffff ffff ffff * 0130000 1985 2003 000c 0000 b0b1 e41e ffff ffff 0130010 ffff ffff ffff ffff ffff ffff ffff ffff * 0140000 1985 2003 000c 0000 b0b1 e41e ffff ffff 0140010 ffff ffff ffff ffff ffff ffff ffff ffff * 0150000 1985 2003 000c 0000 b0b1 e41e ffff ffff 0150010 ffff ffff ffff ffff ffff ffff ffff ffff * 0160000 1985 2003 000c 0000 b0b1 e41e ffff ffff 0160010 ffff ffff ffff ffff ffff ffff ffff ffff * 0170000 1985 2003 000c 0000 b0b1 e41e ffff ffff 0170010 ffff ffff ffff ffff ffff ffff ffff ffff * 0180000 1985 2003 000c 0000 b0b1 e41e ffff ffff 0180010 ffff ffff ffff ffff ffff ffff ffff ffff * 0190000
But:
Jan 1 00:13:12 OpenWrt user.notice kernel: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000000: 0x8585 instead Jan 1 00:13:12 OpenWrt user.notice kernel: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000004: 0x0c0c instead Jan 1 00:13:12 OpenWrt user.notice kernel: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000008: 0xb1b1 instead Jan 1 00:13:12 OpenWrt user.notice kernel: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00010000: 0x8585 instead
Seems like it duplicates the lower 8 bit to the upper 8 bit
comment:4 Changed 8 years ago by anonymous
Same problem with a TEW-652BRP
dmesg output:
Creating 6 MTD partitions on "spi0.0": 0x00000000-0x00020000 : "u-boot" 0x00020000-0x00030000 : "config" 0x00030000-0x00100000 : "kernel" 0x00100000-0x003f0000 : "rootfs" mtd: partition "rootfs" set to be root filesystem mtd: partition "rootfs_data" created automatically, ofs=3B0000, len=40000 0x003b0000-0x003f0000 : "rootfs_data" 0x003f0000-0x00400000 : "art" 0x00030000-0x003f0000 : "firmware" Atheros AR71xx hardware watchdog driver version 0.1.0 ar71xx-wdt: timeout=15 secs (max=42) TCP westwood registered NET: Registered protocol family 17 802.1Q VLAN Support v1.8 Ben Greear <greearb@candelatech.com> All bugs added by David S. Miller <davem@redhat.com> VFS: Mounted root (squashfs filesystem) readonly. Freeing unused kernel memory: 136k freed Please be patient, while OpenWrt loads ... jffs2: Too few erase blocks (4) mini_fo: using base directory: / mini_fo: using storage directory: /tmp/root
comment:5 Changed 8 years ago by thepeople
- Resolution set to obsolete
- Status changed from new to closed
[patchteam] The issue should be fixes as originally posted, the last poster doesn't have enough free space to create a jffs partition.
comment:6 follow-up: ↓ 8 Changed 8 years ago by nico
- Component changed from base system to kernel
- Resolution obsolete deleted
- Status changed from closed to reopened
- Summary changed from Kamikaze 8.09, jffs2 not functioning, file changes do not survive shutdown-reboot to Kamikaze, brcm47xx, WRT54G v1.1: jffs2 marker not detected, rootfs_data not mounted
- Version changed from Kamikaze 8.09 to Kamikaze trunk
Confirmed on trunk r19920
<SNIP> Jan 1 00:00:19 OpenWrt user.warn kernel: flash init: 0x1fc00000 0x00400000 Jan 1 00:00:19 OpenWrt user.info kernel: Physically mapped flash: Found 1 x16 devices at 0x0 in 16-bit bank Jan 1 00:00:19 OpenWrt user.warn kernel: Intel/Sharp Extended Query Table at 0x0035 Jan 1 00:00:19 OpenWrt user.info kernel: Using auto-unlock on power-up/resume Jan 1 00:00:19 OpenWrt user.notice kernel: cfi_cmdset_0001: Erase suspend on write enabled Jan 1 00:00:19 OpenWrt user.debug kernel: erase region 0: offset=0x0,size=0x2000,blocks=8 Jan 1 00:00:19 OpenWrt user.debug kernel: erase region 1: offset=0x10000,size=0x10000,blocks=63 Jan 1 00:00:19 OpenWrt user.notice kernel: Flash device: 0x400000 at 0x1fc00000 Jan 1 00:00:19 OpenWrt user.notice kernel: bootloader size: 262144 Jan 1 00:00:19 OpenWrt user.notice kernel: Creating 4 MTD partitions on "Physically mapped flash": Jan 1 00:00:19 OpenWrt user.notice kernel: 0x000000000000-0x000000040000 : "cfe" Jan 1 00:00:19 OpenWrt user.notice kernel: 0x000000040000-0x0000003f0000 : "linux" Jan 1 00:00:19 OpenWrt user.notice kernel: 0x00000011a800-0x0000003f0000 : "rootfs" Jan 1 00:00:19 OpenWrt user.warn kernel: mtd: partition "rootfs" must either start or end on erase block boundary or be smaller than an erase block -- forcing read-only Jan 1 00:00:19 OpenWrt user.notice kernel: mtd: partition "rootfs" set to be root filesystem Jan 1 00:00:19 OpenWrt user.info kernel: mtd: partition "rootfs_data" created automatically, ofs=2B0000, len=140000 Jan 1 00:00:19 OpenWrt user.notice kernel: 0x0000002b0000-0x0000003f0000 : "rootfs_data" Jan 1 00:00:19 OpenWrt user.notice kernel: 0x0000003f0000-0x000000400000 : "nvram" <SNIP> Jan 1 00:00:20 OpenWrt user.warn kernel: VFS: Mounted root (squashfs filesystem) readonly on device 31:2. <SNIP> Jan 1 00:00:20 OpenWrt user.warn kernel: diag: Detected 'Linksys WRT54G V1.x' <SNIP> Jan 1 00:01:06 OpenWrt user.notice kernel: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000000: 0xdede instead Jan 1 00:01:06 OpenWrt user.notice kernel: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00001000: 0xdede instead Jan 1 00:01:06 OpenWrt user.notice kernel: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00010000: 0xdede instead Jan 1 00:01:06 OpenWrt user.notice kernel: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00020000: 0xdede instead Jan 1 00:01:06 OpenWrt user.notice kernel: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00030000: 0x8585 instead Jan 1 00:01:06 OpenWrt user.notice kernel: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00030004: 0x0c0c instead Jan 1 00:01:06 OpenWrt user.notice kernel: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00030008: 0xb1b1 instead <SNIP> Jan 1 00:01:07 OpenWrt user.notice kernel: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00130000: 0x8585 instead Jan 1 00:01:07 OpenWrt user.notice kernel: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00130004: 0x0c0c instead Jan 1 00:01:07 OpenWrt user.notice kernel: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00130008: 0xb1b1 instead Jan 1 00:01:07 OpenWrt user.notice kernel: Cowardly refusing to erase blocks on filesystem with no valid JFFS2 nodes Jan 1 00:01:07 OpenWrt user.notice kernel: empty_blocks 0, bad_blocks 0, c->nr_blocks 20 Jan 1 00:01:07 OpenWrt user.info sysinit: mount: mounting /dev/mtdblock3 on /rom/jffs failed: Input/output error <SNIP>
The marker is here, but it's not detected correctly by the jffs2_scan_eraseblock function
root@OpenWrt:/# hexdump /dev/mtdblock3 -s 0 -n 16 -x 0000000 adde dec0 0000 0000 0000 0000 0000 0000 0000010 root@OpenWrt:/# hexdump /dev/mtdblock3 -s 4096 -n 16 -x 0001000 adde dec0 0000 0000 0000 0000 0000 0000 0001010 root@OpenWrt:/# hexdump /dev/mtdblock3 -s 65536 -n 16 -x 0010000 adde dec0 0000 0000 0000 0000 0000 0000 root@OpenWrt:/# hexdump /dev/mtdblock3 -s 131072 -n 16 -x 0020000 adde dec0 0000 0000 0000 0000 0000 0000 0020010 root@OpenWrt:/# hexdump /dev/mtdblock3 -s 196608 -n 16 -x 0030000 1985 2003 000c 0000 b0b1 e41e ffff ffff 0030010 root@OpenWrt:/# hexdump /dev/mtdblock3 -s 196612 -n 16 -x 0030004 000c 0000 b0b1 e41e ffff ffff ffff ffff 0030014
comment:7 Changed 8 years ago by thepeople
- Milestone changed from Kamikaze to Backfire 10.03
comment:8 in reply to: ↑ 6 Changed 8 years ago by b.sander
Replying to nico:
Confirmed on trunk r19920
Hi,
would somebody try this patch with such a device!?
--- linux/drivers/ssb/driver_mipscore.c.bak 2010-04-06 02:29:13.000000000 +0200 +++ linux/drivers/ssb/driver_mipscore.c 2010-04-07 09:25:40.000000000 +0200 @@ -191,15 +191,15 @@ struct ssb_bus *bus = mcore->dev->bus; mcore->flash_buswidth = 2; - if (bus->chipco.dev) { + if (bus->extif.dev) { + mcore->flash_window = 0x1fc00000; + mcore->flash_window_size = 0x00400000; + } else { mcore->flash_window = 0x1c000000; mcore->flash_window_size = 0x02000000; if ((ssb_read32(bus->chipco.dev, SSB_CHIPCO_FLASH_CFG) & SSB_CHIPCO_CFG_DS16) == 0) mcore->flash_buswidth = 1; - } else { - mcore->flash_window = 0x1fc00000; - mcore->flash_window_size = 0x00400000; } }
because of changeset 15959, its possibly the same error as on Ticket #1502 and related to the buswidth. The devices that were affected on Ticket #4729 have serial flash, not the same as here.
comment:9 Changed 8 years ago by nico
- Version changed from Kamikaze trunk to Backfire 10.03
The patch does not fix the issue on a WRT54G v1.1. It has a bus->extif.dev and mcore->flash_buswidth is set to 2, same as BUSWIDTH, which was used to initialize bcm47xx_map.bankwidth before r15959.
comment:10 Changed 8 years ago by anonymous
Confirmed also with Backfire 10.03 on WRT54Gv1.1. Brcm47xx has issues with jffs2 marker. 2.4-kernel made the router unbootable after mtd. Tried it twice.
Got it working now after tftping 8.09.2 with 2.4 kernel.
comment:11 Changed 8 years ago by pyrophobicman@…
I just ran into this issue myself... investigating, it seems to be a problem casting to a 16-bit type - the 32-bit fields of node (line 635 of linux/fs/jffs2/scan.c) are set properly, but the 16-bit fields are not. The bit of memory at node's address is packed correctly, but even with my attempts to manually cast to uint16_t, any 16-bit casting seems to be breaking, returning the 0x8585 type problem.
What's special about this hardware, and why would this issue only show up in this one place? I'm on a wrt54g v1.1 as well.
comment:12 Changed 7 years ago by anonymous
Same issue here.
WRT54G v1.1 can only be used with Kamikaze brcm-2.4 images.
If I try any brcm47xx image (Kamikaze or Backfire) I get jffs2_scan_eraseblock() errors and a read-only rootfs_data.
When trying Backfire brcm-2.4 images after the flash the power led will keep blinking forever with a permanently lit up dmz led and no ping/telnet to the router is possible.
comment:13 Changed 7 years ago by bobMuk
Same issue here: WRT54G v1.1, Kamikaze 2.4 kernel build works but anything later doesn't.
Getting the same log entry:
"rootfs" must either start or end on erase block boundary or be smaller than an erase block -- forcing read-only
I guess (going by the age of this ticket) that there's no interest in fixing this in Backfire?
comment:14 Changed 7 years ago by bobMuk
Is there any likelihood that this'll get looked at? I'm willing to try any private builds/patches.
comment:15 follow-up: ↓ 17 Changed 7 years ago by jow
- Priority changed from high to response-needed
Whats the state of this in RC5 ? Anybody considered a miscompilation maybe?
comment:16 Changed 7 years ago by nbd
- Resolution set to no_response
- Status changed from reopened to closed
comment:17 in reply to: ↑ 15 Changed 6 years ago by atom_guy
- Resolution no_response deleted
- Status changed from closed to reopened
Replying to jow:
Whats the state of this in RC5 ? Anybody considered a miscompilation maybe?
Just reconfirmed on my WRT54G v1.1 on RC5. Same messages in dmesg, filesystem changes do not persist across reboots.
comment:18 Changed 6 years ago by anonymous
Is this going to be fixed? I experienced same thing... during modification the /etc/config/network file was deleted, and this was the last thing it was written. then it switched to read-only mode, and nothing can help it.
WRT54G v1.1, backfire 10.03.1-rc5 - brcm47xx, flashed with prebuilt image.
comment:19 Changed 6 years ago by fabien@…
Just reconfirmed on my WRT54G v1.1 on RC5. Same messages in dmesg, filesystem changes do not persist across reboots.
comment:20 Changed 6 years ago by sharntehnub@…
Also confirmed on WRT54G v1.1, backfire 10.03.1-rc5, brcm-47xx.
Same logs for me as well. Same version of backfire-brcm-2.4 and kamikaze 8.09.2-brcm2.4 boots and restores fine but doesn't seem to have any sort of wireless support at all.
Is there any motivation for fixing this? Or maybe a way of adding an mmc-sd card to bypass the problem?
comment:21 Changed 6 years ago by clemens-john@…
Also confirmed on WRT54G v2.2 Backfire r28601 Kernel 2.6 brcm47xx.
root@OpenWrt:~# dmesg | grep jff Kernel command line: root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200 jffs2: Too few erase blocks (3)
root@OpenWrt:~# df -h Filesystem Size Used Available Use% Mounted on /dev/root 2.8M 2.8M 0 100% /rom tmpfs 6.6M 160.0K 6.4M 2% /tmp tmpfs 512.0K 0 512.0K 0% /dev root 6.6M 84.0K 6.5M 1% /tmp/root mini_fo:/tmp/root 2.8M 2.8M 0 100% /
I would be happy if anyone could fix this.
comment:22 Changed 6 years ago by jow
clemens-john, your issue is completely unrelated - your image is simply too big.
comment:23 Changed 6 years ago by nbd
how about rc6 - is it still reproducible there?
comment:24 Changed 6 years ago by Tim Miller Dyck <tim@…>
I tried OpenWrt 10.03.1-rc6 on a Linksys WRT54g ver. 1.1 router (4 MB flash).
I had the same problems as above with the jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found error messages in syslog. In LuCI, it gets stuck forever at the applying settings wait graphic.
I tried both the "brcm-2.4" and "brcm47xx" versions of 10.03.1-rc6 but both had the same behavior.
Then I found "Linksys WRT54G v1.1 default after reboot", https://forum.openwrt.org/viewtopic.php?id=28223 and saw the suggestion to use kamikaze.
I flashed back to OpenWrt 8.09 r14511 brcm-2.4 at http://downloads.openwrt.org/kamikaze/8.09/brcm-2.4/openwrt-brcm-2.4-squashfs.trx and that is working fine on this hardware.
I will add a note to the OpenWrt Linksys wiki page saying this Linksys model has trouble with Backfire right now.
Regards,
Tim Miller Dyck
comment:25 Changed 4 years ago by jow
- Milestone changed from Backfire 10.03.2 to Chaos Calmer (trunk)
Milestone Backfire 10.03.2 deleted
I have the same problem with my linksys wrt54g v1.1
Looking at the kernel logs of jffs2_scan_eraseblock() it seems like the data cannot be read correctly from the flash. As far as I remember the 0x1985 magic bitmask WAS there - checked by dumping the partition.