Hi,

I am running unionfs 2.6 on top of unionfs on kernel 3.8.13.

I have an RW layer on top of an RO layer, both are ubifs partitions.

I run into the same issue discussed in this thread
(http://www.fsl.cs.sunysb.edu/pipermail/unionfs/2014-May/006172.html)
even with unionfs 2.6 with the fix in place.

If I run the mmap-write on a bare ubifs it works as expected with no asserts.

Any insight as to what is missing or where I should look for solution
would be greatly appreciated.

My tree does include a patch for ubifs race condition
(http://permalink.gmane.org/gmane.linux.kernel.commits.head/461000).

These messages happen immediately when mmap-write is run.

[   29.666579] UBIFS assert failed in ubifs_set_page_dirty at 1420 (pid 890)
[   29.673611] Backtrace:
[   29.676186] [<c0011a58>] (dump_backtrace+0x0/0x10c) from
[<c04c6688>] (dump_stack+0x18/0x1c)
[   29.684905]  r6:cd4256fc r5:cd425700 r4:00000001 r3:60000013
[   29.690831] [<c04c6670>] (dump_stack+0x0/0x1c) from [<c01d8688>]
(ubifs_set_page_dirty+0x48/0x54)
[   29.700010] [<c01d8640>] (ubifs_set_page_dirty+0x0/0x54) from
[<c0095d9c>] (set_page_dirty+0x88/0x98)
[   29.709534]  r4:b6fbf000 r3:c01d8640
[   29.713272] [<c0095d14>] (set_page_dirty+0x0/0x98) from
[<c00a8f24>] (unmap_single_vma+0x4d4/0x584)
[   29.722622] [<c00a8a50>] (unmap_single_vma+0x0/0x584) from
[<c00a9818>] (unmap_vmas+0x5c/0x70)
[   29.731524] [<c00a97bc>] (unmap_vmas+0x0/0x70) from [<c00acf04>]
(unmap_region+0x9c/0x174)
[   29.740061]  r8:cf49ea80 r7:cfb649f8 r6:cf51e370 r5:cf51eb00 r4:cd433ec8
[   29.747072] [<c00ace68>] (unmap_region+0x0/0x174) from [<c00aed60>]
(do_munmap+0x218/0x36c)
[   29.755708] [<c00aeb48>] (do_munmap+0x0/0x36c) from [<c00aeef8>]
(vm_munmap+0x44/0x58)
[   29.763894] [<c00aeeb4>] (vm_munmap+0x0/0x58) from [<c00afcdc>]
(sys_munmap+0x24/0x28)
[   29.772072]  r7:0000005b r6:00000000 r5:00001000 r4:b6fbf000
[   29.777990] [<c00afcb8>] (sys_munmap+0x0/0x28) from [<c000e5c0>]
(ret_fast_syscall+0x0/0x30)
[   29.786707]  r5:bebfad08 r4:00000000

These happen a little later, I assume when page is flushed.

[   62.632424] UBIFS assert failed in ubifs_writepage at 1008 (pid 714)
[   62.639011] Backtrace:
[   62.641582] [<c0011a58>] (dump_backtrace+0x0/0x10c) from
[<c04c6688>] (dump_stack+0x18/0x1c)
[   62.650302]  r6:d04b6180 r5:c0866300 r4:cfbb2000 r3:60000013
[   62.656258] [<c04c6670>] (dump_stack+0x0/0x1c) from [<c01d9ccc>]
(ubifs_writepage+0x1f4/0x234)
[   62.665170] [<c01d9ad8>] (ubifs_writepage+0x0/0x234) from
[<c0095dc8>] (__writepage+0x1c/0x64)
[   62.674077] [<c0095dac>] (__writepage+0x0/0x64) from [<c0096a90>]
(write_cache_pages+0x20c/0x3e8)
[   62.683241]  r4:ffffffff r3:c0095dac
[   62.686980] [<c0096884>] (write_cache_pages+0x0/0x3e8) from
[<c0096cb8>] (generic_writepages+0x4c/0x68)
[   62.696689] [<c0096c6c>] (generic_writepages+0x0/0x68) from
[<c0097f2c>] (do_writepages+0x3c/0x40)
[   62.705942]  r6:cfd05600 r5:cfe97088 r4:d04b6180
[   62.710771] [<c0097ef0>] (do_writepages+0x0/0x40) from [<c00e23d8>]
(__writeback_single_inode+0x30/0x120)
[   62.720659] [<c00e23a8>] (__writeback_single_inode+0x0/0x120) from
[<c00e2c88>] (writeback_sb_inodes+0x338/0x584)
[   62.731256]  r8:cfbb3ecc r7:cfe970d0 r6:cfd05600 r5:cfe97088 r4:d04b6180
r3:d04b61f4
[   62.739451] [<c00e2950>] (writeback_sb_inodes+0x0/0x584) from
[<c00e2fac>] (__writeback_inodes_wb+0xd8/0x114)
[   62.749695] [<c00e2ed4>] (__writeback_inodes_wb+0x0/0x114) from
[<c00e33e4>] (wb_writeback+0x254/0x278)
[   62.759423] [<c00e3190>] (wb_writeback+0x0/0x278) from [<c00e3f54>]
(wb_do_writeback+0x1f0/0x200)
[   62.768599] [<c00e3d64>] (wb_do_writeback+0x0/0x200) from
[<c00e3ff0>] (bdi_writeback_thread+0x8c/0x164)
[   62.778402] [<c00e3f64>] (bdi_writeback_thread+0x0/0x164) from
[<c005096c>] (kthread+0xb0/0xbc)
[   62.787396] [<c00508bc>] (kthread+0x0/0xbc) from [<c000e658>]
(ret_from_fork+0x14/0x3c)
[   62.795663]  r8:00000000 r7:00000000 r6:00000000 r5:c00508bc r4:d08d1ec8
[   62.802740] UBIFS assert failed in do_writepage at 935 (pid 714)
[   62.808956] Backtrace:
[   62.811513] [<c0011a58>] (dump_backtrace+0x0/0x10c) from
[<c04c6688>] (dump_stack+0x18/0x1c)
[   62.820305]  r6:d04b6180 r5:cfe97000 r4:c0866300 r3:60000013
[   62.826231] [<c04c6670>] (dump_stack+0x0/0x1c) from [<c01d9ac0>]
(do_writepage+0x1d0/0x1e8)
[   62.834865] [<c01d98f0>] (do_writepage+0x0/0x1e8) from [<c01d9bf4>]
(ubifs_writepage+0x11c/0x234)
[   62.844041] [<c01d9ad8>] (ubifs_writepage+0x0/0x234) from
[<c0095dc8>] (__writepage+0x1c/0x64)
[   62.852945] [<c0095dac>] (__writepage+0x0/0x64) from [<c0096a90>]
(write_cache_pages+0x20c/0x3e8)
[   62.862135]  r4:ffffffff r3:c0095dac
[   62.865875] [<c0096884>] (write_cache_pages+0x0/0x3e8) from
[<c0096cb8>] (generic_writepages+0x4c/0x68)
[   62.875585] [<c0096c6c>] (generic_writepages+0x0/0x68) from
[<c0097f2c>] (do_writepages+0x3c/0x40)
[   62.884838]  r6:cfd05600 r5:cfe97088 r4:d04b6180
[   62.889663] [<c0097ef0>] (do_writepages+0x0/0x40) from [<c00e23d8>]
(__writeback_single_inode+0x30/0x120)
[   62.899551] [<c00e23a8>] (__writeback_single_inode+0x0/0x120) from
[<c00e2c88>] (writeback_sb_inodes+0x338/0x584)
[   62.910148]  r8:cfbb3ecc r7:cfe970d0 r6:cfd05600 r5:cfe97088 r4:d04b6180
r3:d04b61f4
[   62.918341] [<c00e2950>] (writeback_sb_inodes+0x0/0x584) from
[<c00e2fac>] (__writeback_inodes_wb+0xd8/0x114)
[   62.928586] [<c00e2ed4>] (__writeback_inodes_wb+0x0/0x114) from
[<c00e33e4>] (wb_writeback+0x254/0x278)
[   62.938293] [<c00e3190>] (wb_writeback+0x0/0x278) from [<c00e3f54>]
(wb_do_writeback+0x1f0/0x200)
[   62.947464] [<c00e3d64>] (wb_do_writeback+0x0/0x200) from
[<c00e3ff0>] (bdi_writeback_thread+0x8c/0x164)
[   62.957265] [<c00e3f64>] (bdi_writeback_thread+0x0/0x164) from
[<c005096c>] (kthread+0xb0/0xbc)
[   62.966277] [<c00508bc>] (kthread+0x0/0xbc) from [<c000e658>]
(ret_from_fork+0x14/0x3c)
[   62.974547]  r8:00000000 r7:00000000 r6:00000000 r5:c00508bc r4:d08d1ec8
[   62.981554] UBIFS assert failed in ubifs_release_budget at 567 (pid 714)
[   62.988476] Backtrace:
[   62.991031] [<c0011a58>] (dump_backtrace+0x0/0x10c) from
[<c04c6688>] (dump_stack+0x18/0x1c)
[   62.999747]  r6:cfbb2000 r5:cfbb3bfc r4:cfe97000 r3:60000013
[   63.005670] [<c04c6670>] (dump_stack+0x0/0x1c) from [<c01f304c>]
(ubifs_release_budget+0x514/0x520)
[   63.015022] [<c01f2b38>] (ubifs_release_budget+0x0/0x520) from
[<c01d8714>] (release_existing_page_budget+0x3c/0x44)
[   63.025889]  r9:00001000 r8:20000000 r7:00000000 r6:d04b6180 r5:cfe97000
r4:c0866300
[   63.034076] [<c01d86d8>] (release_existing_page_budget+0x0/0x44)
from [<c01d99a0>] (do_writepage+0xb0/0x1e8)
[   63.044233] [<c01d98f0>] (do_writepage+0x0/0x1e8) from [<c01d9bf4>]
(ubifs_writepage+0x11c/0x234)
[   63.053405] [<c01d9ad8>] (ubifs_writepage+0x0/0x234) from
[<c0095dc8>] (__writepage+0x1c/0x64)
[   63.062309] [<c0095dac>] (__writepage+0x0/0x64) from [<c0096a90>]
(write_cache_pages+0x20c/0x3e8)
[   63.071476]  r4:ffffffff r3:c0095dac
[   63.075214] [<c0096884>] (write_cache_pages+0x0/0x3e8) from
[<c0096cb8>] (generic_writepages+0x4c/0x68)
[   63.084925] [<c0096c6c>] (generic_writepages+0x0/0x68) from
[<c0097f2c>] (do_writepages+0x3c/0x40)
[   63.094179]  r6:cfd05600 r5:cfe97088 r4:d04b6180
[   63.099005] [<c0097ef0>] (do_writepages+0x0/0x40) from [<c00e23d8>]
(__writeback_single_inode+0x30/0x120)
[   63.108894] [<c00e23a8>] (__writeback_single_inode+0x0/0x120) from
[<c00e2c88>] (writeback_sb_inodes+0x338/0x584)
[   63.119492]  r8:cfbb3ecc r7:cfe970d0 r6:cfd05600 r5:cfe97088 r4:d04b6180
r3:d04b61f4
[   63.127686] [<c00e2950>] (writeback_sb_inodes+0x0/0x584) from
[<c00e2fac>] (__writeback_inodes_wb+0xd8/0x114)
[   63.137932] [<c00e2ed4>] (__writeback_inodes_wb+0x0/0x114) from
[<c00e33e4>] (wb_writeback+0x254/0x278)
[   63.147640] [<c00e3190>] (wb_writeback+0x0/0x278) from [<c00e3f54>]
(wb_do_writeback+0x1f0/0x200)
[   63.156809] [<c00e3d64>] (wb_do_writeback+0x0/0x200) from
[<c00e3ff0>] (bdi_writeback_thread+0x8c/0x164)
[   63.166612] [<c00e3f64>] (bdi_writeback_thread+0x0/0x164) from
[<c005096c>] (kthread+0xb0/0xbc)
[   63.175607] [<c00508bc>] (kthread+0x0/0xbc) from [<c000e658>]
(ret_from_fork+0x14/0x3c)
[   63.183876]  r8:00000000 r7:00000000 r6:00000000 r5:c00508bc r4:d08d1ec8

-- 
Duck tape is like the force, it has a light side and a dark side and
it holds the universe together.
_______________________________________________
unionfs mailing list: http://unionfs.filesystems.org/
[email protected]
http://www.fsl.cs.sunysb.edu/mailman/listinfo/unionfs

Reply via email to