| /linux-6.15/fs/quota/ |
| H A D | dquot.c | 302 struct dquot *dquot; in find_dquot() local 403 struct dquot *dquot; in mark_all_dquot_dirty() local 684 struct dquot *dquot; in dquot_writeback_dquots() local 784 struct dquot *dquot; in dqcache_shrink_scan() local 813 struct dquot *dquot; in quota_release_workfn() local 896 struct dquot *dquot; in get_empty_dquot() local 1687 struct dquot *dquot; in __dquot_alloc_space() local 1757 struct dquot *dquot; in dquot_alloc_inode() local 1802 struct dquot *dquot; in dquot_claim_space_nodirty() local 1843 struct dquot *dquot; in dquot_reclaim_space_nodirty() local [all …]
|
| H A D | quota_tree.c | 260 struct dquot *dquot, int *err) in find_free_dqentry() argument 292 mark_info_dirty(dquot->dq_sb, dquot->dq_id.type); in find_free_dqentry() 418 struct dquot *dquot) in dq_insert_tree() argument 439 int qtree_write_dquot(struct qtree_mem_dqinfo *info, struct dquot *dquot) in qtree_write_dquot() argument 450 if (!dquot->dq_off) { in qtree_write_dquot() 623 struct dquot *dquot, uint blk) in find_block_dqentry() argument 661 struct dquot *dquot, uint *blks, int depth) in find_tree_dqentry() argument 708 struct dquot *dquot) in find_dqentry() argument 719 int qtree_read_dquot(struct qtree_mem_dqinfo *info, struct dquot *dquot) in qtree_read_dquot() argument 743 dquot->dq_off = 0; in qtree_read_dquot() [all …]
|
| H A D | quota_v2.c | 25 static void v2r0_mem2diskdqb(void *dp, struct dquot *dquot); 26 static void v2r0_disk2memdqb(struct dquot *dquot, void *dp); 27 static int v2r0_is_id(void *dp, struct dquot *dquot); 28 static void v2r1_mem2diskdqb(void *dp, struct dquot *dquot); 29 static void v2r1_disk2memdqb(struct dquot *dquot, void *dp); 30 static int v2r1_is_id(void *dp, struct dquot *dquot); 336 static int v2_read_dquot(struct dquot *dquot) in v2_read_dquot() argument 346 dquot); in v2_read_dquot() 352 static int v2_write_dquot(struct dquot *dquot) in v2_write_dquot() argument 383 static int v2_release_dquot(struct dquot *dquot) in v2_release_dquot() argument [all …]
|
| H A D | quota_v1.c | 56 static int v1_read_dqblk(struct dquot *dquot) in v1_read_dqblk() argument 58 int type = dquot->dq_id.type; in v1_read_dqblk() 67 dquot->dq_sb->s_op->quota_read(dquot->dq_sb, type, (char *)&dqblk, in v1_read_dqblk() 72 if (dquot->dq_dqb.dqb_bhardlimit == 0 && in v1_read_dqblk() 73 dquot->dq_dqb.dqb_bsoftlimit == 0 && in v1_read_dqblk() 74 dquot->dq_dqb.dqb_ihardlimit == 0 && in v1_read_dqblk() 75 dquot->dq_dqb.dqb_isoftlimit == 0) in v1_read_dqblk() 76 set_bit(DQ_FAKE_B, &dquot->dq_flags); in v1_read_dqblk() 82 static int v1_commit_dqblk(struct dquot *dquot) in v1_commit_dqblk() argument 84 short type = dquot->dq_id.type; in v1_commit_dqblk() [all …]
|
| H A D | Makefile | 2 obj-$(CONFIG_QUOTA) += dquot.o
|
| /linux-6.15/fs/ocfs2/ |
| H A D | quota_global.c | 71 static void ocfs2_global_disk2memdqb(struct dquot *dquot, void *dp) in ocfs2_global_disk2memdqb() argument 114 static int ocfs2_global_is_id(void *dp, struct dquot *dquot) in ocfs2_global_is_id() argument 118 sb_dqinfo(dquot->dq_sb, dquot->dq_id.type)->dqi_priv; in ocfs2_global_is_id() 490 int __ocfs2_sync_dquot(struct dquot *dquot, int freeing) in __ocfs2_sync_dquot() argument 669 static int ocfs2_write_dquot(struct dquot *dquot) in ocfs2_write_dquot() argument 730 static int ocfs2_release_dquot(struct dquot *dquot) in ocfs2_release_dquot() argument 734 sb_dqinfo(dquot->dq_sb, dquot->dq_id.type)->dqi_priv; in ocfs2_release_dquot() 809 static int ocfs2_acquire_dquot(struct dquot *dquot) in ocfs2_acquire_dquot() argument 925 static int ocfs2_mark_dquot_dirty(struct dquot *dquot) in ocfs2_mark_dquot_dirty() argument 1018 if (!dquot) in ocfs2_alloc_dquot() [all …]
|
| H A D | quota.h | 28 struct dquot dq_dquot; /* Generic VFS dquot */ 72 static inline struct ocfs2_dquot *OCFS2_DQUOT(struct dquot *dquot) in OCFS2_DQUOT() argument 74 return container_of(dquot, struct ocfs2_dquot, dq_dquot); in OCFS2_DQUOT() 100 int __ocfs2_sync_dquot(struct dquot *dquot, int freeing); 101 static inline int ocfs2_sync_dquot(struct dquot *dquot) in ocfs2_sync_dquot() argument 103 return __ocfs2_sync_dquot(dquot, 0); in ocfs2_sync_dquot() 105 static inline int ocfs2_global_release_dquot(struct dquot *dquot) in ocfs2_global_release_dquot() argument 107 return __ocfs2_sync_dquot(dquot, 1); in ocfs2_global_release_dquot() 115 int ocfs2_create_local_dquot(struct dquot *dquot); 116 int ocfs2_local_release_dquot(handle_t *handle, struct dquot *dquot); [all …]
|
| H A D | quota_local.c | 465 struct dquot *dquot; in ocfs2_recover_local_quota_file() local 498 dquot = dqget(sb, in ocfs2_recover_local_quota_file() 501 if (IS_ERR(dquot)) { in ocfs2_recover_local_quota_file() 502 status = PTR_ERR(dquot); in ocfs2_recover_local_quota_file() 525 spin_lock(&dquot->dq_dqb_lock); in ocfs2_recover_local_quota_file() 563 dqput(dquot); in ocfs2_recover_local_quota_file() 893 int ocfs2_local_write_dquot(struct dquot *dquot) in ocfs2_local_write_dquot() argument 1216 int ocfs2_create_local_dquot(struct dquot *dquot) in ocfs2_create_local_dquot() argument 1219 int type = dquot->dq_id.type; in ocfs2_create_local_dquot() 1274 int ocfs2_local_release_dquot(handle_t *handle, struct dquot *dquot) in ocfs2_local_release_dquot() argument [all …]
|
| H A D | inode.h | 68 struct dquot __rcu *i_dquot[MAXQUOTAS];
|
| H A D | super.c | 123 static struct dquot __rcu **ocfs2_get_dquots(struct inode *inode) in ocfs2_get_dquots()
|
| /linux-6.15/mm/ |
| H A D | shmem_quota.c | 164 static int shmem_acquire_dquot(struct dquot *dquot) in shmem_acquire_dquot() argument 166 struct mem_dqinfo *info = sb_dqinfo(dquot->dq_sb, dquot->dq_id.type); in shmem_acquire_dquot() 175 mutex_lock(&dquot->dq_lock); in shmem_acquire_dquot() 233 mutex_unlock(&dquot->dq_lock); in shmem_acquire_dquot() 237 static bool shmem_is_empty_dquot(struct dquot *dquot) in shmem_is_empty_dquot() argument 265 static int shmem_release_dquot(struct dquot *dquot) in shmem_release_dquot() argument 267 struct mem_dqinfo *info = sb_dqinfo(dquot->dq_sb, dquot->dq_id.type); in shmem_release_dquot() 273 mutex_lock(&dquot->dq_lock); in shmem_release_dquot() 275 if (dquot_is_busy(dquot)) in shmem_release_dquot() 294 mutex_unlock(&dquot->dq_lock); in shmem_release_dquot() [all …]
|
| /linux-6.15/include/linux/ |
| H A D | dqblk_qtree.h | 18 struct dquot; 23 …void (*mem2disk_dqblk)(void *disk, struct dquot *dquot); /* Convert given entry from in memory for… 24 …void (*disk2mem_dqblk)(struct dquot *dquot, void *disk); /* Convert given entry from disk format t… 25 int (*is_id)(void *disk, struct dquot *dquot); /* Is this structure for given id? */ 42 int qtree_write_dquot(struct qtree_mem_dqinfo *info, struct dquot *dquot); 43 int qtree_read_dquot(struct qtree_mem_dqinfo *info, struct dquot *dquot); 44 int qtree_delete_dquot(struct qtree_mem_dqinfo *info, struct dquot *dquot); 45 int qtree_release_dquot(struct qtree_mem_dqinfo *info, struct dquot *dquot);
|
| H A D | quotaops.h | 47 static inline struct dquot *dqgrab(struct dquot *dquot) in dqgrab() argument 52 atomic_inc(&dquot->dq_count); in dqgrab() 53 return dquot; in dqgrab() 56 static inline bool dquot_is_busy(struct dquot *dquot) in dquot_is_busy() argument 65 void dqput(struct dquot *dquot); 67 int (*fn)(struct dquot *dquot, unsigned long priv), 70 void dquot_destroy(struct dquot *dquot); 89 int dquot_commit(struct dquot *dquot); 90 int dquot_acquire(struct dquot *dquot); 91 int dquot_release(struct dquot *dquot); [all …]
|
| H A D | quota.h | 296 struct dquot { struct 317 int (*read_dqblk)(struct dquot *dquot); /* Read structure for one user */ argument 318 int (*commit_dqblk)(struct dquot *dquot); /* Write structure for one user */ 319 …int (*release_dqblk)(struct dquot *dquot); /* Called when last reference to dquot is being dropped… 325 int (*write_dquot) (struct dquot *); /* Ordinary dquot write */ 326 struct dquot *(*alloc_dquot)(struct super_block *, int); /* Allocate memory for new dquot */ 327 void (*destroy_dquot)(struct dquot *); /* Free memory for dquot */ 328 int (*acquire_dquot) (struct dquot *); /* Quota is going to be created on disk */ 329 int (*release_dquot) (struct dquot *); /* Quota is going to be deleted from disk */ 330 int (*mark_dirty) (struct dquot *); /* Dquot is marked dirty */
|
| H A D | shmem_fs.h | 40 struct dquot __rcu *i_dquot[MAXQUOTAS];
|
| /linux-6.15/fs/ext4/ |
| H A D | super.c | 1568 static int ext4_write_dquot(struct dquot *dquot); 1569 static int ext4_acquire_dquot(struct dquot *dquot); 1570 static int ext4_release_dquot(struct dquot *dquot); 1571 static int ext4_mark_dquot_dirty(struct dquot *dquot); 6807 struct dquot *dquot; in ext4_statfs_project() local 6847 dqput(dquot); in ext4_statfs_project() 6897 return sb_dqopt(dquot->dq_sb)->files[dquot->dq_id.type]; in dquot_to_inode() 6900 static int ext4_write_dquot(struct dquot *dquot) in ext4_write_dquot() argument 6922 static int ext4_acquire_dquot(struct dquot *dquot) in ext4_acquire_dquot() argument 6942 static int ext4_release_dquot(struct dquot *dquot) in ext4_release_dquot() argument [all …]
|
| H A D | ioctl.c | 721 struct dquot *transfer_to[MAXQUOTAS] = { }; in ext4_ioctl_setproject()
|
| /linux-6.15/fs/f2fs/ |
| H A D | super.c | 1795 struct dquot *dquot; in f2fs_statfs_project() local 1800 dquot = dqget(sb, qid); in f2fs_statfs_project() 1801 if (IS_ERR(dquot)) in f2fs_statfs_project() 1802 return PTR_ERR(dquot); in f2fs_statfs_project() 1830 dqput(dquot); in f2fs_statfs_project() 3131 static int f2fs_dquot_commit(struct dquot *dquot) in f2fs_dquot_commit() argument 3137 ret = dquot_commit(dquot); in f2fs_dquot_commit() 3144 static int f2fs_dquot_acquire(struct dquot *dquot) in f2fs_dquot_acquire() argument 3150 ret = dquot_acquire(dquot); in f2fs_dquot_acquire() 3157 static int f2fs_dquot_release(struct dquot *dquot) in f2fs_dquot_release() argument [all …]
|
| /linux-6.15/fs/jfs/ |
| H A D | jfs_incore.h | 95 struct dquot __rcu *i_dquot[MAXQUOTAS];
|
| H A D | super.c | 792 static struct dquot __rcu **jfs_get_dquots(struct inode *inode) in jfs_get_dquots()
|
| /linux-6.15/Documentation/filesystems/ |
| H A D | locking.rst | 615 int (*write_dquot) (struct dquot *); 616 int (*acquire_dquot) (struct dquot *); 617 int (*release_dquot) (struct dquot *); 618 int (*mark_dirty) (struct dquot *); 639 More details about quota locking can be found in fs/dquot.c.
|
| /linux-6.15/fs/bcachefs/ |
| H A D | quota.c | 145 struct mem_dqinfo *info = &sb_dqopt(dquot->dq_sb)->info[dquot->dq_id.type]; in ignore_hardlimit()
|
| /linux-6.15/fs/ext2/ |
| H A D | ext2.h | 678 struct dquot __rcu *i_dquot[MAXQUOTAS];
|
| H A D | super.c | 349 static struct dquot __rcu **ext2_get_dquots(struct inode *inode) in ext2_get_dquots()
|
| /linux-6.15/Documentation/filesystems/xfs/ |
| H A D | xfs-online-fsck-design.rst | 3617 Add each file's resource usage to the incore dquot. 3619 3. Walk each incore dquot. 3621 incore dquot to a delayed write (delwri) list. 3636 2. For each dquot attached to the file: 3638 a. The dquot is locked. 3643 c. The dquot is unlocked. 3649 a. The dquot is locked again. 3652 the dquot. 3654 c. The dquot is unlocked. 3677 3. For each dquot in the system: [all …]
|