Hi Jani, On Tue, Nov 28, 2023 at 02:54:02PM +0200, Jani Nikula wrote: > On Tue, 28 Nov 2023, Maxime Ripard <mripard@xxxxxxxxxx> wrote: > > All the drm_connector_init variants take at least a pointer to the > > device, connector and hooks implementation. > > > > However, none of them check their value before dereferencing those > > pointers which can lead to a NULL-pointer dereference if the author > > isn't careful. > > Arguably oopsing on the spot is preferrable when this can't be caused by > user input. It's always a mistake that should be caught early during > development. > > Not everyone checks the return value of drm_connector_init and friends, > so those cases will lead to more mysterious bugs later. And probably > oopses as well. So maybe we can do both then, with something like if (WARN_ON(!dev)) return -EINVAL if (drm_WARN_ON(dev, !connector || !funcs)) return -EINVAL; I'd still like to check for this, so we can have proper testing, and we already check for those pointers in some places (like funcs in drm_connector_init), so if we don't cover everything we're inconsistent. Maxime
Attachment:
signature.asc
Description: PGP signature