f2fs: fix accessing wrong indexed data blocks
authorJaegeuk Kim <jaegeuk@kernel.org>
Wed, 11 Feb 2015 19:25:11 +0000 (11:25 -0800)
committerJaegeuk Kim <jaegeuk@kernel.org>
Thu, 12 Feb 2015 01:04:51 +0000 (17:04 -0800)
commitf1a3b98e73a9f811ab4882669043c50c0e0dc7b6
tree74c23b5caad0291e31676a7ee8b4cea4cda36f3c
parent60a3b782b1aaf6e5f8c4f92e99302c48a26d475b
f2fs: fix accessing wrong indexed data blocks

This patch fixes the following test.

This causes:
 attempt to access beyond end of device
 sdb2: rw=16384, want=14413962000, limit=16777216

The reason is:
 - f2fs_write_begin
  - f2fs_convert_inline_inode returns -ENOSPC
  - f2fs_write_failed
   - truncate_blocks
    - truncate_partial_data_page
     - find_data_page
      - get_dnode_of_data returns wrong data index retrieved from inline_data
      - f2fs_submit_page_bio(wrong data index)
       - submit_bio(wrong data index)

Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
fs/f2fs/node.c