[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <cb91ef9f-62ab-6bca-2bde-ac1977ec6f37@linux.alibaba.com>
Date: Fri, 22 Apr 2022 10:44:19 +0800
From: JeffleXu <jefflexu@...ux.alibaba.com>
To: David Howells <dhowells@...hat.com>
Cc: linux-cachefs@...hat.com, xiang@...nel.org, chao@...nel.org,
linux-erofs@...ts.ozlabs.org, torvalds@...ux-foundation.org,
gregkh@...uxfoundation.org, willy@...radead.org,
linux-fsdevel@...r.kernel.org, joseph.qi@...ux.alibaba.com,
bo.liu@...ux.alibaba.com, tao.peng@...ux.alibaba.com,
gerry@...ux.alibaba.com, eguan@...ux.alibaba.com,
linux-kernel@...r.kernel.org, luodaowen.backend@...edance.com,
tianzichen@...ishou.com, fannaihao@...du.com,
zhangjiachen.jaycee@...edance.com
Subject: Re: [PATCH v9 03/21] cachefiles: unbind cachefiles gracefully in
on-demand mode
On 4/21/22 10:02 PM, David Howells wrote:
> Jeffle Xu <jefflexu@...ux.alibaba.com> wrote:
>
>> + struct kref unbind_pincount;/* refcount to do daemon unbind */
>
> Please use refcount_t or atomic_t, especially as this isn't the refcount for
> the structure.
Okay, will be done in the next version.
>
>> - cachefiles_daemon_unbind(cache);
>> -
>> /* clean up the control file interface */
>> cache->cachefilesd = NULL;
>> file->private_data = NULL;
>> cachefiles_open = 0;
>
> Please call cachefiles_daemon_unbind() before the cleanup.
Since the cachefiles_struct struct will be freed once the pincount is
decreased to 0, "cache->cachefilesd = NULL;" needs to be done before
decreasing the pincount. BTW, "cachefiles_open = 0;" indeed should be
done only when pincount has been decreased to 0.
--
Thanks,
Jeffle
Powered by blists - more mailing lists