函数逻辑报告 |
Source Code:fs\quota\dquot.c |
Create Date:2022-07-29 11:08:53 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| 首页 | 函数Tree |
| 注解内核,赢得工具 | 下载SCCT | English |
函数名称:Transfer the number of inode and blocks from one diskquota to an other
函数原型:int __dquot_transfer(struct inode *inode, struct dquot **transfer_to)
返回类型:int
参数:
| 类型 | 参数 | 名称 |
|---|---|---|
| struct inode * | inode | |
| struct dquot ** | transfer_to |
| 1951 | rsv_space等于0 |
| 1952 | inode_usage等于1 |
| 1953 | struct dquot * transfer_from[3] = {} |
| 1954 | ret等于0 |
| 1955 | char is_valid[3] = {} |
| 1960 | 如果IS_NOQUOTA(inode)则返回:0 |
| 1963 | 如果get_inode_usage则 |
| 1964 | ret等于get_inode_usage(inode, & inode_usage) |
| 1976 | 加自旋锁 |
| 1977 | 加自旋锁 |
| 1978 | 如果IS_NOQUOTA(inode)则 |
| 1983 | cur_space等于__inode_get_bytes(inode) |
| 1984 | rsv_space等于__inode_get_rsv_space(inode) |
| 1993 | 如果非transfer_to[cnt]则继续下一循环 |
| 1996 | 如果非sb_has_quota_active(i_sb, cnt)则继续下一循环 |
| 1999 | transfer_from[cnt]等于i_dquot(inode)[cnt] |
| 2000 | ret等于dquot_add_inodes(transfer_to[cnt], inode_usage, & warn_to[cnt]) |
| 2002 | 如果ret则转到:over_quota |
| 2004 | ret等于dquot_add_space(transfer_to[cnt], cur_space, rsv_space, DQUOT_SPACE_WARN, & warn_to[cnt]) |
| 2006 | 如果ret则 |
| 2019 | 如果transfer_from[cnt]则 |
| 2022 | 加自旋锁 |
| 2023 | wtype等于info_idq_free(transfer_from[cnt], inode_usage) |
| 2024 | 如果wtype不等于Definitions for quota netlink interface则prepare_warning( & warn_from_inodes[cnt], transfer_from[cnt], wtype) |
| 2027 | wtype等于info_bdq_free(transfer_from[cnt], cur_space + rsv_space) |
| 2029 | 如果wtype不等于Definitions for quota netlink interface则prepare_warning( & warn_from_space[cnt], transfer_from[cnt], wtype) |
| 2032 | dquot_decr_inodes(transfer_from[cnt], inode_usage) |
| 2033 | dquot_decr_space(transfer_from[cnt], cur_space) |
| 2036 | 自旋锁解锁 |
| 2038 | i_dquot(inode)[cnt]等于transfer_to[cnt] |
| 2040 | 自旋锁解锁 |
| 2041 | 自旋锁解锁 |
| 2051 | transfer_to[cnt]等于transfer_from[cnt] |
| 2052 | 返回:0 |
| 2053 | over_quota : |
| 2058 | 加自旋锁 |
| 2059 | dquot_decr_inodes(transfer_to[cnt], inode_usage) |
| 2060 | dquot_decr_space(transfer_to[cnt], cur_space) |
| 2062 | 自旋锁解锁 |
| 2064 | 自旋锁解锁 |
| 2065 | 自旋锁解锁 |
| 2067 | 返回:ret |
| 名称 | 描述 |
|---|---|
| dquot_transfer | Wrapper for transferring ownership of an inode for uid/gid only* Called from FSXXX_setattr() |
| 源代码转换工具 开放的插件接口 | X |
|---|---|
| 支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |