[PATCH 06/10] cachefiles, erofs: Fix NULL deref in when cachefiles is not doing ondemand-mode
David Howells
dhowells at redhat.com
Tue Jan 23 09:01:19 AEDT 2024
Jingbo Xu <jefflexu at linux.alibaba.com> wrote:
> > - ret = cachefiles_ondemand_init_object(object);
> > - if (ret < 0)
> > - goto err_unuse;
> > + if (object->ondemand) {
> > + ret = cachefiles_ondemand_init_object(object);
> > + if (ret < 0)
> > + goto err_unuse;
> > + }
>
> I'm not sure if object->ondemand shall be checked by the caller or
> inside cachefiles_ondemand_init_object(), as
> cachefiles_ondemand_clean_object() is also called without checking
> object->ondemand. cachefiles_ondemand_clean_object() won't trigger the
> NULL oops as the called cachefiles_ondemand_send_req() will actually
> checks that.
Meh. The above doesn't actually build if CONFIG_CACHEFILES_ONDEMAND=N. I
think I have to push the check down into cachefiles_ondemand_init_object()
instead.
David
More information about the Linux-erofs
mailing list