函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:fs\namei.c Create Date:2022-07-29 10:34:56
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:walk_component

函数原型:static int walk_component(struct nameidata *nd, int flags)

返回类型:int

参数:

类型参数名称
struct nameidata *nd
intflags
1792  如果此条件成立可能性小(为编译器优化)(last_type != LAST_NORM)则
1793  err等于handle_dots(nd, last_type)
1794  如果非flags按位与WALK_MORE的值且depthput_link(nd)
1796  返回:err
1798  err等于lookup_fast(nd, & path, & inode, & seq)
1799  如果此条件成立可能性小(为编译器优化)(err <= 0)则
1800  如果err小于0则返回:err
1802  dentry等于lookup_slow( & last, dentry, flags)
1804  如果是错误则返回:错误
1807  mnt等于mnt
1808  err等于Handle a dentry that is managed in some way.* - Flagged for transit management (autofs)* - Flagged as mountpoint* - Flagged as automount point* This may only be called in refwalk mode.* On success path->dentry is known positive.
1809  如果此条件成立可能性小(为编译器优化)(err < 0)则返回:err
1812  seq等于0
1813  inode等于d_backing_inode - Get upper or lower inode we should be using*@upper: The upper layer* This is the helper that should be used to get at the inode that will be used* if this dentry were to be opened as a file. The inode may be on the upper
1816  返回:Do we need to follow links? We _really_ want to be able* to do this check without having to look at inode->i_op,* so we keep a cache of "no, this doesn't need follow_link"* for the common case.
调用者
名称描述
link_path_walkName resolution.* This is the basic name resolution function, turning a pathname into* the final dentry. We expect 'base' to be positive and a directory.* Returns 0 and nd will have valid dentry and mnt on success.
lookup_last