On 2016/2/24 11:46, Chao Yu wrote:
>>> > >
>>> > >But I doubt more that the reason we are stuck is there are remained pages
>>> > >cached in bio buffer without being submitted. To make sure, maybe in
>>> > >wait_on_all_pages_writeback we could add print info to see whether
>>> > >sbi->write_io[].bio is valid or not.
>>> > >
>> >We use tool dump f2fs_sb_info information and find that:
>> >
>> > write_io[DATA].bio = 0;
>> > write_io[NODE].bio = 0;
>> > write_io[META].bio = 0;
>> >
>> > nr_pages[F2FS_WRITEBACK] = 0;
>> > nr_pages[F2FS_DIRTY_DENTS] = 0;
>> > nr_pages[F2FS_DIRTY_NODES] = 13;
> Weird, dirty nodes count should be 0.
>
> Thanks
>
Hi Chao,
In our code,
1524 static int f2fs_write_end(struct file *file,
1525 struct address_space *mapping,
1526 loff_t pos, unsigned len, unsigned copied,
1527 struct page *page, void *fsdata)
1528 {
1529 struct inode *inode = page->mapping->host;
1530
1531 trace_f2fs_write_end(inode, pos, len, copied);
1532
1533 set_page_dirty(page);
1534
1535 if (pos + copied > i_size_read(inode)) {
1536 i_size_write(inode, pos + copied);
1537 mark_inode_dirty(inode);
1538 update_inode_page(inode);
1539 }
1540
1541 f2fs_put_page(page, 1);
1542 return copied;
1543 }
Here update_inode_page(inode) has been removed by Kim, maybe here could
result dirty node page is not zero.
Thanks,
>> > nr_pages[F2FS_DIRTY_META] = 0;
>> > nr_pages[F2FS_INMEM_PAGES] = 0;
>> >
>> >So we believe that the block device is ok!
>> >
>> >Thanks,
------------------------------------------------------------------------------
Site24x7 APM Insight: Get Deep Visibility into Application Performance
APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
Monitor end-to-end web transactions and take corrective actions now
Troubleshoot faster and improve end-user experience. Signup Now!
http://pubads.g.doubleclick.net/gampad/clk?id=272487151&iu=/4140
_______________________________________________
Linux-f2fs-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel