[PATCH v9 03/21] cachefiles: unbind cachefiles gracefully in on-demand mode
jefflexu at linux.alibaba.com
Fri Apr 22 12:44:19 AEST 2022
On 4/21/22 10:02 PM, David Howells wrote:
> Jeffle Xu <jefflexu at linux.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.
More information about the Linux-erofs