函数逻辑报告 |
Source Code:fs\quota\dquot.c |
Create Date:2022-07-29 11:08:51 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| 首页 | 函数Tree |
| 注解内核,赢得工具 | 下载SCCT | English |
函数名称:This operation can block, but only after everything is updated
函数原型:void __dquot_free_space(struct inode *inode, qsize_t number, int flags)
返回类型:void
参数:
| 类型 | 参数 | 名称 |
|---|---|---|
| struct inode * | inode | |
| qsize_t | number | |
| int | flags |
| 1853 | reserve等于flags按位与DQUOT_SPACE_RESERVE |
| 1855 | 如果非dquot_active(inode)则 |
| 1856 | 如果reserve则 |
| 1857 | 加自旋锁 |
| 1858 | de_reserved_space is managed internally by quota, and protected by* i_lock similar to i_blocks+i_bytes.减等于number |
| 1859 | 自旋锁解锁 |
| 1860 | 否则 |
| 1861 | inode_sub_bytes(inode, number) |
| 1863 | 返回 |
| 1868 | 加自旋锁 |
| 1875 | 加自旋锁 |
| 1876 | wtype等于info_bdq_free(dquots[cnt], number) |
| 1877 | 如果wtype不等于Definitions for quota netlink interface则prepare_warning( & warn[cnt], dquots[cnt], wtype) |
| 1879 | 如果reserve则dquot_free_reserved_space(dquots[cnt], number) |
| 1881 | 否则dquot_decr_space(dquots[cnt], number) |
| 1883 | 自旋锁解锁 |
| 1885 | 如果reserve则de_reserved_space is managed internally by quota, and protected by* i_lock similar to i_blocks+i_bytes.减等于number |
| 1887 | 否则__inode_sub_bytes(inode, number) |
| 1889 | 自旋锁解锁 |
| 1891 | 如果reserve则转到:out_unlock |
| 1894 | out_unlock : |
| 1895 | 注销过期读锁 |
| 源代码转换工具 开放的插件接口 | X |
|---|---|
| 支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |