Jaegeuk Kim ccaaca2591 f2fs: fix writing incorrect orphan blocks
Previously, there was a erroneous scenario like below.
thread 1:                       thread 2:
 f2fs_unlink
  - acquire_orphan_inode
    : sbi->n_orphans++           write_checkpoint
                                 - block_operations
                                  : f2fs_lock_all
                                 - do_checkpoint
                                  : write orphan blocks with sbi->n_orphans
                                 - unblock_operations
  - f2fs_lock_op
  - release_orphan_inode
  - f2fs_unlock_op

During the checkpoint by thread 2, f2fs stores a wrong orphan block according
to the wrong sbi->n_orphans.
To avoid this, simply we should make cover acquire_orphan_inode too with
f2fs_lock_op.

Signed-off-by: Jaegeuk Kim <jaegeuk.kim@samsung.com>
2013-10-08 10:19:28 +09:00
..
2013-06-29 12:56:55 +04:00
2013-07-05 18:59:33 +04:00
2013-06-29 12:56:46 +04:00
2013-08-12 15:22:43 -05:00
2013-06-29 12:56:53 +04:00
2013-09-16 19:17:24 -04:00
2013-09-07 10:38:29 +02:00
2013-06-29 12:56:47 +04:00
2013-09-16 19:17:24 -04:00
2013-06-29 12:56:32 +04:00
2013-06-29 12:56:38 +04:00
2013-06-29 12:56:39 +04:00
2013-06-29 12:56:29 +04:00
2013-09-12 16:13:41 -07:00
2013-06-29 12:57:04 +04:00
2013-07-10 18:11:34 -07:00
2013-07-10 18:11:34 -07:00
2013-04-29 15:40:23 -04:00
2013-09-13 23:06:40 -04:00
2013-06-29 12:57:05 +04:00
2013-03-03 23:00:23 -05:00
2013-09-10 18:56:31 -04:00
2013-09-13 23:06:40 -04:00
2013-02-22 23:31:31 -05:00
2013-04-17 13:25:09 +01:00
2013-05-07 20:16:25 -07:00
2013-05-31 15:16:33 -04:00
2013-07-30 11:53:12 -04:00
2013-06-29 12:57:05 +04:00
2013-09-10 18:56:32 -04:00
2013-05-29 12:57:34 -07:00