https://bugzilla.kernel.org/show_bug.cgi?id=201911

            Bug ID: 201911
           Summary: High frequency of gc cause application database
                    corrupt
           Product: File System
           Version: 2.5
    Kernel Version: 4.9
          Hardware: ARM
                OS: Linux
              Tree: Mainline
            Status: NEW
          Severity: high
          Priority: P1
         Component: f2fs
          Assignee: filesystem_f...@kernel-bugs.kernel.org
          Reporter: liu_shuang_...@163.com
        Regression: No

Hello, 

Android phone with kernel 4.9, f2fs version based on 2018-06-04 version with
commit description "f2fs: run fstrim asynchronously if runtime discard is on",

fill 2G space totaly, with a 4K small file each, and then delete 1G,

set gc_urgent_sleep_time to 300, and gc_urgent to 1.

then do monkey test,

40% cause application database corrupt, below is main log error info: 

----------------------------------------
11-25 21:42:27.874 21412 21412 W System.err: Application uncaught exception in
thread "main" com.tencent.wcdb.database.SQLiteDatabaseCorruptException:
database disk image is malformed (code 11, errno 0): 
11-25 21:42:27.874 21412 21412 W System.err:    at
com.tencent.wcdb.database.SQLiteConnection.nativeExecuteForLastInsertedRowId(Native
Method)
11-25 21:42:27.874 21412 21412 W System.err:    at
com.tencent.wcdb.database.SQLiteConnection.executeForLastInsertedRowId(SourceFile:887)
11-25 21:42:27.874 21412 21412 W System.err:    at
com.tencent.wcdb.database.SQLiteSession.executeForLastInsertedRowId(SourceFile:742)
11-25 21:42:27.874 21412 21412 W System.err:    at
com.tencent.wcdb.database.SQLiteStatement.executeInsert(SourceFile:127)
11-25 21:42:27.874 21412 21412 W System.err:    at
com.tencent.wcdb.database.SQLiteStatement.executeInsert(SourceFile:110)
11-25 21:42:27.874 21412 21412 W System.err:    at
com.tencent.wcdb.database.SQLiteDatabase.insertWithOnConflict(SourceFile:1678)
11-25 21:42:27.874 21412 21412 W System.err:    at
com.tencent.wcdb.database.SQLiteDatabase.insert(SourceFile:1528)
11-25 21:42:27.874 21412 21412 W System.err:    at
com.tencent.mm.cg.f.insert(SourceFile:645)
11-25 21:42:27.874 21412 21412 W System.err:    at
com.tencent.mm.cg.h.a(SourceFile:561)
11-25 21:42:27.874 21412 21412 W System.err:    at
com.tencent.mm.storage.bj.b(SourceFile:1583)
11-25 21:42:27.874 21412 21412 W System.err:    at
com.tencent.mm.modelmulti.h.<init>(SourceFile:120)
11-25 21:42:27.874 21412 21412 W System.err:    at
com.tencent.mm.ui.chatting.b.ah$1.run(SourceFile:176)
11-25 21:42:27.874 21412 21412 W System.err:    at
com.tencent.mm.sdk.platformtools.ao.run(SourceFile:127)
11-25 21:42:27.874 21412 21412 W System.err:    at
android.os.Handler.handleCallback(Handler.java:873)
11-25 21:42:27.874 21412 21412 W System.err:    at
android.os.Handler.dispatchMessage(Handler.java:99)
11-25 21:42:27.874 21412 21412 W System.err:    at
com.tencent.mm.sdk.platformtools.aj.dispatchMessage(SourceFile:122)
11-25 21:42:27.874 21412 21412 W System.err:    at
android.os.Looper.loop(Looper.java:217)
11-25 21:42:27.874 21412 21412 W System.err:    at
android.app.ActivityThread.main(ActivityThread.java:7351)
11-25 21:42:27.874 21412 21412 W System.err:    at
java.lang.reflect.Method.invoke(Native Method)
11-25 21:42:27.874 21412 21412 W System.err:    at
com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:499)
11-25 21:42:27.874 21412 21412 W System.err:    at
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:865)

----------------------------------------

in comparison, if decrease gc frequency, the corrupt frequency also decreased.

-- 
You are receiving this mail because:
You are watching the assignee of the bug.

_______________________________________________
Linux-f2fs-devel mailing list
Linux-f2fs-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel

Reply via email to