[PATCH 8/8] gfs2: use lockref_init for qd_lockref

Andreas Gruenbacher agruenba at redhat.com
Thu Jan 16 00:35:03 AEDT 2025


On Wed, Jan 15, 2025 at 10:56 AM Christoph Hellwig <hch at lst.de> wrote:
> Signed-off-by: Christoph Hellwig <hch at lst.de>
> ---
>  fs/gfs2/quota.c | 3 +--
>  1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/fs/gfs2/quota.c b/fs/gfs2/quota.c
> index 72b48f6f5561..58bc5013ca49 100644
> --- a/fs/gfs2/quota.c
> +++ b/fs/gfs2/quota.c
> @@ -236,8 +236,7 @@ static struct gfs2_quota_data *qd_alloc(unsigned hash, struct gfs2_sbd *sdp, str
>                 return NULL;
>
>         qd->qd_sbd = sdp;
> -       qd->qd_lockref.count = 0;
> -       spin_lock_init(&qd->qd_lockref.lock);
> +       lockref_init(&qd->qd_lockref, 0);

Hmm, initializing count to 0 seems to be the odd case and it's fairly
simple to change gfs2 to work with an initial value of 1. I wonder if
lockref_init() should really have a count argument.

>         qd->qd_id = qid;
>         qd->qd_slot = -1;
>         INIT_LIST_HEAD(&qd->qd_lru);
> --
> 2.45.2

Thanks,
Andreas



More information about the Linux-erofs mailing list