| /OK3568_Linux_fs/kernel/fs/quota/ |
| H A D | dquot.c | 277 static inline void insert_dquot_hash(struct dquot *dquot) in insert_dquot_hash() argument 280 head = dquot_hash + hashfn(dquot->dq_sb, dquot->dq_id); in insert_dquot_hash() 281 hlist_add_head(&dquot->dq_hash, head); in insert_dquot_hash() 284 static inline void remove_dquot_hash(struct dquot *dquot) in remove_dquot_hash() argument 286 hlist_del_init(&dquot->dq_hash); in remove_dquot_hash() 289 static struct dquot *find_dquot(unsigned int hashent, struct super_block *sb, in find_dquot() 293 struct dquot *dquot; in find_dquot() local 296 dquot = hlist_entry(node, struct dquot, dq_hash); in find_dquot() 297 if (dquot->dq_sb == sb && qid_eq(dquot->dq_id, qid)) in find_dquot() 298 return dquot; in find_dquot() [all …]
|
| H A D | quota_tree.c | 258 struct dquot *dquot, int *err) in find_free_dqentry() argument 290 mark_info_dirty(dquot->dq_sb, dquot->dq_id.type); in find_free_dqentry() 296 quota_error(dquot->dq_sb, "Can't remove block (%u) " in find_free_dqentry() 311 quota_error(dquot->dq_sb, "Data block full but it shouldn't"); in find_free_dqentry() 318 quota_error(dquot->dq_sb, "Can't write quota data block %u", in find_free_dqentry() 322 dquot->dq_off = ((loff_t)blk << info->dqi_blocksize_bits) + in find_free_dqentry() 333 static int do_insert_tree(struct qtree_mem_dqinfo *info, struct dquot *dquot, in do_insert_tree() argument 353 quota_error(dquot->dq_sb, "Can't read tree quota " in do_insert_tree() 359 newblk = le32_to_cpu(ref[get_index(info, dquot->dq_id, depth)]); in do_insert_tree() 365 quota_error(dquot->dq_sb, "Inserting already present " in do_insert_tree() [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); 220 static void v2r0_disk2memdqb(struct dquot *dquot, void *dp) in v2r0_disk2memdqb() argument 223 struct mem_dqblk *m = &dquot->dq_dqb; in v2r0_disk2memdqb() 240 static void v2r0_mem2diskdqb(void *dp, struct dquot *dquot) in v2r0_mem2diskdqb() argument 243 struct mem_dqblk *m = &dquot->dq_dqb; in v2r0_mem2diskdqb() [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() 60 struct quota_info *dqopt = sb_dqopt(dquot->dq_sb); in v1_read_dqblk() 67 dquot->dq_sb->s_op->quota_read(dquot->dq_sb, type, (char *)&dqblk, in v1_read_dqblk() 69 v1_dqoff(from_kqid(&init_user_ns, dquot->dq_id))); in v1_read_dqblk() 71 v1_disk2mem_dqblk(&dquot->dq_dqb, &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() [all …]
|
| H A D | Makefile | 2 obj-$(CONFIG_QUOTA) += dquot.o
|
| /OK3568_Linux_fs/kernel/fs/ocfs2/ |
| H A D | quota_global.c | 71 static void ocfs2_global_disk2memdqb(struct dquot *dquot, void *dp) in ocfs2_global_disk2memdqb() argument 74 struct mem_dqblk *m = &dquot->dq_dqb; in ocfs2_global_disk2memdqb() 77 if (!test_bit(DQ_LASTSET_B + QIF_ILIMITS_B, &dquot->dq_flags)) { in ocfs2_global_disk2memdqb() 81 if (!test_bit(DQ_LASTSET_B + QIF_INODES_B, &dquot->dq_flags)) in ocfs2_global_disk2memdqb() 83 if (!test_bit(DQ_LASTSET_B + QIF_BLIMITS_B, &dquot->dq_flags)) { in ocfs2_global_disk2memdqb() 87 if (!test_bit(DQ_LASTSET_B + QIF_SPACE_B, &dquot->dq_flags)) in ocfs2_global_disk2memdqb() 89 if (!test_bit(DQ_LASTSET_B + QIF_BTIME_B, &dquot->dq_flags)) in ocfs2_global_disk2memdqb() 91 if (!test_bit(DQ_LASTSET_B + QIF_ITIME_B, &dquot->dq_flags)) in ocfs2_global_disk2memdqb() 93 OCFS2_DQUOT(dquot)->dq_use_count = le32_to_cpu(d->dqb_use_count); in ocfs2_global_disk2memdqb() 96 static void ocfs2_global_mem2diskdqb(void *dp, struct dquot *dquot) in ocfs2_global_mem2diskdqb() argument [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_global_read_dquot(struct dquot *dquot); 101 int __ocfs2_sync_dquot(struct dquot *dquot, int freeing); 102 static inline int ocfs2_sync_dquot(struct dquot *dquot) in ocfs2_sync_dquot() argument 104 return __ocfs2_sync_dquot(dquot, 0); in ocfs2_sync_dquot() 106 static inline int ocfs2_global_release_dquot(struct dquot *dquot) in ocfs2_global_release_dquot() argument 108 return __ocfs2_sync_dquot(dquot, 1); in ocfs2_global_release_dquot() 116 int ocfs2_create_local_dquot(struct dquot *dquot); [all …]
|
| H A D | quota_local.c | 466 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() 524 spin_lock(&dquot->dq_dqb_lock); in ocfs2_recover_local_quota_file() 530 dquot->dq_dqb.dqb_curspace += spacechange; in ocfs2_recover_local_quota_file() 531 dquot->dq_dqb.dqb_curinodes += inodechange; in ocfs2_recover_local_quota_file() 532 spin_unlock(&dquot->dq_dqb_lock); in ocfs2_recover_local_quota_file() 536 status = ocfs2_global_release_dquot(dquot); in ocfs2_recover_local_quota_file() 561 dqput(dquot); in ocfs2_recover_local_quota_file() [all …]
|
| H A D | inode.h | 70 struct dquot *i_dquot[MAXQUOTAS];
|
| H A D | super.c | 129 static struct dquot **ocfs2_get_dquots(struct inode *inode) in ocfs2_get_dquots()
|
| H A D | file.c | 1128 struct dquot *transfer_to[MAXQUOTAS] = { }; in ocfs2_setattr()
|
| /OK3568_Linux_fs/kernel/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 | 45 struct dquot *dqget(struct super_block *sb, struct kqid qid); 46 static inline struct dquot *dqgrab(struct dquot *dquot) in dqgrab() argument 49 WARN_ON_ONCE(!atomic_read(&dquot->dq_count)); in dqgrab() 50 WARN_ON_ONCE(!test_bit(DQ_ACTIVE_B, &dquot->dq_flags)); in dqgrab() 51 atomic_inc(&dquot->dq_count); in dqgrab() 52 return dquot; in dqgrab() 55 static inline bool dquot_is_busy(struct dquot *dquot) in dquot_is_busy() argument 57 if (test_bit(DQ_MOD_B, &dquot->dq_flags)) in dquot_is_busy() 59 if (atomic_read(&dquot->dq_count) > 1) in dquot_is_busy() 64 void dqput(struct dquot *dquot); [all …]
|
| H A D | quota.h | 294 struct dquot { struct 315 int (*read_dqblk)(struct dquot *dquot); /* Read structure for one user */ argument 316 int (*commit_dqblk)(struct dquot *dquot); /* Write structure for one user */ 317 …int (*release_dqblk)(struct dquot *dquot); /* Called when last reference to dquot is being dropped… 326 int (*write_dquot) (struct dquot *); /* Ordinary dquot write */ 327 struct dquot *(*alloc_dquot)(struct super_block *, int); /* Allocate memory for new dquot */ 328 void (*destroy_dquot)(struct dquot *); /* Free memory for dquot */ 329 int (*acquire_dquot) (struct dquot *); /* Quota is going to be created on disk */ 330 int (*release_dquot) (struct dquot *); /* Quota is going to be deleted from disk */ 331 int (*mark_dirty) (struct dquot *); /* Dquot is marked dirty */
|
| /OK3568_Linux_fs/kernel/fs/reiserfs/ |
| H A D | super.c | 805 static struct dquot **reiserfs_get_dquots(struct inode *inode) in reiserfs_get_dquots() 834 static int reiserfs_write_dquot(struct dquot *); 835 static int reiserfs_acquire_dquot(struct dquot *); 836 static int reiserfs_release_dquot(struct dquot *); 837 static int reiserfs_mark_dquot_dirty(struct dquot *); 2278 static int reiserfs_write_dquot(struct dquot *dquot) in reiserfs_write_dquot() argument 2284 reiserfs_write_lock(dquot->dq_sb); in reiserfs_write_dquot() 2286 journal_begin(&th, dquot->dq_sb, in reiserfs_write_dquot() 2287 REISERFS_QUOTA_TRANS_BLOCKS(dquot->dq_sb)); in reiserfs_write_dquot() 2290 depth = reiserfs_write_unlock_nested(dquot->dq_sb); in reiserfs_write_dquot() [all …]
|
| /OK3568_Linux_fs/kernel/fs/ext4/ |
| H A D | super.c | 1611 static int ext4_write_dquot(struct dquot *dquot); 1612 static int ext4_acquire_dquot(struct dquot *dquot); 1613 static int ext4_release_dquot(struct dquot *dquot); 1614 static int ext4_mark_dquot_dirty(struct dquot *dquot); 1627 static struct dquot **ext4_get_dquots(struct inode *inode) in ext4_get_dquots() 6097 struct dquot *dquot; in ext4_statfs_project() local 6102 dquot = dqget(sb, qid); in ext4_statfs_project() 6103 if (IS_ERR(dquot)) in ext4_statfs_project() 6104 return PTR_ERR(dquot); in ext4_statfs_project() 6105 spin_lock(&dquot->dq_dqb_lock); in ext4_statfs_project() [all …]
|
| H A D | ioctl.c | 475 struct dquot *transfer_to[MAXQUOTAS] = { }; in ext4_ioctl_setproject()
|
| /OK3568_Linux_fs/kernel/fs/f2fs/ |
| H A D | super.c | 1603 struct dquot *dquot; in f2fs_statfs_project() local 1608 dquot = dqget(sb, qid); in f2fs_statfs_project() 1609 if (IS_ERR(dquot)) in f2fs_statfs_project() 1610 return PTR_ERR(dquot); in f2fs_statfs_project() 1611 spin_lock(&dquot->dq_dqb_lock); in f2fs_statfs_project() 1613 limit = min_not_zero(dquot->dq_dqb.dqb_bsoftlimit, in f2fs_statfs_project() 1614 dquot->dq_dqb.dqb_bhardlimit); in f2fs_statfs_project() 1619 curblock = (dquot->dq_dqb.dqb_curspace + in f2fs_statfs_project() 1620 dquot->dq_dqb.dqb_rsvspace) >> sb->s_blocksize_bits; in f2fs_statfs_project() 1627 limit = min_not_zero(dquot->dq_dqb.dqb_isoftlimit, in f2fs_statfs_project() [all …]
|
| /OK3568_Linux_fs/kernel/Documentation/admin-guide/sysctl/ |
| H A D | fs.rst | 32 - dquot-max 33 - dquot-nr 94 dquot-max & dquot-nr 97 The file dquot-max shows the maximum number of cached disk 100 The file dquot-nr shows the number of allocated disk quota
|
| /OK3568_Linux_fs/kernel/fs/jfs/ |
| H A D | jfs_incore.h | 88 struct dquot *i_dquot[MAXQUOTAS];
|
| H A D | super.c | 836 static struct dquot **jfs_get_dquots(struct inode *inode) in jfs_get_dquots()
|
| /OK3568_Linux_fs/kernel/Documentation/filesystems/ |
| H A D | locking.rst | 574 int (*write_dquot) (struct dquot *); 575 int (*acquire_dquot) (struct dquot *); 576 int (*release_dquot) (struct dquot *); 577 int (*mark_dirty) (struct dquot *); 598 More details about quota locking can be found in fs/dquot.c.
|
| /OK3568_Linux_fs/kernel/fs/ext2/ |
| H A D | ext2.h | 686 struct dquot *i_dquot[MAXQUOTAS];
|
| H A D | super.c | 329 static struct dquot **ext2_get_dquots(struct inode *inode) in ext2_get_dquots()
|
| /OK3568_Linux_fs/u-boot/fs/ubifs/ |
| H A D | ubifs.h | 233 struct dquot *i_dquot[MAXQUOTAS];
|