mmc kernel driver errors on BBB

Discussion about U-Boot and the kernel.

mmc kernel driver errors on BBB

Postby MTA » Mon Oct 19, 2015 12:04 pm

Hi

I've been having an issue with Arch Linux kernel 4.2.0 and upwards on BBB. Basically, errors in writing to mmc when many files are written consecutively on the mmc card or the BBB emmc onboard storage. The issue has been persistent till 4.2.3-1 ARCH.

To reproduce it, you can issue any command that requests bulk file write operation, for instance:
1- pacman -S opencv on a newly installed system, issue happens due to rapid installation of many dependencies.
2- untar the rootfs image on the BBB onboard emmc.

However, the issue has not been observed when doing bulk file read and a single file write, as the case of archiving the whole rootfs into a single file (rootfs.tar.gz), which I've done several times successfully.

I have tried 3 different SD cards with no luck, and I couldn't find a reference of this issue recently on the web. I appreciate your help on this matter. Below are some of the kernel messages I get when the problem happens.

Cheers,

MTA

$this->bbcode_second_pass_code('', '
Oct 08 19:40:00 alarm kernel: mmcqd/0: page allocation failure: order:4, mode:0xc020
Oct 08 19:40:00 alarm kernel: CPU: 0 PID: 74 Comm: mmcqd/0 Not tainted 4.2.3-1-ARCH #1
Oct 08 19:40:00 alarm kernel: Hardware name: Generic AM33XX (Flattened Device Tree)
Oct 08 19:40:00 alarm kernel: [<c001704c>] (unwind_backtrace) from [<c0014224>] (show_stack+0x20/0x24)
Oct 08 19:40:00 alarm kernel: [<c0014224>] (show_stack) from [<c08b5eb8>] (dump_stack+0x24/0x28)
Oct 08 19:40:00 alarm kernel: [<c08b5eb8>] (dump_stack) from [<c01222d8>] (warn_alloc_failed+0xec/0x128)
Oct 08 19:40:00 alarm kernel: [<c01222d8>] (warn_alloc_failed) from [<c01253e4>] (__alloc_pages_nodemask+0x778/0x8f4)
Oct 08 19:40:04 alarm kernel: [<c01253e4>] (__alloc_pages_nodemask) from [<c01257a4>] (alloc_kmem_pages+0x40/0x110)
Oct 08 19:40:04 alarm kernel: [<c01257a4>] (alloc_kmem_pages) from [<c013e5d8>] (kmalloc_order+0x20/0x38)
Oct 08 19:40:04 alarm kernel: [<c013e5d8>] (kmalloc_order) from [<c013e61c>] (kmalloc_order_trace+0x2c/0x94)
Oct 08 19:40:04 alarm kernel: [<c013e61c>] (kmalloc_order_trace) from [<c0164644>] (__kmalloc+0x1e8/0x24c)
Oct 08 19:40:04 alarm kernel: [<c0164644>] (__kmalloc) from [<c04ff1c8>] (edma_prep_slave_sg+0xa4/0x2fc)
Oct 08 19:40:04 alarm kernel: [<c04ff1c8>] (edma_prep_slave_sg) from [<c07179b8>] (omap_hsmmc_request+0x430/0x528)
Oct 08 19:40:04 alarm kernel: [<c07179b8>] (omap_hsmmc_request) from [<c06fa758>] (__mmc_start_request+0x3c/0x58)
Oct 08 19:40:04 alarm kernel: [<c06fa758>] (__mmc_start_request) from [<c06fa8d4>] (mmc_start_request+0x160/0x298)
Oct 08 19:40:04 alarm kernel: [<c06fa8d4>] (mmc_start_request) from [<c06fb640>] (mmc_start_req+0x29c/0x3c8)
Oct 08 19:40:04 alarm kernel: [<c06fb640>] (mmc_start_req) from [<c070bd64>] (mmc_blk_issue_rw_rq+0xb8/0xaac)
Oct 08 19:40:04 alarm kernel: [<c070bd64>] (mmc_blk_issue_rw_rq) from [<c070c9b4>] (mmc_blk_issue_rq+0x25c/0x4ec)
Oct 08 19:40:04 alarm kernel: [<c070c9b4>] (mmc_blk_issue_rq) from [<c070d3ec>] (mmc_queue_thread+0xa8/0x170)
Oct 08 19:40:04 alarm kernel: [<c070d3ec>] (mmc_queue_thread) from [<c0065a08>] (kthread+0xe4/0xfc)
Oct 08 19:40:04 alarm kernel: [<c0065a08>] (kthread) from [<c0010588>] (ret_from_fork+0x14/0x2c)
Oct 08 19:40:04 alarm kernel: Mem-Info:
Oct 08 19:40:04 alarm kernel: active_anon:11256 inactive_anon:22 isolated_anon:0
Oct 08 19:40:04 alarm kernel: Normal free:11088kB min:2836kB low:3544kB high:4252kB active_anon:45024kB inactive_anon:88kB active_file:191708kB inactive_file:196140kB unevictable:0kB isolated(anon):0kB isolated(file):0kB present:524288kB managed:504292kB mlocked:0kB dirty:22324kB writeback:19160kB mapped:24032kB shmem:212kB slab_reclaimable:41364kB slab_unreclaimable:9500kB kernel_stack:512kB pagetables:664kB unstable:0kB bounce:0kB free_pcp:252kB local_pcp:252kB free_cma:7136kB writeback_tmp:0kB pages_scanned:0 all_unreclaimable? no
Oct 08 19:40:04 alarm kernel: lowmem_reserve[]: 0 0 0
Oct 08 19:40:04 alarm kernel: Normal: 38*4kB (U) 153*8kB (U) 269*16kB (UEC) 155*32kB (C) 7*64kB (C) 0*128kB 0*256kB 0*512kB 0*1024kB 0*2048kB 0*4096kB 0*8192kB = 11088kB
Oct 08 19:40:04 alarm kernel: 97016 total pagecache pages
Oct 08 19:40:04 alarm kernel: 0 pages in swap cache
Oct 08 19:40:04 alarm kernel: Swap cache stats: add 0, delete 0, find 0/0
Oct 08 19:40:04 alarm kernel: Free swap = 0kB
Oct 08 19:40:04 alarm kernel: Total swap = 0kB
Oct 08 19:40:04 alarm kernel: 131072 pages RAM
Oct 08 19:40:04 alarm kernel: 0 pages HighMem/MovableOnly
Oct 08 19:40:04 alarm kernel: 4294966151 pages reserved
Oct 08 19:40:04 alarm kernel: 6144 pages cma reserved
Oct 08 19:40:04 alarm kernel: edma-dma-engine edma-dma-engine.0: edma_prep_slave_sg: Failed to allocate a descriptor
Oct 08 19:40:04 alarm kernel: omap_hsmmc 48060000.mmc: prep_slave_sg() failed
Oct 08 19:40:04 alarm kernel: omap_hsmmc 48060000.mmc: MMC start dma failure
Oct 08 19:40:04 alarm kernel: mmcblk0: unknown error -1 sending read/write command, card status 0x900
Oct 08 19:40:04 alarm kernel: mmc0: tried to reset card
Oct 08 19:40:04 alarm kernel: mmcqd/0: page allocation failure: order:4, mode:0xc020
Oct 08 19:40:04 alarm kernel: CPU: 0 PID: 74 Comm: mmcqd/0 Not tainted 4.2.3-1-ARCH #1
Oct 08 19:40:04 alarm kernel: Hardware name: Generic AM33XX (Flattened Device Tree)
Oct 08 19:40:04 alarm kernel: [<c001704c>] (unwind_backtrace) from [<c0014224>] (show_stack+0x20/0x24)
Oct 08 19:40:04 alarm kernel: [<c0014224>] (show_stack) from [<c08b5eb8>] (dump_stack+0x24/0x28)
Oct 08 19:40:04 alarm kernel: [<c08b5eb8>] (dump_stack) from [<c01222d8>] (warn_alloc_failed+0xec/0x128)
Oct 08 19:40:04 alarm kernel: [<c01222d8>] (warn_alloc_failed) from [<c01253e4>] (__alloc_pages_nodemask+0x778/0x8f4)
Oct 08 19:40:04 alarm kernel: [<c01253e4>] (__alloc_pages_nodemask) from [<c01257a4>] (alloc_kmem_pages+0x40/0x110)
Oct 08 19:40:04 alarm kernel: [<c01257a4>] (alloc_kmem_pages) from [<c013e5d8>] (kmalloc_order+0x20/0x38)
Oct 08 19:40:04 alarm kernel: [<c013e5d8>] (kmalloc_order) from [<c013e61c>] (kmalloc_order_trace+0x2c/0x94)
Oct 08 19:40:04 alarm kernel: [<c013e61c>] (kmalloc_order_trace) from [<c0164644>] (__kmalloc+0x1e8/0x24c)
Oct 08 19:40:04 alarm kernel: [<c0164644>] (__kmalloc) from [<c04ff1c8>] (edma_prep_slave_sg+0xa4/0x2fc)
Oct 08 19:40:04 alarm kernel: [<c04ff1c8>] (edma_prep_slave_sg) from [<c07179b8>] (omap_hsmmc_request+0x430/0x528)
Oct 08 19:40:04 alarm kernel: [<c07179b8>] (omap_hsmmc_request) from [<c06fa758>] (__mmc_start_request+0x3c/0x58)
Oct 08 19:40:04 alarm kernel: [<c06fa758>] (__mmc_start_request) from [<c06fa8d4>] (mmc_start_request+0x160/0x298)
Oct 08 19:40:04 alarm kernel: [<c06fa8d4>] (mmc_start_request) from [<c06fb640>] (mmc_start_req+0x29c/0x3c8)
Oct 08 19:40:04 alarm kernel: [<c06fb640>] (mmc_start_req) from [<c070c018>] (mmc_blk_issue_rw_rq+0x36c/0xaac)
Oct 08 19:40:04 alarm kernel: [<c070c018>] (mmc_blk_issue_rw_rq) from [<c070c9b4>] (mmc_blk_issue_rq+0x25c/0x4ec)
Oct 08 19:40:04 alarm kernel: [<c070c9b4>] (mmc_blk_issue_rq) from [<c070d3ec>] (mmc_queue_thread+0xa8/0x170)
Oct 08 19:40:04 alarm kernel: [<c070d3ec>] (mmc_queue_thread) from [<c0065a08>] (kthread+0xe4/0xfc)
Oct 08 19:40:04 alarm kernel: [<c0065a08>] (kthread) from [<c0010588>] (ret_from_fork+0x14/0x2c)
Oct 08 19:40:04 alarm kernel: Mem-Info:
Oct 08 19:40:04 alarm kernel: active_anon:9207 inactive_anon:22 isolated_anon:0
Oct 08 19:40:04 alarm kernel: Normal free:12220kB min:2836kB low:3544kB high:4252kB active_anon:36828kB inactive_anon:88kB active_file:192348kB inactive_file:195680kB unevictable:0kB isolated(anon):0kB isolated(file):0kB present:524288kB managed:504292kB mlocked:0kB dirty:4kB writeback:45336kB mapped:24036kB shmem:212kB slab_reclaimable:41756kB slab_unreclaimable:15816kB kernel_stack:520kB pagetables:648kB unstable:0kB bounce:0kB free_pcp:444kB local_pcp:444kB free_cma:7012kB writeback_tmp:0kB pages_scanned:0 all_unreclaimable? no
Oct 08 19:40:04 alarm kernel: lowmem_reserve[]: 0 0 0
Oct 08 19:40:04 alarm kernel: Normal: 59*4kB (EMC) 24*8kB (UMC) 399*16kB (UEMC) 155*32kB (C) 7*64kB (C) 0*128kB 0*256kB 0*512kB 0*1024kB 0*2048kB 0*4096kB 0*8192kB = 12220kB
Oct 08 19:40:04 alarm kernel: 97059 total pagecache pages
Oct 08 19:40:04 alarm kernel: 0 pages in swap cache
Oct 08 19:40:04 alarm kernel: Swap cache stats: add 0, delete 0, find 0/0
Oct 08 19:40:04 alarm kernel: Free swap = 0kB
Oct 08 19:40:04 alarm kernel: Total swap = 0kB
Oct 08 19:40:04 alarm kernel: 131072 pages RAM
Oct 08 19:40:04 alarm kernel: 0 pages HighMem/MovableOnly
Oct 08 19:40:04 alarm kernel: 4294966151 pages reserved
Oct 08 19:40:04 alarm kernel: 6144 pages cma reserved
Oct 08 19:40:04 alarm kernel: edma-dma-engine edma-dma-engine.0: edma_prep_slave_sg: Failed to allocate a descriptor
Oct 08 19:40:04 alarm kernel: omap_hsmmc 48060000.mmc: prep_slave_sg() failed
Oct 08 19:40:04 alarm kernel: omap_hsmmc 48060000.mmc: MMC start dma failure
Oct 08 19:40:04 alarm kernel: mmcblk0: unknown error -1 sending read/write command, card status 0x900
Oct 08 19:40:04 alarm kernel: blk_update_request: I/O error, dev mmcblk0, sector 5173832
Oct 08 19:40:04 alarm kernel: EXT4-fs warning (device mmcblk0p2): ext4_end_bio:332: I/O error -5 writing to inode 144625 (offset 0 size 4096 starting block 646730)
Oct 08 19:40:04 alarm kernel: Buffer I/O error on device mmcblk0p2, logical block 620617
Oct 08 19:40:04 alarm kernel: blk_update_request: I/O error, dev mmcblk0, sector 5173840
Oct 08 19:40:04 alarm kernel: blk_update_request: I/O error, dev mmcblk0, sector 5173848
Oct 08 19:40:04 alarm kernel: EXT4-fs warning (device mmcblk0p2): ext4_end_bio:332: I/O error -5 writing to inode 144603 (offset 0 size 8192 starting block 646732)
Oct 08 19:40:04 alarm kernel: Buffer I/O error on device mmcblk0p2, logical block 620618
Oct 08 19:40:04 alarm kernel: Buffer I/O error on device mmcblk0p2, logical block 620619
Oct 08 19:40:04 alarm kernel: blk_update_request: I/O error, dev mmcblk0, sector 5173856
Oct 08 19:40:04 alarm kernel: blk_update_request: I/O error, dev mmcblk0, sector 5173864
Oct 08 19:40:04 alarm kernel: blk_update_request: I/O error, dev mmcblk0, sector 5173872
Oct 08 19:40:04 alarm kernel: blk_update_request: I/O error, dev mmcblk0, sector 5173880
Oct 08 19:40:04 alarm kernel: EXT4-fs warning (device mmcblk0p2): ext4_end_bio:332: I/O error -5 writing to inode 144601 (offset 0 size 16384 starting block 646736)
Oct 08 19:40:04 alarm kernel: Buffer I/O error on device mmcblk0p2, logical block 620620
Oct 08 19:40:04 alarm kernel: Buffer I/O error on device mmcblk0p2, logical block 620621
Oct 08 19:40:04 alarm kernel: Buffer I/O error on device mmcblk0p2, logical block 620622
Oct 08 19:40:04 alarm kernel: Buffer I/O error on device mmcblk0p2, logical block 620623
Oct 08 19:40:04 alarm kernel: blk_update_request: I/O error, dev mmcblk0, sector 5173888
Oct 08 19:40:04 alarm kernel: blk_update_request: I/O error, dev mmcblk0, sector 5173896
Oct 08 19:40:04 alarm kernel: blk_update_request: I/O error, dev mmcblk0, sector 5173904
Oct 08 19:40:04 alarm kernel: EXT4-fs warning (device mmcblk0p2): ext4_end_bio:332: I/O error -5 writing to inode 144604 (offset 0 size 12288 starting block 646739)
Oct 08 19:40:04 alarm kernel: Buffer I/O error on device mmcblk0p2, logical block 620624
Oct 08 19:40:04 alarm kernel: Buffer I/O error on device mmcblk0p2, logical block 620625
Oct 08 19:40:04 alarm kernel: Buffer I/O error on device mmcblk0p2, logical block 620626
Oct 08 19:40:04 alarm kernel: EXT4-fs warning (device mmcblk0p2): ext4_end_bio:332: I/O error -5 writing to inode 144605 (offset 0 size 12288 starting block 646742)
Oct 08 19:40:04 alarm kernel: EXT4-fs warning (device mmcblk0p2): ext4_end_bio:332: I/O error -5 writing to inode 144620 (offset 0 size 8192 starting block 646744)
Oct 08 19:40:04 alarm kernel: EXT4-fs warning (device mmcblk0p2): ext4_end_bio:332: I/O error -5 writing to inode 144606 (offset 0 size 32768 starting block 646752)
Oct 08 19:40:04 alarm kernel: EXT4-fs warning (device mmcblk0p2): ext4_end_bio:332: I/O error -5 writing to inode 144602 (offset 0 size 131072 starting block 646784)
Oct 08 19:40:04 alarm kernel: EXT4-fs warning (device mmcblk0p2): ext4_end_bio:332: I/O error -5 writing to inode 144607 (offset 0 size 36864 starting block 646793)
Oct 08 19:40:04 alarm kernel: EXT4-fs warning (device mmcblk0p2): ext4_end_bio:332: I/O error -5 writing to inode 144609 (offset 0 size 20480 starting block 646798)
')
MTA
 
Posts: 2
Joined: Mon Oct 19, 2015 11:45 am

Re: mmc kernel driver errors on BBB

Postby WarheadsSE » Mon Oct 19, 2015 2:35 pm

Core Developer
Remember: Arch Linux ARM is entirely community donation supported!
WarheadsSE
Developer
 
Posts: 6807
Joined: Mon Oct 18, 2010 2:12 pm

Re: mmc kernel driver errors on BBB

Postby MTA » Wed Oct 21, 2015 2:39 pm

Thanks a lot!

Your hint has indeed solved the issue. I just took some time to make sure it does.

Cheers

MTA
MTA
 
Posts: 2
Joined: Mon Oct 19, 2015 11:45 am


Return to U-Boot/Kernel

Who is online

Users browsing this forum: No registered users and 12 guests