函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:filename_parentat

函数原型:static struct filename *filename_parentat(int dfd, struct filename *name, unsigned int flags, struct path *parent, struct qstr *last, int *type)

返回类型:struct filename

参数:

类型参数名称
intdfd
struct filename *name
unsigned intflags
struct path *parent
struct qstr *last
int *type
2372  如果是错误则返回:name
2374  set_nameidata( & nd, dfd, name)
2375  retval等于Returns 0 and nd will be valid on success; Retuns error, otherwise.
2376  如果此条件成立可能性小(为编译器优化)(retval == - ECHILD)则retval等于Returns 0 and nd will be valid on success; Retuns error, otherwise.
2378  如果此条件成立可能性小(为编译器优化)(retval == - ESTALE)则retval等于Returns 0 and nd will be valid on success; Retuns error, otherwise.
2380  如果此条件成立可能性大(为编译器优化)(!retval)则
2381  last等于last
2382  type等于last_type
2383  audit_inode(name, dentry, dentry represents the parent )
2384  否则
2385  putname(name)
2386  name等于错误号
2388  restore_nameidata()
2389  返回:name
调用者
名称描述
kern_path_lockeddoes lookup, returns the object with parent locked
filename_create
do_rmdir
do_unlinkatMake sure that the actual truncation of the file will occur outside its* directory's i_mutex. Truncate can take a long time if there is a lot of* writeout happening, and we don't want to prevent access to the directory* while waiting on the I/O.
do_renameat2