[PATCH v2] drm/omap: Don't dereference list head when the connectors list is empty
Hi Rob, On Tuesday 24 December 2013 12:58:01 Laurent Pinchart wrote: > The connectors list iterator returns the list head when the list is > empty. Fix it by returning NULL in that case. > > Signed-off-by: Laurent Pinchart Could you please take this patch in your tree ? > --- > drivers/gpu/drm/omapdrm/omap_fb.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > Changes since v1: > > - Use list_first_entry_or_null > > diff --git a/drivers/gpu/drm/omapdrm/omap_fb.c > b/drivers/gpu/drm/omapdrm/omap_fb.c index f2b8f06..2c3acb3 100644 > --- a/drivers/gpu/drm/omapdrm/omap_fb.c > +++ b/drivers/gpu/drm/omapdrm/omap_fb.c > @@ -302,7 +302,8 @@ struct drm_connector > *omap_framebuffer_get_next_connector( struct drm_connector *connector = > from; > > if (!from) > - return list_first_entry(connector_list, typeof(*from), head); > + return list_first_entry_or_null(connector_list, typeof(*from), > + head); > > list_for_each_entry_from(connector, connector_list, head) { > if (connector != from) { -- Regards, Laurent Pinchart
[PATCH v2] drm/omap: Don't dereference list head when the connectors list is empty
On Fri, Mar 28, 2014 at 5:56 PM, Laurent Pinchart wrote: > Hi Rob, > > On Tuesday 24 December 2013 12:58:01 Laurent Pinchart wrote: >> The connectors list iterator returns the list head when the list is >> empty. Fix it by returning NULL in that case. >> >> Signed-off-by: Laurent Pinchart > > Could you please take this patch in your tree ? Tomi has been sending pull-req's for omapdrm, so it should probably go via his tree. (Tomi, I'll be sending a pull-req in a couple days, so if you don't have anything queued up for 3.15 it isn't a problem for me to toss this in, fwiw) In either case, the patch is: Reviewed-by: Rob Clark > >> --- >> drivers/gpu/drm/omapdrm/omap_fb.c | 3 ++- >> 1 file changed, 2 insertions(+), 1 deletion(-) >> >> Changes since v1: >> >> - Use list_first_entry_or_null >> >> diff --git a/drivers/gpu/drm/omapdrm/omap_fb.c >> b/drivers/gpu/drm/omapdrm/omap_fb.c index f2b8f06..2c3acb3 100644 >> --- a/drivers/gpu/drm/omapdrm/omap_fb.c >> +++ b/drivers/gpu/drm/omapdrm/omap_fb.c >> @@ -302,7 +302,8 @@ struct drm_connector >> *omap_framebuffer_get_next_connector( struct drm_connector *connector = >> from; >> >> if (!from) >> - return list_first_entry(connector_list, typeof(*from), head); >> + return list_first_entry_or_null(connector_list, typeof(*from), >> + head); >> >> list_for_each_entry_from(connector, connector_list, head) { >> if (connector != from) { > > -- > Regards, > > Laurent Pinchart >
[PATCH v2] drm/omap: Don't dereference list head when the connectors list is empty
The connectors list iterator returns the list head when the list is empty. Fix it by returning NULL in that case. Signed-off-by: Laurent Pinchart --- drivers/gpu/drm/omapdrm/omap_fb.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) Changes since v1: - Use list_first_entry_or_null diff --git a/drivers/gpu/drm/omapdrm/omap_fb.c b/drivers/gpu/drm/omapdrm/omap_fb.c index f2b8f06..2c3acb3 100644 --- a/drivers/gpu/drm/omapdrm/omap_fb.c +++ b/drivers/gpu/drm/omapdrm/omap_fb.c @@ -302,7 +302,8 @@ struct drm_connector *omap_framebuffer_get_next_connector( struct drm_connector *connector = from; if (!from) - return list_first_entry(connector_list, typeof(*from), head); + return list_first_entry_or_null(connector_list, typeof(*from), + head); list_for_each_entry_from(connector, connector_list, head) { if (connector != from) { -- Regards, Laurent Pinchart