Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:fs\namei.c Create Date:2022-07-28 20:05:05
Last Modify:2020-03-12 14:18:49 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:lookup_fast

Proto:static int lookup_fast(struct nameidata *nd, struct path *path, struct inode **inode, unsigned *seqp)

Type:int

Parameter:

TypeParameterName
struct nameidata *nd
struct path *path
struct inode **inode
unsigned *seqp
1558  mnt = mnt
1559  parent = dentry
1560  status = 1
1568  If flags & RCU pathwalk mode; semi-internal Then
1571  dentry = __d_lookup_rcu(parent, & last, & seq)
1575  Return 0
1582  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
1583  negative = d_is_negative(dentry)
1584  If Value for the false possibility is greater at compile time(ad_seqcount_retry - end a seq-read critical section*@s: pointer to seqcount_t*@start: count, from read_seqcount_begin* Returns: 1 if retry is required, else 0* read_seqcount_retry closes a read critical section of the given seqcount) Then Return -ECHILD
1594  If Value for the false possibility is greater at compile time(__read_seqcount_retry - end a seq-read critical section (without barrier)*@s: pointer to seqcount_t*@start: count, from read_seqcount_begin* Returns: 1 if retry is required, else 0* __read_seqcount_retry is like read_seqcount_retry, but has no smp_rmb()) Then Return -ECHILD
1597  seqp = seq
1598  status = d_revalidate(dentry, flags)
1606  mnt = mnt
1607  dentry = dentry
1611  If lazy_child - try to switch to ref-walk mode Then Return -ECHILD
1613  If Value for the false possibility is greater at compile time(status == - ECHILD) Then status = d_revalidate(dentry, flags)
1616  Else
1617  dentry = __d_lookup(parent, & last)
1618  If Value for the false possibility is greater at compile time(!dentry) Then Return 0
1620  status = d_revalidate(dentry, flags)
1622  If Value for the false possibility is greater at compile time(status <= 0) Then
1623  If Not status Then invalidate a dentry
1625  dput(dentry)
1626  Return status
1629  mnt = mnt
1630  dentry = dentry
1631  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.
1632  If Value is more likely to compile time(err > 0) Then 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
1634  Return err
Caller
NameDescribe
walk_component
do_lastHandle the last step of open()