15 Sep, 2016
1 commit
-
The macro f2fs_check_acl is defined but never used since
the initial commit, this patch removes the code that has
been dead for several years.Signed-off-by: Tiezhu Yang
Signed-off-by: Jaegeuk Kim
26 Jul, 2016
1 commit
-
This patch includes minor clean-ups.
Signed-off-by: Jaegeuk Kim
04 Nov, 2014
1 commit
-
Previously, init_inode_metadata does not hold any parent directory's inode
page. So, f2fs_init_acl can grab its parent inode page without any problem.
But, when we use inline_dentry, that page is grabbed during f2fs_add_link,
so that we can fall into deadlock condition like below.INFO: task mknod:11006 blocked for more than 120 seconds.
Tainted: G OE 3.17.0-rc1+ #13
"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
mknod D ffff88003fc94580 0 11006 11004 0x00000000
ffff880007717b10 0000000000000002 ffff88003c323220 ffff880007717fd8
0000000000014580 0000000000014580 ffff88003daecb30 ffff88003c323220
ffff88003fc94e80 ffff88003ffbb4e8 ffff880007717ba0 0000000000000002
Call Trace:
[] ? bit_wait+0x50/0x50
[] io_schedule+0x9d/0x130
[] bit_wait_io+0x2c/0x50
[] __wait_on_bit_lock+0x4b/0xb0
[] __lock_page+0x67/0x70
[] ? autoremove_wake_function+0x40/0x40
[] pagecache_get_page+0x14c/0x1e0
[] get_node_page+0x59/0x130 [f2fs]
[] read_all_xattrs+0x24d/0x430 [f2fs]
[] f2fs_getxattr+0x52/0xe0 [f2fs]
[] f2fs_get_acl+0x41/0x2d0 [f2fs]
[] get_acl+0x47/0x70
[] posix_acl_create+0x5a/0x150
[] f2fs_init_acl+0x29/0xcb [f2fs]
[] init_inode_metadata+0x5d/0x340 [f2fs]
[] f2fs_add_inline_entry+0x12a/0x2e0 [f2fs]
[] __f2fs_add_link+0x45/0x4a0 [f2fs]
[] ? f2fs_new_inode+0x146/0x220 [f2fs]
[] f2fs_mknod+0x86/0xf0 [f2fs]
[] vfs_mknod+0xe1/0x160
[] SyS_mknod+0x1f6/0x200
[] tracesys+0xe1/0xe6Signed-off-by: Jaegeuk Kim
26 Jan, 2014
1 commit
-
f2fs has some weird mode bit handling, so still using the old
chmod code for now.Signed-off-by: Christoph Hellwig
Reviewed-by: Jaegeuk Kim
Signed-off-by: Al Viro
28 Oct, 2013
2 commits
-
The deadlock is found through the following scenario.
sys_mkdir()
-> f2fs_add_link()
-> __f2fs_add_link()
-> init_inode_metadata()
: lock_page(inode);
-> f2fs_init_acl()
-> f2fs_set_acl()
-> f2fs_setxattr(..., NULL)
: This NULL page incurs a deadlock at update_inode_page().So, likewise f2fs_init_security(), this patch adds a parameter to transfer the
locked inode page to f2fs_setxattr().Found by Linux File System Verification project (linuxtesting.org).
Reported-by: Alexey Khoroshilov
Signed-off-by: Jaegeuk Kim -
This patch cleans up a couple of acl codes.
Signed-off-by: Jaegeuk Kim
11 Dec, 2012
2 commits
-
As pointed out by Randy Dunlap, this patch removes all usage of "/**" for comment
blocks. Instead, just use "/*".Signed-off-by: Jaegeuk Kim
-
This implements xattr and acl functionalities.
- F2FS uses a node page to contain use extended attributes.
Signed-off-by: Changman Lee
Signed-off-by: Jaegeuk Kim