Message ID | 20210424145443.170413-1-linux@roeck-us.net |
---|---|
State | New |
Headers | show |
Series | [v2] usb: gadget: Drop unnecessary NULL checks after container_of | expand |
Hi Guenter, Thank you for the patch. On Sat, Apr 24, 2021 at 07:54:43AM -0700, Guenter Roeck wrote: > The parameters passed to allow_link and drop_link functions are never NULL. > That means the result of container_of() on those parameters is also > never NULL, even though the reference into the structure points to the > first element of the structure. Remove the unnecessary NULL checks. > > This change was made automatically with the following Coccinelle script. > A now obsolete 'out:' label was removed manually. > > @@ > type t; > identifier v; > statement s; > @@ > > <+... > ( > t v = container_of(...); > | > v = container_of(...); > ) > ... > when != v > - if (\( !v \| v == NULL \) ) s > ...+> > > Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com> > Cc: Felipe Balbi <balbi@kernel.org> > Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> > Acked-by: Felipe Balbi <balbi@kernel.org> > Signed-off-by: Guenter Roeck <linux@roeck-us.net> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> > --- > v2: Dropped RFC, added Acked-by:, dropped now obsolete 'out:' label > > drivers/usb/gadget/function/uvc_configfs.c | 5 ----- > 1 file changed, 5 deletions(-) > > diff --git a/drivers/usb/gadget/function/uvc_configfs.c b/drivers/usb/gadget/function/uvc_configfs.c > index 00fb58e50a15..7775f9902360 100644 > --- a/drivers/usb/gadget/function/uvc_configfs.c > +++ b/drivers/usb/gadget/function/uvc_configfs.c > @@ -914,8 +914,6 @@ static int uvcg_streaming_header_allow_link(struct config_item *src, > > target_fmt = container_of(to_config_group(target), struct uvcg_format, > group); > - if (!target_fmt) > - goto out; > > uvcg_format_set_indices(to_config_group(target)); > > @@ -955,8 +953,6 @@ static void uvcg_streaming_header_drop_link(struct config_item *src, > mutex_lock(&opts->lock); > target_fmt = container_of(to_config_group(target), struct uvcg_format, > group); > - if (!target_fmt) > - goto out; > > list_for_each_entry_safe(format_ptr, tmp, &src_hdr->formats, entry) > if (format_ptr->fmt == target_fmt) { > @@ -968,7 +964,6 @@ static void uvcg_streaming_header_drop_link(struct config_item *src, > > --target_fmt->linked; > > -out: > mutex_unlock(&opts->lock); > mutex_unlock(su_mutex); > } -- Regards, Laurent Pinchart
diff --git a/drivers/usb/gadget/function/uvc_configfs.c b/drivers/usb/gadget/function/uvc_configfs.c index 00fb58e50a15..7775f9902360 100644 --- a/drivers/usb/gadget/function/uvc_configfs.c +++ b/drivers/usb/gadget/function/uvc_configfs.c @@ -914,8 +914,6 @@ static int uvcg_streaming_header_allow_link(struct config_item *src, target_fmt = container_of(to_config_group(target), struct uvcg_format, group); - if (!target_fmt) - goto out; uvcg_format_set_indices(to_config_group(target)); @@ -955,8 +953,6 @@ static void uvcg_streaming_header_drop_link(struct config_item *src, mutex_lock(&opts->lock); target_fmt = container_of(to_config_group(target), struct uvcg_format, group); - if (!target_fmt) - goto out; list_for_each_entry_safe(format_ptr, tmp, &src_hdr->formats, entry) if (format_ptr->fmt == target_fmt) { @@ -968,7 +964,6 @@ static void uvcg_streaming_header_drop_link(struct config_item *src, --target_fmt->linked; -out: mutex_unlock(&opts->lock); mutex_unlock(su_mutex); }