linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: hzpeterchen@gmail.com (Peter Chen)
To: linux-arm-kernel@lists.infradead.org
Subject: Ext3 is supported not well at 2.6.28 for external SD card removal
Date: Mon, 19 Oct 2009 15:46:11 +0800	[thread overview]
Message-ID: <4ADC1943.1090306@gmail.com> (raw)
In-Reply-To: <200910190759.11591.marek.vasut@gmail.com>

Marek Vasut wrote:
> Dne Po 19. ??jna 2009 07:38:35 Peter Chen napsal(a):
>> Dear all,
>>
>> I find the kernel 2.6.28 is supported ext3 for SD card not well.
>> The external SD card is formatted with ext3, and when removal from
>> sd slot, it prints below ext3_abort msg. Such message isn't occurred at
>> Linux 2.6.23 and 2.6.27.
>>
>> mmc1: card d555 removed
>> mmcblk2: error -110 sending read/write command
>> mmcblk2: error -110 requesting status
>> end_request: I/O error, dev mmcblk2, sector 1576855
>> Buffer I/O error on device mmcblk2p1, logical block 197099
>> lost page write due to I/O error on mmcblk2p1
>> mmcblk2: error -110 sending read/write command
>> mmcblk2: error -110 requesting status
>> end_request: I/O error, dev mmcblk2, sector 1576863
>> Buffer I/O error on device mmcblk2p1, logical block 197100
>> lost page write due to I/O error on mmcblk2p1
>> Aborting journal on device mmcblk2p1.
>> ------------[ cut here ]------------
>> WARNING: at
>> /home/nchen/work/L28EVB/Dev/sirfa5cb_l28_alpha/kernel/fs/buffer.c:1195
>> mark_buffer_dirty+0x9c/0xb8()
>> Modules linked in: sirfsoc_wdt sirfsoc_uspserial g_ether g_usbdrv
>> ehci_hcd usbcore snd_soc_cb_modac_ts snd_soc_modac snd_soc_sirfsoc_i2s
>>  snd_s oc_ts_stream_mode snd_soc_sirfsoc snd_soc_core snd_pcm snd_timer snd
>>  soundcore snd_page_alloc sirfsoc_bl sirfsoc_fb cfbcopyarea cfbimgblt cfbf
>>  illrect
>> [<c008a8d8>] (dump_stack+0x0/0x14) from [<c009edfc>]
>> (warn_on_slowpath+0x4c/0x68)
>> [<c009edb0>] (warn_on_slowpath+0x0/0x68) from [<c011c1b0>]
>> (mark_buffer_dirty+0x9c/0xb8)
>>   r6:c0ad1000 r5:c0340970 r4:c349b7f0
>> [<c011c114>] (mark_buffer_dirty+0x0/0xb8) from [<c015b84c>]
>> (journal_update_superblock+0xcc/0x14c)
>>   r5:c3a319c0 r4:c38da000
>> [<c015b780>] (journal_update_superblock+0x0/0x14c) from [<c015ba84>]
>> (__journal_abort_soft+0xc8/0xd8)
>>   r7:c38da000 r6:fffffffb r5:c3a319c0 r4:c38da000
>> [<c015b9bc>] (__journal_abort_soft+0x0/0xd8) from [<c015baa4>]
>> (journal_abort+0x10/0x14)
>>   r6:c3493860 r5:fffffffb r4:c349b748
>> [<c015ba94>] (journal_abort+0x0/0x14) from [<c0158324>]
>> (journal_commit_transaction+0xa64/0x14a0)
>> [<c01578c0>] (journal_commit_transaction+0x0/0x14a0) from [<c015c6d8>]
>> (kjournald+0xc4/0x29c)
>> [<c015c614>] (kjournald+0x0/0x29c) from [<c00b5818>] (kthread+0x54/0x80)
>> [<c00b57c4>] (kthread+0x0/0x80) from [<c00a1ec8>] (do_exit+0x0/0x818)
>>   r5:00000000 r4:00000000
>> ---[ end trace 494b15a74f793f7d ]---
>> mmcblk2: error -110 sending read/write command
>> mmcblk2: error -110 requesting status
>> end_request: I/O error, dev mmcblk2, sector 1576855
>> Buffer I/O error on device mmcblk2p1, logical block 197099
>> lost page write due to I/O error on mmcblk2p1
>> journal commit I/O error
>> ext3_abort called.
>> EXT3-fs error (device mmcblk2p1): ext3_put_super: Couldn't clean up the
>> journal
>> Remounting filesystem read-only
>>
>> Besides, I find when system goes to suspend, when we remove sd card
>> after the system has already suspended. Then, press wakeup button, the
>> system can't wakeup. It sounds happens
>> deadlock at __fsync_super, which call stack likes below:
>> mmc_remove_card-->device_del-->mmc_blk_remove-->del_gendisk
>>
>> Such action is ok at Linux 2.6.23 and 2.6.27. And sd card with vfat at
>> 2.6.28 is ok.
>>
>> Does anyone know what happening for ext3 at 2.6.28 ( or from 2.6.28)?
>> Any solutions for such issue?
> 
> You popped the card out without unmounting the filesystem I guess ?
We don't execute umount at 2.6.27/23 either, and it has little error:
[   32.541208] Buffer I/O error on device mmcblk1p1, logical block 0
[   32.544784] lost page write due to I/O error on mmcblk1p1

Besides, the remove card is ok after suspend at 2.6.27 and 2.6.23.

Usually, the remove card(ext3) without umount is forbiddon or not?
I know the ext3 default is journal filesystem, and the write-back
execution is delayed 5 seconds.

>> Thank you!
>>
> 

-- 
Best regards,
Peter Chen

  parent reply	other threads:[~2009-10-19  7:46 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-10-19  5:38 Ext3 is supported not well at 2.6.28 for external SD card removal Peter Chen
2009-10-19  5:59 ` Marek Vasut
2009-10-19  6:12   ` tommy.hong
2009-10-19 13:38     ` Daniel Mack
2009-10-19 15:03     ` Russell King - ARM Linux
2009-10-20  5:34       ` Peter Chen
2009-10-20  7:33         ` Russell King - ARM Linux
2009-10-19  7:46   ` Peter Chen [this message]
2009-10-19  8:01     ` Uwe Kleine-König
2009-10-19  8:29       ` Peter Chen
2009-10-19 12:28         ` Steve Chen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4ADC1943.1090306@gmail.com \
    --to=hzpeterchen@gmail.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).