函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:do_umount

函数原型:static int do_umount(struct mount *mnt, int flags)

返回类型:int

参数:

类型参数名称
struct mount *mnt
intflags
1508  sb等于 pointer to superblock
1511  retval等于security_sb_umount( & mnt, flags)
1512  如果retval则返回:retval
1521  如果flags按位与Mark for expiry
1522  如果mnt恒等于mntflags按位与Attempt to forcibily umount 按位或Just detach from the tree 的值则返回:负EINVAL
1530  lock_mount_hash()
1531  如果vfsmount lock must be held for write不等于2则
1533  返回:负EBUSY
1535  unlock_mount_hash()
1537  如果非xchg( & true if marked for expiry , 1)则返回:负EAGAIN
1551  如果flags按位与Attempt to forcibily umount umount_begin
1552  umount_begin(sb)
1564  如果mnt恒等于mnt且非flags按位与Just detach from the tree 的值则
1569  如果非ns_capable(s_user_ns, Allow setting zone reclaim policy )则返回:负EPERM
1571  返回:do_umount_root(sb)
1574  namespace_lock()
1575  lock_mount_hash()
1578  retval等于负EINVAL
1579  如果mnt_flags按位与MNT_LOCKED则转到:out
1582  event自加
1583  如果flags按位与Just detach from the tree
1584  如果非链表为空mount_lock must be held* namespace_sem must be held for write
1586  retval等于0
1587  否则
1588  shrink_submounts(mnt)
1589  retval等于负EBUSY
1593  retval等于0
1596  out :
1597  unlock_mount_hash()
1598  namespace_unlock()
1599  返回:retval
调用者
名称描述
ksys_umountNow umount can handle mount points as well as block devices.* This is important for filesystems which use unnamed block devices.* We now support a flag for forced unmount like the other 'big iron'* unixes