AnsweredAssumed Answered

Kernel failing to mount root file system during boot

Question asked by Adam Beard on May 2, 2014
Latest reply on May 3, 2014 by Adam Beard

I am using an Olimex iMX233 Micro board, booting off of micro-SD card.  I have a self-built u-boot that seems to read the card fine and get the self-configured and built kernel (3.14-rc2 from kernel.org git).  The kernel hangs when trying to mount the root filesystem on the SD card that u-boot finds at /dev/mmcblk0p2.  The root filesystem is in ext4 format.

 

Card formatting:

$ fdisk -l /dev/sdb

Disk /dev/sdb: 15.9 GB, 15931539456 bytes

64 heads, 32 sectors/track, 15193 cylinders, total 31116288 sectors

Units = sectors of 1 * 512 = 512 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk identifier: 0x00000000

   Device Boot      Start         End      Blocks   Id  System

/dev/sdb1   *          32       65535       32752   53  OnTrack DM6 Aux3

/dev/sdb2   *       65536    31115263    15524864   83  Linux

 

Boot console output:

HTLLCLC

 

 

U-Boot 2013.04-dirty (May 02 2014 - 20:16:50)

 

 

CPU:   Freescale i.MX23 rev1.4 at 454 MHz

BOOT:  SSP SD/MMC #0

DRAM:  64 MiB

MMC:   MXS MMC: 0

*** Warning - bad CRC, using default environment

 

 

In:    serial

Out:   serial

Err:   serial

Net:   Net Initialization Skipped

No ethernet found.

Hit any key to stop autoboot:  0

mmc0 is current device

SD/MMC found on device 0

428 bytes read in 101 ms (3.9 KiB/s)

Importing environment from mmc (uEnv.txt)...

Running default loadzimage ...

3652704 bytes read in 1163 ms (3 MiB/s)

9848 bytes read in 99 ms (96.7 KiB/s)

Booting from mmc ...

## Flattened Device Tree blob at 41000000

   Booting using the fdt blob at 0x41000000

   Loading Device Tree to 43b67000, end 43b6c677 ... OK

 

Starting kernel ...

 

[    0.000000] Booting Linux on physical CPU 0x0

[    0.000000] Linux version 3.14.0-rc2-dirty (adam@chewie) (gcc version 4.7.3 20130314

[    0.000000] CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00053177

[    0.000000] CPU: VIVT data cache, VIVT instruction cache

[    0.000000] Machine model: i.MX23 Olinuxino Low Cost Board

[    0.000000] Memory policy: Data cache writeback

[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 166

[    0.000000] Kernel command line: console=ttyAMA0,115200 root=/dev/mmcblk0p2 rw rootc

[    0.000000] PID hash table entries: 256 (order: -2, 1024 bytes)

[    0.000000] Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)

[    0.000000] Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)

[    0.000000] Memory: 52092K/65536K available (4903K kernel code, 301K rwdata, 1796K )

[    0.000000] Virtual kernel memory layout:

[    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)

[    0.000000]     fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)

[    0.000000]     vmalloc : 0xc4800000 - 0xff000000   ( 936 MB)

[    0.000000]     lowmem  : 0xc0000000 - 0xc4000000   (  64 MB)

[    0.000000]     modules : 0xbf000000 - 0xc0000000   (  16 MB)

[    0.000000]       .text : 0xc0008000 - 0xc0693364   (6701 kB)

[    0.000000]       .init : 0xc0694000 - 0xc06ce4f4   ( 234 kB)

[    0.000000]       .data : 0xc06d0000 - 0xc071b788   ( 302 kB)

[    0.000000]        .bss : 0xc071b788 - 0xc0c7f178   (5519 kB)

[    0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1

[    0.000000] NR_IRQS:16 nr_irqs:16 16

[    0.000000] of_irq_init: children remain, but no parents

[    0.000000] sched_clock: 32 bits at 100 Hz, resolution 10000000ns, wraps every 2147s

[    0.000000] Console: colour dummy device 80x30

[    0.000000] Lock dependency validator: Copyright (c) 2006 Red Hat, Inc., Ingo Molnar

[    0.000000] ... MAX_LOCKDEP_SUBCLASSES:  8

[    0.000000] ... MAX_LOCK_DEPTH:          48

[    0.000000] ... MAX_LOCKDEP_KEYS:        8191

[    0.000000] ... CLASSHASH_SIZE:          4096

[    0.000000] ... MAX_LOCKDEP_ENTRIES:     16384

[    0.000000] ... MAX_LOCKDEP_CHAINS:      32768

[    0.000000] ... CHAINHASH_SIZE:          16384

[    0.000000]  memory used by lock dependency info: 3695 kB

[    0.000000]  per task-struct memory footprint: 1152 bytes

[    0.070000] Calibrating delay loop... 226.09 BogoMIPS (lpj=1130496)

[    0.070000] pid_max: default: 32768 minimum: 301

[    0.070000] Mount-cache hash table entries: 512

[    0.070000] CPU: Testing write buffer coherency: ok

[    0.080000] Setting up static identity map for 0x404a8ed8 - 0x404a8f30

[    0.100000] devtmpfs: initialized

[    0.110000] pinctrl core: initialized pinctrl subsystem

[    0.120000] regulator-dummy: no parameters

[    0.120000] NET: Registered protocol family 16

[    0.120000] DMA: preallocated 256 KiB pool for atomic coherent allocations

[    0.180000] Serial: AMBA PL011 UART driver

[    0.190000] 80070000.serial: ttyAMA0 at MMIO 0x80070000 (irq = 17, base_baud = 0) i2

[    0.370000] console [ttyAMA0] enabled

[    0.420000] bio: create slab <bio-0> at 0

[    0.440000] mxs-dma 80004000.dma-apbh: initialized

[    0.450000] mxs-dma 80024000.dma-apbx: initialized

[    0.460000] usb0_vbus: 5000 mV

[    0.460000] SCSI subsystem initialized

[    0.470000] usbcore: registered new interface driver usbfs

[    0.470000] usbcore: registered new interface driver hub

[    0.480000] usbcore: registered new device driver usb

[    0.490000] pps_core: LinuxPPS API ver. 1 registered

[    0.490000] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <g>

[    0.500000] PTP clock support registered

[    0.510000] Switched to clocksource mxs_timer

[    0.510000] BUG: spinlock bad magic on CPU#0, swapper/1

[    0.520000]  lock: 0xc300e4b4, .magic: dead00ad, .owner: <none>/-1, .owner_cpu: -1

[    0.520000] CPU: 0 PID: 1 Comm: swapper Not tainted 3.14.0-rc2-dirty #5

[    0.530000] [<c000da10>] (unwind_backtrace) from [<c000be20>] (show_stack+0x10/0x14)

[    0.540000] [<c000be20>] (show_stack) from [<c004d74c>] (do_raw_spin_lock+0x70/0x14)

[    0.550000] [<c004d74c>] (do_raw_spin_lock) from [<c00e520c>] (__d_instantiate+0x24)

[    0.550000] [<c00e520c>] (__d_instantiate) from [<c00f5690>] (simple_lookup+0x38/0x)

[    0.560000] [<c00f5690>] (simple_lookup) from [<c00daf8c>] (lookup_real+0x20/0x50)

[    0.570000] [<c00daf8c>] (lookup_real) from [<c00dbf98>] (__lookup_hash+0x34/0x44)

[    0.580000] [<c00dbf98>] (__lookup_hash) from [<c00e05e4>] (lookup_one_len+0xe8/0x1)

[    0.590000] [<c00e05e4>] (lookup_one_len) from [<c0237d10>] (__create_file+0x68/0x1)

[    0.590000] [<c0237d10>] (__create_file) from [<c007a25c>] (trace_create_file+0x18/)

[    0.600000] [<c007a25c>] (trace_create_file) from [<c007a3c0>] (init_tracer_debugfs)

[    0.610000] [<c007a3c0>] (init_tracer_debugfs) from [<c069da7c>] (tracer_init_debug)

[    0.620000] [<c069da7c>] (tracer_init_debugfs) from [<c0008920>] (do_one_initcall+0)

[    0.630000] [<c0008920>] (do_one_initcall) from [<c0694b04>] (kernel_init_freeable+)

[    0.640000] [<c0694b04>] (kernel_init_freeable) from [<c049e454>] (kernel_init+0x8/)

[    0.650000] [<c049e454>] (kernel_init) from [<c00095c0>] (ret_from_fork+0x14/0x34)

[    0.830000] NET: Registered protocol family 2

[    0.840000] TCP established hash table entries: 1024 (order: 0, 4096 bytes)

[    0.850000] TCP bind hash table entries: 1024 (order: 3, 36864 bytes)

[    0.860000] TCP: Hash tables configured (established 1024 bind 1024)

[    0.860000] TCP: reno registered

[    0.870000] UDP hash table entries: 256 (order: 2, 20480 bytes)

[    0.870000] UDP-Lite hash table entries: 256 (order: 2, 20480 bytes)

[    0.880000] NET: Registered protocol family 1

[    0.890000] RPC: Registered named UNIX socket transport module.

[    0.890000] RPC: Registered udp transport module.

[    0.900000] RPC: Registered tcp transport module.

[    0.900000] RPC: Registered tcp NFSv4.1 backchannel transport module.

[    0.910000] futex hash table entries: 256 (order: 1, 10240 bytes)

[    0.980000] NFS: Registering the id_resolver key type

[    0.990000] Key type id_resolver registered

[    0.990000] Key type id_legacy registered

[    1.000000] jffs2: version 2.2. (NAND) © 2001-2006 Red Hat, Inc.

[    1.010000] msgmni has been set to 101

[    1.020000] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 249)

[    1.030000] io scheduler noop registered (default)

[    1.040000] of_dma_request_slave_channel: dma-names property of node '/apb@80000000y

[    1.050000] uart-pl011 80+-----------------------------+data

[    1.060000] 8006c000.seri|                             |(irq = 147, base_baud = 150l

[    1.070000] mxs-auart 800|  Cannot open /dev/ttyUSB0!  |.0

[    1.090000] loop: module |                             |

[    1.100000] mxs-spi 80034+-----------------------------+

[    1.110000] spi spi1.0: setup mode 0, 8 bits/w, 1000000 Hz max --> 0

[    1.120000] mxs-spi 80034000.ssp: registered child spi1.0

[    1.130000] usbcore: registered new interface driver rtl8150

[    1.140000] usbcore: registered new interface driver r8152

[    1.140000] usbcore: registered new interface driver asix

[    1.150000] usbcore: registered new interface driver ax88179_178a

[    1.150000] usbcore: registered new interface driver cdc_ether

[    1.160000] usbcore: registered new interface driver r815x

[    1.170000] usbcore: registered new interface driver smsc95xx

[    1.170000] usbcore: registered new interface driver net1080

[    1.180000] usbcore: registered new interface driver cdc_subset

[    1.190000] usbcore: registered new interface driver zaurus

[    1.190000] usbcore: registered new interface driver cdc_ncm

[    1.200000] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver

[    1.210000] usbcore: registered new interface driver usb-storage

[    1.210000] usbcore: registered new interface driver usbserial

[    1.230000] stmp3xxx-rtc 8005c000.rtc: rtc core: registered 8005c000.rtc as rtc0

[    1.240000] i2c /dev entries driver

[    1.240000] stmp3xxx_rtc_wdt stmp3xxx_rtc_wdt: initialized watchdog with heartbeat s

[    1.250000] 80010000.ssp supply vmmc not found, using dummy regulator

[    1.260000] mmc0: clock 0Hz busmode 2 powermode 1 cs 0 Vdd 21 width 0 timing 0

[    1.290000] mmc0: clock 400000Hz busmode 2 powermode 2 cs 0 Vdd 21 width 0 timing 0

[    1.310000] mxs-mmc 80010000.ssp: initialized

[    1.310000] mmc0: clock 0Hz busmode 1 powermode 0 cs 0 Vdd 0 width 0 timing 0

[    1.320000] usbcore: registered new interface driver usbhid

[    1.330000] usbhid: USB HID core driver

[    1.340000] ipip: IPv4 over IPv4 tunneling driver

[    1.350000] TCP: cubic registered

[    1.360000] NET: Registered protocol family 10

[    1.360000] sit: IPv6 over IPv4 tunneling driver

[    1.370000] NET: Registered protocol family 17

[    1.380000] Key type dns_resolver registered

[    1.380000] registered taskstats version 1

[    1.390000] stmp3xxx-rtc 8005c000.rtc: setting system clock to 1970-01-01 00:00:05 )

�[    1.410000] Waiting for root device /dev/mmcblk0p2...

 

I have a sinking suspicion that there is something in the kernel that is not configured properly, especially when seeing lines 1.250000 thru 1.310000.

 

Any help is greatly appreciated.  Thank you in advance.

Outcomes