Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
cloud-kernel
提交
2b2d6d01
cloud-kernel
项目概览
openanolis
/
cloud-kernel
大约 1 年 前同步成功
通知
158
Star
36
Fork
7
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
10
列表
看板
标记
里程碑
合并请求
2
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
cloud-kernel
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
10
Issue
10
列表
看板
标记
里程碑
合并请求
2
合并请求
2
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
2b2d6d01
编写于
7月 26, 2008
作者:
T
Theodore Ts'o
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
ext4: Cleanup whitespace and other miscellaneous style issues
Signed-off-by:
N
"Theodore Ts'o"
<
tytso@mit.edu
>
上级
ec05e868
变更
6
展开全部
隐藏空白更改
内联
并排
Showing
6 changed file
with
277 addition
and
282 deletion
+277
-282
fs/ext4/acl.c
fs/ext4/acl.c
+94
-94
fs/ext4/extents.c
fs/ext4/extents.c
+1
-1
fs/ext4/inode.c
fs/ext4/inode.c
+2
-3
fs/ext4/resize.c
fs/ext4/resize.c
+40
-39
fs/ext4/super.c
fs/ext4/super.c
+139
-144
fs/ext4/xattr.c
fs/ext4/xattr.c
+1
-1
未找到文件。
fs/ext4/acl.c
浏览文件 @
2b2d6d01
...
...
@@ -40,34 +40,35 @@ ext4_acl_from_disk(const void *value, size_t size)
acl
=
posix_acl_alloc
(
count
,
GFP_NOFS
);
if
(
!
acl
)
return
ERR_PTR
(
-
ENOMEM
);
for
(
n
=
0
;
n
<
count
;
n
++
)
{
for
(
n
=
0
;
n
<
count
;
n
++
)
{
ext4_acl_entry
*
entry
=
(
ext4_acl_entry
*
)
value
;
if
((
char
*
)
value
+
sizeof
(
ext4_acl_entry_short
)
>
end
)
goto
fail
;
acl
->
a_entries
[
n
].
e_tag
=
le16_to_cpu
(
entry
->
e_tag
);
acl
->
a_entries
[
n
].
e_perm
=
le16_to_cpu
(
entry
->
e_perm
);
switch
(
acl
->
a_entries
[
n
].
e_tag
)
{
case
ACL_USER_OBJ
:
case
ACL_GROUP_OBJ
:
case
ACL_MASK
:
case
ACL_OTHER
:
value
=
(
char
*
)
value
+
sizeof
(
ext4_acl_entry_short
);
acl
->
a_entries
[
n
].
e_id
=
ACL_UNDEFINED_ID
;
break
;
case
ACL_USER
:
case
ACL_GROUP
:
value
=
(
char
*
)
value
+
sizeof
(
ext4_acl_entry
);
if
((
char
*
)
value
>
end
)
goto
fail
;
acl
->
a_entries
[
n
].
e_id
=
le32_to_cpu
(
entry
->
e_id
);
break
;
default:
switch
(
acl
->
a_entries
[
n
].
e_tag
)
{
case
ACL_USER_OBJ
:
case
ACL_GROUP_OBJ
:
case
ACL_MASK
:
case
ACL_OTHER
:
value
=
(
char
*
)
value
+
sizeof
(
ext4_acl_entry_short
);
acl
->
a_entries
[
n
].
e_id
=
ACL_UNDEFINED_ID
;
break
;
case
ACL_USER
:
case
ACL_GROUP
:
value
=
(
char
*
)
value
+
sizeof
(
ext4_acl_entry
);
if
((
char
*
)
value
>
end
)
goto
fail
;
acl
->
a_entries
[
n
].
e_id
=
le32_to_cpu
(
entry
->
e_id
);
break
;
default:
goto
fail
;
}
}
if
(
value
!=
end
)
...
...
@@ -96,27 +97,26 @@ ext4_acl_to_disk(const struct posix_acl *acl, size_t *size)
return
ERR_PTR
(
-
ENOMEM
);
ext_acl
->
a_version
=
cpu_to_le32
(
EXT4_ACL_VERSION
);
e
=
(
char
*
)
ext_acl
+
sizeof
(
ext4_acl_header
);
for
(
n
=
0
;
n
<
acl
->
a_count
;
n
++
)
{
for
(
n
=
0
;
n
<
acl
->
a_count
;
n
++
)
{
ext4_acl_entry
*
entry
=
(
ext4_acl_entry
*
)
e
;
entry
->
e_tag
=
cpu_to_le16
(
acl
->
a_entries
[
n
].
e_tag
);
entry
->
e_perm
=
cpu_to_le16
(
acl
->
a_entries
[
n
].
e_perm
);
switch
(
acl
->
a_entries
[
n
].
e_tag
)
{
case
ACL_USER
:
case
ACL_GROUP
:
entry
->
e_id
=
cpu_to_le32
(
acl
->
a_entries
[
n
].
e_id
);
e
+=
sizeof
(
ext4_acl_entry
);
break
;
case
ACL_USER_OBJ
:
case
ACL_GROUP_OBJ
:
case
ACL_MASK
:
case
ACL_OTHER
:
e
+=
sizeof
(
ext4_acl_entry_short
);
break
;
default:
goto
fail
;
switch
(
acl
->
a_entries
[
n
].
e_tag
)
{
case
ACL_USER
:
case
ACL_GROUP
:
entry
->
e_id
=
cpu_to_le32
(
acl
->
a_entries
[
n
].
e_id
);
e
+=
sizeof
(
ext4_acl_entry
);
break
;
case
ACL_USER_OBJ
:
case
ACL_GROUP_OBJ
:
case
ACL_MASK
:
case
ACL_OTHER
:
e
+=
sizeof
(
ext4_acl_entry_short
);
break
;
default:
goto
fail
;
}
}
return
(
char
*
)
ext_acl
;
...
...
@@ -167,23 +167,23 @@ ext4_get_acl(struct inode *inode, int type)
if
(
!
test_opt
(
inode
->
i_sb
,
POSIX_ACL
))
return
NULL
;
switch
(
type
)
{
case
ACL_TYPE_ACCESS
:
acl
=
ext4_iget_acl
(
inode
,
&
ei
->
i_acl
);
if
(
acl
!=
EXT4_ACL_NOT_CACHED
)
return
acl
;
name_index
=
EXT4_XATTR_INDEX_POSIX_ACL_ACCESS
;
break
;
case
ACL_TYPE_DEFAULT
:
acl
=
ext4_iget_acl
(
inode
,
&
ei
->
i_default_acl
);
if
(
acl
!=
EXT4_ACL_NOT_CACHED
)
return
acl
;
name_index
=
EXT4_XATTR_INDEX_POSIX_ACL_DEFAULT
;
break
;
default:
return
ERR_PTR
(
-
EINVAL
);
switch
(
type
)
{
case
ACL_TYPE_ACCESS
:
acl
=
ext4_iget_acl
(
inode
,
&
ei
->
i_acl
);
if
(
acl
!=
EXT4_ACL_NOT_CACHED
)
return
acl
;
name_index
=
EXT4_XATTR_INDEX_POSIX_ACL_ACCESS
;
break
;
case
ACL_TYPE_DEFAULT
:
acl
=
ext4_iget_acl
(
inode
,
&
ei
->
i_default_acl
);
if
(
acl
!=
EXT4_ACL_NOT_CACHED
)
return
acl
;
name_index
=
EXT4_XATTR_INDEX_POSIX_ACL_DEFAULT
;
break
;
default:
return
ERR_PTR
(
-
EINVAL
);
}
retval
=
ext4_xattr_get
(
inode
,
name_index
,
""
,
NULL
,
0
);
if
(
retval
>
0
)
{
...
...
@@ -201,14 +201,14 @@ ext4_get_acl(struct inode *inode, int type)
kfree
(
value
);
if
(
!
IS_ERR
(
acl
))
{
switch
(
type
)
{
case
ACL_TYPE_ACCESS
:
ext4_iset_acl
(
inode
,
&
ei
->
i_acl
,
acl
);
break
;
case
ACL_TYPE_DEFAULT
:
ext4_iset_acl
(
inode
,
&
ei
->
i_default_acl
,
acl
);
break
;
switch
(
type
)
{
case
ACL_TYPE_ACCESS
:
ext4_iset_acl
(
inode
,
&
ei
->
i_acl
,
acl
);
break
;
case
ACL_TYPE_DEFAULT
:
ext4_iset_acl
(
inode
,
&
ei
->
i_default_acl
,
acl
);
break
;
}
}
return
acl
;
...
...
@@ -232,31 +232,31 @@ ext4_set_acl(handle_t *handle, struct inode *inode, int type,
if
(
S_ISLNK
(
inode
->
i_mode
))
return
-
EOPNOTSUPP
;
switch
(
type
)
{
case
ACL_TYPE_ACCESS
:
name_index
=
EXT4_XATTR_INDEX_POSIX_ACL_ACCESS
;
if
(
acl
)
{
mode_t
mode
=
inode
->
i_mode
;
error
=
posix_acl_equiv_mode
(
acl
,
&
mode
);
if
(
error
<
0
)
return
error
;
else
{
inode
->
i_mode
=
mode
;
ext4_mark_inode_dirty
(
handle
,
inode
);
if
(
error
==
0
)
acl
=
NULL
;
}
switch
(
type
)
{
case
ACL_TYPE_ACCESS
:
name_index
=
EXT4_XATTR_INDEX_POSIX_ACL_ACCESS
;
if
(
acl
)
{
mode_t
mode
=
inode
->
i_mode
;
error
=
posix_acl_equiv_mode
(
acl
,
&
mode
);
if
(
error
<
0
)
return
error
;
else
{
inode
->
i_mode
=
mode
;
ext4_mark_inode_dirty
(
handle
,
inode
);
if
(
error
==
0
)
acl
=
NULL
;
}
break
;
}
break
;
case
ACL_TYPE_DEFAULT
:
name_index
=
EXT4_XATTR_INDEX_POSIX_ACL_DEFAULT
;
if
(
!
S_ISDIR
(
inode
->
i_mode
))
return
acl
?
-
EACCES
:
0
;
break
;
case
ACL_TYPE_DEFAULT
:
name_index
=
EXT4_XATTR_INDEX_POSIX_ACL_DEFAULT
;
if
(
!
S_ISDIR
(
inode
->
i_mode
))
return
acl
?
-
EACCES
:
0
;
break
;
default:
return
-
EINVAL
;
default:
return
-
EINVAL
;
}
if
(
acl
)
{
value
=
ext4_acl_to_disk
(
acl
,
&
size
);
...
...
@@ -269,14 +269,14 @@ ext4_set_acl(handle_t *handle, struct inode *inode, int type,
kfree
(
value
);
if
(
!
error
)
{
switch
(
type
)
{
case
ACL_TYPE_ACCESS
:
ext4_iset_acl
(
inode
,
&
ei
->
i_acl
,
acl
);
break
;
case
ACL_TYPE_DEFAULT
:
ext4_iset_acl
(
inode
,
&
ei
->
i_default_acl
,
acl
);
break
;
switch
(
type
)
{
case
ACL_TYPE_ACCESS
:
ext4_iset_acl
(
inode
,
&
ei
->
i_acl
,
acl
);
break
;
case
ACL_TYPE_DEFAULT
:
ext4_iset_acl
(
inode
,
&
ei
->
i_default_acl
,
acl
);
break
;
}
}
return
error
;
...
...
fs/ext4/extents.c
浏览文件 @
2b2d6d01
...
...
@@ -1441,7 +1441,7 @@ unsigned int ext4_ext_check_overlap(struct inode *inode,
/*
* get the next allocated block if the extent in the path
* is before the requested block(s)
* is before the requested block(s)
*/
if
(
b2
<
b1
)
{
b2
=
ext4_ext_next_allocated_block
(
path
);
...
...
fs/ext4/inode.c
浏览文件 @
2b2d6d01
...
...
@@ -1054,10 +1054,9 @@ static void ext4_da_update_reserve_space(struct inode *inode, int used)
/*
* The ext4_get_blocks_wrap() function try to look up the requested blocks,
* and returns if the blocks are already mapped.
*
*
* ext4_ext4 get_block() wrapper function
* It will do a look up first, and returns if the blocks already mapped.
* Otherwise it takes the write lock of the i_data_sem and allocate blocks
* and store the allocated blocks in the result buffer head and mark it
* mapped.
...
...
fs/ext4/resize.c
浏览文件 @
2b2d6d01
...
...
@@ -73,7 +73,7 @@ static int verify_group_input(struct super_block *sb,
"Inode bitmap not in group (block %llu)"
,
(
unsigned
long
long
)
input
->
inode_bitmap
);
else
if
(
outside
(
input
->
inode_table
,
start
,
end
)
||
outside
(
itend
-
1
,
start
,
end
))
outside
(
itend
-
1
,
start
,
end
))
ext4_warning
(
sb
,
__func__
,
"Inode table not in group (blocks %llu-%llu)"
,
(
unsigned
long
long
)
input
->
inode_table
,
itend
-
1
);
...
...
@@ -104,7 +104,7 @@ static int verify_group_input(struct super_block *sb,
(
unsigned
long
long
)
input
->
inode_bitmap
,
start
,
metaend
-
1
);
else
if
(
inside
(
input
->
inode_table
,
start
,
metaend
)
||
inside
(
itend
-
1
,
start
,
metaend
))
inside
(
itend
-
1
,
start
,
metaend
))
ext4_warning
(
sb
,
__func__
,
"Inode table (%llu-%llu) overlaps"
"GDT table (%llu-%llu)"
,
...
...
@@ -158,9 +158,9 @@ static int extend_or_restart_transaction(handle_t *handle, int thresh,
if
(
err
)
{
if
((
err
=
ext4_journal_restart
(
handle
,
EXT4_MAX_TRANS_DATA
)))
return
err
;
if
((
err
=
ext4_journal_get_write_access
(
handle
,
bh
)))
if
((
err
=
ext4_journal_get_write_access
(
handle
,
bh
)))
return
err
;
}
}
return
0
;
}
...
...
@@ -416,11 +416,11 @@ static int add_new_gdb(handle_t *handle, struct inode *inode,
"EXT4-fs: ext4_add_new_gdb: adding group block %lu
\n
"
,
gdb_num
);
/*
* If we are not using the primary superblock/GDT copy don't resize,
* because the user tools have no way of handling this. Probably a
* bad time to do it anyways.
*/
/*
* If we are not using the primary superblock/GDT copy don't resize,
* because the user tools have no way of handling this. Probably a
* bad time to do it anyways.
*/
if
(
EXT4_SB
(
sb
)
->
s_sbh
->
b_blocknr
!=
le32_to_cpu
(
EXT4_SB
(
sb
)
->
s_es
->
s_first_data_block
))
{
ext4_warning
(
sb
,
__func__
,
...
...
@@ -507,14 +507,14 @@ static int add_new_gdb(handle_t *handle, struct inode *inode,
return
0
;
exit_inode:
/
/ext4_journal_release_buffer(handle, iloc.bh);
/
* ext4_journal_release_buffer(handle, iloc.bh); */
brelse
(
iloc
.
bh
);
exit_dindj:
/
/ext4_journal_release_buffer(handle, dind);
/
* ext4_journal_release_buffer(handle, dind); */
exit_primary:
/
/ext4_journal_release_buffer(handle, *primary);
/
* ext4_journal_release_buffer(handle, *primary); */
exit_sbh:
/
/ext4_journal_release_buffer(handle, *primary);
/
* ext4_journal_release_buffer(handle, *primary); */
exit_dind:
brelse
(
dind
);
exit_bh:
...
...
@@ -818,12 +818,12 @@ int ext4_group_add(struct super_block *sb, struct ext4_new_group_data *input)
if
((
err
=
ext4_journal_get_write_access
(
handle
,
sbi
->
s_sbh
)))
goto
exit_journal
;
/*
* We will only either add reserved group blocks to a backup group
* or remove reserved blocks for the first group in a new group block.
* Doing both would be mean more complex code, and sane people don't
* use non-sparse filesystems anymore. This is already checked above.
*/
/*
* We will only either add reserved group blocks to a backup group
* or remove reserved blocks for the first group in a new group block.
* Doing both would be mean more complex code, and sane people don't
* use non-sparse filesystems anymore. This is already checked above.
*/
if
(
gdb_off
)
{
primary
=
sbi
->
s_group_desc
[
gdb_num
];
if
((
err
=
ext4_journal_get_write_access
(
handle
,
primary
)))
...
...
@@ -835,24 +835,24 @@ int ext4_group_add(struct super_block *sb, struct ext4_new_group_data *input)
}
else
if
((
err
=
add_new_gdb
(
handle
,
inode
,
input
,
&
primary
)))
goto
exit_journal
;
/*
* OK, now we've set up the new group. Time to make it active.
*
* Current kernels don't lock all allocations via lock_super(),
* so we have to be safe wrt. concurrent accesses the group
* data. So we need to be careful to set all of the relevant
* group descriptor data etc. *before* we enable the group.
*
* The key field here is sbi->s_groups_count: as long as
* that retains its old value, nobody is going to access the new
* group.
*
* So first we update all the descriptor metadata for the new
* group; then we update the total disk blocks count; then we
* update the groups count to enable the group; then finally we
* update the free space counts so that the system can start
* using the new disk blocks.
*/
/*
* OK, now we've set up the new group. Time to make it active.
*
* Current kernels don't lock all allocations via lock_super(),
* so we have to be safe wrt. concurrent accesses the group
* data. So we need to be careful to set all of the relevant
* group descriptor data etc. *before* we enable the group.
*
* The key field here is sbi->s_groups_count: as long as
* that retains its old value, nobody is going to access the new
* group.
*
* So first we update all the descriptor metadata for the new
* group; then we update the total disk blocks count; then we
* update the groups count to enable the group; then finally we
* update the free space counts so that the system can start
* using the new disk blocks.
*/
/* Update group descriptor block for new group */
gdp
=
(
struct
ext4_group_desc
*
)((
char
*
)
primary
->
b_data
+
...
...
@@ -946,7 +946,8 @@ int ext4_group_add(struct super_block *sb, struct ext4_new_group_data *input)
return
err
;
}
/* ext4_group_add */
/* Extend the filesystem to the new number of blocks specified. This entry
/*
* Extend the filesystem to the new number of blocks specified. This entry
* point is only used to extend the current filesystem to the end of the last
* existing group. It can be accessed via ioctl, or by "remount,resize=<size>"
* for emergencies (because it has no dependencies on reserved blocks).
...
...
@@ -1024,7 +1025,7 @@ int ext4_group_extend(struct super_block *sb, struct ext4_super_block *es,
o_blocks_count
+
add
,
add
);
/* See if the device is actually as big as what was requested */
bh
=
sb_bread
(
sb
,
o_blocks_count
+
add
-
1
);
bh
=
sb_bread
(
sb
,
o_blocks_count
+
add
-
1
);
if
(
!
bh
)
{
ext4_warning
(
sb
,
__func__
,
"can't read last block, resize aborted"
);
...
...
fs/ext4/super.c
浏览文件 @
2b2d6d01
此差异已折叠。
点击以展开。
fs/ext4/xattr.c
浏览文件 @
2b2d6d01
...
...
@@ -1512,7 +1512,7 @@ static inline void ext4_xattr_hash_entry(struct ext4_xattr_header *header,
char
*
name
=
entry
->
e_name
;
int
n
;
for
(
n
=
0
;
n
<
entry
->
e_name_len
;
n
++
)
{
for
(
n
=
0
;
n
<
entry
->
e_name_len
;
n
++
)
{
hash
=
(
hash
<<
NAME_HASH_SHIFT
)
^
(
hash
>>
(
8
*
sizeof
(
hash
)
-
NAME_HASH_SHIFT
))
^
*
name
++
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录