Lines Matching refs:dquots
23 * invalidate_dquots() now writes modified dquots.
34 * Invalidation of referenced dquots is no longer possible
106 * Operation accessing dquots via inode pointers are protected by dquot_srcu.
109 * inode and before dropping dquot references to avoid use of dquots after
113 * inode is a quota file). Functions adding pointers from inode to dquots have
117 * then drops all pointers to dquots from an inode.
233 * All dquots are placed to the end of inuse_list when first created, and this
239 * dquots on the list. Each cleaned up dquot is moved to free_dquots list.
243 * Unused and cleaned up dquots are in the free_dquots list and this list is
246 * of dquots on the list. When dquot is invalidated it's completely released
249 * Dirty dquots are added to the dqi_dirty_list of quota_info when mark
250 * dirtied, and this list is searched when writing dirty dquots back to
401 /* Dirtify all the dquots - this can block when journalling */
402 static inline int mark_all_dquot_dirty(struct dquot __rcu * const *dquots)
409 dquot = srcu_dereference(dquots[cnt], &dquot_srcu);
567 /* Invalidate all dquots on the list. Note that this function is called after
609 * work cleaning up released dquots.
965 /* all dquots go on the inuse_list */
1016 struct dquot __rcu * const *dquots;
1022 dquots = i_dquot(inode);
1024 return !dquots[type];
1026 if (!dquots[cnt])
1106 struct dquot __rcu **dquots = i_dquot(inode);
1108 dquots[type], &dquot_srcu,
1115 rcu_assign_pointer(dquots[type], NULL);
1468 struct dquot __rcu **dquots;
1477 dquots = i_dquot(inode);
1493 if (dquots[cnt])
1543 if (!dquots[cnt]) {
1544 rcu_assign_pointer(dquots[cnt], got[cnt]);
1553 dquots[cnt], &dquot_srcu,
1583 struct dquot __rcu **dquots;
1589 dquots = i_dquot(inode);
1591 if (!dquots[i] && sb_has_quota_active(inode->i_sb, i))
1608 struct dquot __rcu **dquots = i_dquot(inode);
1613 put[cnt] = srcu_dereference_check(dquots[cnt], &dquot_srcu,
1615 rcu_assign_pointer(dquots[cnt], NULL);
1623 struct dquot __rcu * const *dquots;
1636 dquots = i_dquot(inode);
1638 if (dquots[cnt])
1696 struct dquot __rcu **dquots;
1713 dquots = i_dquot(inode);
1717 dquot = srcu_dereference(dquots[cnt], &dquot_srcu);
1728 dquot = srcu_dereference(dquots[cnt], &dquot_srcu);
1750 mark_all_dquot_dirty(dquots);
1766 struct dquot __rcu * const *dquots;
1774 dquots = i_dquot(inode);
1778 dquot = srcu_dereference(dquots[cnt], &dquot_srcu);
1784 dquot = srcu_dereference(dquots[cnt], &dquot_srcu);
1799 mark_all_dquot_dirty(dquots);
1811 struct dquot __rcu **dquots;
1823 dquots = i_dquot(inode);
1828 dquot = srcu_dereference(dquots[cnt], &dquot_srcu);
1842 mark_all_dquot_dirty(dquots);
1853 struct dquot __rcu **dquots;
1865 dquots = i_dquot(inode);
1870 dquot = srcu_dereference(dquots[cnt], &dquot_srcu);
1884 mark_all_dquot_dirty(dquots);
1897 struct dquot __rcu **dquots;
1912 dquots = i_dquot(inode);
1919 dquot = srcu_dereference(dquots[cnt], &dquot_srcu);
1940 mark_all_dquot_dirty(dquots);
1954 struct dquot __rcu * const *dquots;
1961 dquots = i_dquot(inode);
1967 dquot = srcu_dereference(dquots[cnt], &dquot_srcu);
1978 mark_all_dquot_dirty(dquots);
1987 * to original dquots that need to be released are placed there. On failure,
2001 struct dquot __rcu **dquots;
2034 dquots = i_dquot(inode);
2049 transfer_from[cnt] = srcu_dereference_check(dquots[cnt],
2089 rcu_assign_pointer(dquots[cnt], transfer_to[cnt]);
2308 * Now all dquots should be invalidated, all writes done so we