Re: [PATCH] quota: add dqi_dirty_list description to comment of Dquot List Management

From: Jan Kara
Date: Thu May 09 2019 - 06:52:23 EST


On Mon 06-05-19 09:39:03, Chengguang Xu wrote:
> Actually there are four lists for dquot management, so add
> the description of dqui_dirty_list to comment.
>
> Signed-off-by: Chengguang Xu <cgxu519@xxxxxxxxx>

Thanks applied with small addition:

Note that some filesystems do dirty dquot tracking on their own (e.g. in a
journal) and thus don't use dqi_dirty_list.

Honza

> ---
> fs/quota/dquot.c | 10 +++++++---
> 1 file changed, 7 insertions(+), 3 deletions(-)
>
> diff --git a/fs/quota/dquot.c b/fs/quota/dquot.c
> index fc20e06c56ba..6a236bdaef89 100644
> --- a/fs/quota/dquot.c
> +++ b/fs/quota/dquot.c
> @@ -223,9 +223,9 @@ static void put_quota_format(struct quota_format_type *fmt)
>
> /*
> * Dquot List Management:
> - * The quota code uses three lists for dquot management: the inuse_list,
> - * free_dquots, and dquot_hash[] array. A single dquot structure may be
> - * on all three lists, depending on its current state.
> + * The quota code uses four lists for dquot management: the inuse_list,
> + * free_dquots, dqi_dirty_list, and dquot_hash[] array. A single dquot
> + * structure may be on some of those lists, depending on its current state.
> *
> * All dquots are placed to the end of inuse_list when first created, and this
> * list is used for invalidate operation, which must look at every dquot.
> @@ -236,6 +236,10 @@ static void put_quota_format(struct quota_format_type *fmt)
> * dqstats.free_dquots gives the number of dquots on the list. When
> * dquot is invalidated it's completely released from memory.
> *
> + * Dirty dquots are added to the dqi_dirty_list of quota_info when mark
> + * dirtied, and this list is searched when writeback diry dquots to
> + * quota file.
> + *
> * Dquots with a specific identity (device, type and id) are placed on
> * one of the dquot_hash[] hash chains. The provides an efficient search
> * mechanism to locate a specific dquot.
> --
> 2.17.2
>
>
--
Jan Kara <jack@xxxxxxxx>
SUSE Labs, CR