Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openeuler
Kernel
提交
98ed5174
K
Kernel
项目概览
openeuler
/
Kernel
1 年多 前同步成功
通知
8
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
K
Kernel
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
98ed5174
编写于
1月 03, 2008
作者:
C
Chris Mason
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Btrfs: Force inlining off in a few places to save stack usage
Signed-off-by:
N
Chris Mason
<
chris.mason@oracle.com
>
上级
f9ef6604
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
54 addition
and
49 deletion
+54
-49
fs/btrfs/ctree.c
fs/btrfs/ctree.c
+11
-10
fs/btrfs/extent-tree.c
fs/btrfs/extent-tree.c
+37
-29
fs/btrfs/file.c
fs/btrfs/file.c
+6
-10
未找到文件。
fs/btrfs/ctree.c
浏览文件 @
98ed5174
...
...
@@ -548,8 +548,8 @@ static int check_leaf(struct btrfs_root *root, struct btrfs_path *path,
return
0
;
}
static
int
check_block
(
struct
btrfs_root
*
root
,
struct
btrfs_path
*
path
,
int
level
)
static
int
noinline
check_block
(
struct
btrfs_root
*
root
,
struct
btrfs_path
*
path
,
int
level
)
{
return
0
;
#if 0
...
...
@@ -676,8 +676,9 @@ static struct extent_buffer *read_node_slot(struct btrfs_root *root,
btrfs_level_size
(
root
,
btrfs_header_level
(
parent
)
-
1
));
}
static
int
balance_level
(
struct
btrfs_trans_handle
*
trans
,
struct
btrfs_root
*
root
,
struct
btrfs_path
*
path
,
int
level
)
static
int
balance_level
(
struct
btrfs_trans_handle
*
trans
,
struct
btrfs_root
*
root
,
struct
btrfs_path
*
path
,
int
level
)
{
struct
extent_buffer
*
right
=
NULL
;
struct
extent_buffer
*
mid
;
...
...
@@ -868,9 +869,9 @@ static int balance_level(struct btrfs_trans_handle *trans, struct btrfs_root
}
/* returns zero if the push worked, non-zero otherwise */
static
int
push_nodes_for_insert
(
struct
btrfs_trans_handle
*
trans
,
struct
btrfs_root
*
root
,
struct
btrfs_path
*
path
,
int
level
)
static
int
noinline
push_nodes_for_insert
(
struct
btrfs_trans_handle
*
trans
,
struct
btrfs_root
*
root
,
struct
btrfs_path
*
path
,
int
level
)
{
struct
extent_buffer
*
right
=
NULL
;
struct
extent_buffer
*
mid
;
...
...
@@ -1207,8 +1208,8 @@ static int fixup_low_keys(struct btrfs_trans_handle *trans,
* returns 0 if some ptrs were pushed left, < 0 if there was some horrible
* error, and > 0 if there was no room in the left hand block.
*/
static
int
push_node_left
(
struct
btrfs_trans_handle
*
trans
,
struct
btrfs_root
*
root
,
struct
extent_buffer
*
dst
,
static
int
push_node_left
(
struct
btrfs_trans_handle
*
trans
,
struct
btrfs_root
*
root
,
struct
extent_buffer
*
dst
,
struct
extent_buffer
*
src
)
{
int
push_items
=
0
;
...
...
@@ -1309,7 +1310,7 @@ static int balance_node_right(struct btrfs_trans_handle *trans,
*
* returns zero on success or < 0 on failure.
*/
static
int
insert_new_root
(
struct
btrfs_trans_handle
*
trans
,
static
int
noinline
insert_new_root
(
struct
btrfs_trans_handle
*
trans
,
struct
btrfs_root
*
root
,
struct
btrfs_path
*
path
,
int
level
)
{
...
...
fs/btrfs/extent-tree.c
浏览文件 @
98ed5174
...
...
@@ -162,10 +162,11 @@ struct btrfs_block_group_cache *btrfs_lookup_block_group(struct
return
block_group
;
return
NULL
;
}
static
u64
find_search_start
(
struct
btrfs_root
*
root
,
struct
btrfs_block_group_cache
**
cache_ret
,
u64
search_start
,
int
num
,
int
data
,
int
full_scan
)
static
u64
noinline
find_search_start
(
struct
btrfs_root
*
root
,
struct
btrfs_block_group_cache
**
cache_ret
,
u64
search_start
,
int
num
,
int
data
,
int
full_scan
)
{
int
ret
;
struct
btrfs_block_group_cache
*
cache
=
*
cache_ret
;
...
...
@@ -393,11 +394,12 @@ static int match_extent_ref(struct extent_buffer *leaf,
return
ret
==
0
;
}
static
int
lookup_extent_backref
(
struct
btrfs_trans_handle
*
trans
,
struct
btrfs_root
*
root
,
struct
btrfs_path
*
path
,
u64
bytenr
,
u64
root_objectid
,
u64
ref_generation
,
u64
owner
,
u64
owner_offset
,
int
del
)
static
int
noinline
lookup_extent_backref
(
struct
btrfs_trans_handle
*
trans
,
struct
btrfs_root
*
root
,
struct
btrfs_path
*
path
,
u64
bytenr
,
u64
root_objectid
,
u64
ref_generation
,
u64
owner
,
u64
owner_offset
,
int
del
)
{
u64
hash
;
struct
btrfs_key
key
;
...
...
@@ -1116,8 +1118,8 @@ int btrfs_finish_extent_commit(struct btrfs_trans_handle *trans,
return
0
;
}
static
int
finish_current_insert
(
struct
btrfs_trans_handle
*
trans
,
struct
btrfs_root
*
extent_root
)
static
int
finish_current_insert
(
struct
btrfs_trans_handle
*
trans
,
struct
btrfs_root
*
extent_root
)
{
u64
start
;
u64
end
;
...
...
@@ -1360,11 +1362,13 @@ static u64 stripe_align(struct btrfs_root *root, u64 val)
* ins->offset == number of blocks
* Any available blocks before search_start are skipped.
*/
static
int
find_free_extent
(
struct
btrfs_trans_handle
*
trans
,
struct
btrfs_root
*
orig_root
,
u64
num_bytes
,
u64
empty_size
,
u64
search_start
,
u64
search_end
,
u64
hint_byte
,
struct
btrfs_key
*
ins
,
u64
exclude_start
,
u64
exclude_nr
,
int
data
)
static
int
noinline
find_free_extent
(
struct
btrfs_trans_handle
*
trans
,
struct
btrfs_root
*
orig_root
,
u64
num_bytes
,
u64
empty_size
,
u64
search_start
,
u64
search_end
,
u64
hint_byte
,
struct
btrfs_key
*
ins
,
u64
exclude_start
,
u64
exclude_nr
,
int
data
)
{
struct
btrfs_path
*
path
;
struct
btrfs_key
key
;
...
...
@@ -1760,8 +1764,9 @@ struct extent_buffer *__btrfs_alloc_free_block(struct btrfs_trans_handle *trans,
return
buf
;
}
static
int
drop_leaf_ref
(
struct
btrfs_trans_handle
*
trans
,
struct
btrfs_root
*
root
,
struct
extent_buffer
*
leaf
)
static
int
noinline
drop_leaf_ref
(
struct
btrfs_trans_handle
*
trans
,
struct
btrfs_root
*
root
,
struct
extent_buffer
*
leaf
)
{
u64
leaf_owner
;
u64
leaf_generation
;
...
...
@@ -1802,8 +1807,8 @@ static int drop_leaf_ref(struct btrfs_trans_handle *trans,
return
0
;
}
static
void
reada_walk_down
(
struct
btrfs_root
*
root
,
struct
extent_buffer
*
node
)
static
void
noinline
reada_walk_down
(
struct
btrfs_root
*
root
,
struct
extent_buffer
*
node
)
{
int
i
;
u32
nritems
;
...
...
@@ -1835,8 +1840,9 @@ static void reada_walk_down(struct btrfs_root *root,
* helper function for drop_snapshot, this walks down the tree dropping ref
* counts as it goes.
*/
static
int
walk_down_tree
(
struct
btrfs_trans_handle
*
trans
,
struct
btrfs_root
*
root
,
struct
btrfs_path
*
path
,
int
*
level
)
static
int
noinline
walk_down_tree
(
struct
btrfs_trans_handle
*
trans
,
struct
btrfs_root
*
root
,
struct
btrfs_path
*
path
,
int
*
level
)
{
u64
root_owner
;
u64
root_gen
;
...
...
@@ -1955,8 +1961,9 @@ static int walk_down_tree(struct btrfs_trans_handle *trans, struct btrfs_root
* to find the first node higher up where we haven't yet gone through
* all the slots
*/
static
int
walk_up_tree
(
struct
btrfs_trans_handle
*
trans
,
struct
btrfs_root
*
root
,
struct
btrfs_path
*
path
,
int
*
level
)
static
int
noinline
walk_up_tree
(
struct
btrfs_trans_handle
*
trans
,
struct
btrfs_root
*
root
,
struct
btrfs_path
*
path
,
int
*
level
)
{
u64
root_owner
;
u64
root_gen
;
...
...
@@ -2100,7 +2107,8 @@ int btrfs_free_block_groups(struct btrfs_fs_info *info)
return
0
;
}
static
int
relocate_inode_pages
(
struct
inode
*
inode
,
u64
start
,
u64
len
)
static
int
noinline
relocate_inode_pages
(
struct
inode
*
inode
,
u64
start
,
u64
len
)
{
u64
page_start
;
u64
page_end
;
...
...
@@ -2169,7 +2177,7 @@ static int relocate_inode_pages(struct inode *inode, u64 start, u64 len)
/*
* note, this releases the path
*/
static
int
relocate_one_reference
(
struct
btrfs_root
*
extent_root
,
static
int
noinline
relocate_one_reference
(
struct
btrfs_root
*
extent_root
,
struct
btrfs_path
*
path
,
struct
btrfs_key
*
extent_key
)
{
...
...
@@ -2268,9 +2276,9 @@ static int relocate_one_reference(struct btrfs_root *extent_root,
return
0
;
}
static
int
relocate_one_extent
(
struct
btrfs_root
*
extent_root
,
struct
btrfs_path
*
path
,
struct
btrfs_key
*
extent_key
)
static
int
noinline
relocate_one_extent
(
struct
btrfs_root
*
extent_root
,
struct
btrfs_path
*
path
,
struct
btrfs_key
*
extent_key
)
{
struct
btrfs_key
key
;
struct
btrfs_key
found_key
;
...
...
fs/btrfs/file.c
浏览文件 @
98ed5174
...
...
@@ -80,7 +80,7 @@ static void btrfs_drop_pages(struct page **pages, size_t num_pages)
}
}
static
int
insert_inline_extent
(
struct
btrfs_trans_handle
*
trans
,
static
int
noinline
insert_inline_extent
(
struct
btrfs_trans_handle
*
trans
,
struct
btrfs_root
*
root
,
struct
inode
*
inode
,
u64
offset
,
size_t
size
,
struct
page
**
pages
,
size_t
page_offset
,
...
...
@@ -221,7 +221,7 @@ static int insert_inline_extent(struct btrfs_trans_handle *trans,
return
err
;
}
static
int
dirty_and_release_pages
(
struct
btrfs_trans_handle
*
trans
,
static
int
noinline
dirty_and_release_pages
(
struct
btrfs_trans_handle
*
trans
,
struct
btrfs_root
*
root
,
struct
file
*
file
,
struct
page
**
pages
,
...
...
@@ -653,14 +653,10 @@ int btrfs_drop_extents(struct btrfs_trans_handle *trans,
/*
* this gets pages into the page cache and locks them down
*/
static
int
prepare_pages
(
struct
btrfs_root
*
root
,
struct
file
*
file
,
struct
page
**
pages
,
size_t
num_pages
,
loff_t
pos
,
unsigned
long
first_index
,
unsigned
long
last_index
,
size_t
write_bytes
)
static
int
prepare_pages
(
struct
btrfs_root
*
root
,
struct
file
*
file
,
struct
page
**
pages
,
size_t
num_pages
,
loff_t
pos
,
unsigned
long
first_index
,
unsigned
long
last_index
,
size_t
write_bytes
)
{
int
i
;
unsigned
long
index
=
pos
>>
PAGE_CACHE_SHIFT
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录