git.openpandora.org
/
pandora-kernel.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
8618b88
)
f2fs: fix to do build_stat prior to the recovery procedure
author
Jaegeuk Kim
<jaegeuk.kim@samsung.com>
Wed, 19 Feb 2014 09:23:32 +0000
(18:23 +0900)
committer
Jaegeuk Kim
<jaegeuk.kim@samsung.com>
Mon, 24 Feb 2014 07:00:39 +0000
(16:00 +0900)
At the end of the recovery procedure, write_checkpoint is called and updates
the cp count which is managed by f2fs stat.
But, previously build_stat() is called after the recovery procedure, which
results in:
BUG: unable to handle kernel NULL pointer dereference at
000000000000012c
IP: [<
ffffffffa03b1030
>] write_checkpoint+0x720/0xbc0 [f2fs]
Call Trace:
[<
ffffffff810a6b44
>] ? mark_held_locks+0x74/0x140
[<
ffffffff8109a3e0
>] ? __init_waitqueue_head+0x60/0x60
[<
ffffffffa03bf036
>] recover_fsync_data+0x656/0xf20 [f2fs]
[<
ffffffff812ee3eb
>] ? security_d_instantiate+0x1b/0x30
[<
ffffffffa03aeb4d
>] f2fs_fill_super+0x94d/0xa00 [f2fs]
[<
ffffffff811a9825
>] mount_bdev+0x1a5/0x1f0
[<
ffffffff8114915e
>] ? __get_free_pages+0xe/0x40
[<
ffffffffa03ae200
>] ? f2fs_remount+0x130/0x130 [f2fs]
[<
ffffffffa03aa575
>] f2fs_mount+0x15/0x20 [f2fs]
[<
ffffffff811aa713
>] mount_fs+0x43/0x1b0
[<
ffffffff811c7124
>] vfs_kern_mount+0x74/0x160
[<
ffffffff811c5cb1
>] ? __get_fs_type+0x51/0x60
[<
ffffffff811c9727
>] do_mount+0x237/0xb50
[<
ffffffff811c936a
>] ? copy_mount_options+0x3a/0x170
So, this patche changes the order of recovery_fsync_data() and
f2fs_build_stats().
Signed-off-by: Jaegeuk Kim <jaegeuk.kim@samsung.com>
fs/f2fs/super.c
patch
|
blob
|
history
diff --cc
fs/f2fs/super.c
Simple merge