kjournald stuck in DW< state

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello,

I am working on an embedded device that uses kernel 2.6.21 and ARM CPU.
The device has SDHC card with two partitions. One partition is formatted with Ext3. The other partition is formatted with FAT32 and most of the time is not mounted at all (not used).
The Ext3 partition is mounted with datamode=ordered.

The problem I am experiencing is that occasionally kjournald seems to block and as a result all access to the Ext3 partition stops.
It looks like this happens when sync() is called from an application. Some of the applications that run on the device write to log files on the Ext3 partition. Every write is usually less than 100 bytes and looks something like that:
fopen();
fprintf() - one or more times
fclose();
sync();

For example here is the output from SysRq-t:

kjournald     D C0284784     0   408      6 (L-TLB)
[<c0284240>] (schedule+0x0/0x64c) from [<c00f8724>] (journal_commit_transaction+0x16c/0x1568)
[<c00f85b8>] (journal_commit_transaction+0x0/0x1568) from [<c00fd99c>] (kjournald+0xbc/0x260)
[<c00fd8e0>] (kjournald+0x0/0x260) from [<c0070d9c>] (kthread+0xe8/0x128)
[<c0070cb4>] (kthread+0x0/0x128) from [<c005d980>] (do_exit+0x0/0x8c8)

Everytime the problem happens, kjournald is stuck in journal_commit_transaction.

I am trying to figure out what is causing this and to fix it (one way or another).

Searching on Internet revealed that fsync() and Ext3 will actually sync everything. This is not a problem in my case, as long as everything continues normally after that.
Also, performance related issues other people reported are not real problems in my case.

Any help is appreciated.

Thanks,

Dimitar

_______________________________________________
Ext3-users mailing list
Ext3-users@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/ext3-users

[Index of Archives]         [Linux RAID]     [Kernel Development]     [Red Hat Install]     [Video 4 Linux]     [Postgresql]     [Fedora]     [Gimp]     [Yosemite News]

  Powered by Linux