Andy Shevchenko <andriy.shevche...@linux.intel.com> writes:

> The missed break statement in the outer switch makes the code fall through
> always and thus always same value will be printed.
>
> Besides that, compiler warns about missed fall through marker:
>
> drivers/usb/dwc3/./trace.h: In function ‘trace_raw_output_dwc3_log_trb’:
> drivers/usb/dwc3/./trace.h:246:4: warning: this statement may fall through 
> [-Wimplicit-fallthrough=]
>     switch (pcm) {
>     ^~~~~~
>
> Refactor nested switch statements to work correctly without
> compilation warnings.
>
> Fixes: fa8d965d736b ("usb: dwc3: trace: pretty print high-bandwidth transfers 
> too")
> Cc: Felipe Balbi <felipe.ba...@linux.intel.com>
> Signed-off-by: Andy Shevchenko <andriy.shevche...@linux.intel.com>
> ---
>  drivers/usb/dwc3/trace.h | 4 +---
>  1 file changed, 1 insertion(+), 3 deletions(-)
>
> diff --git a/drivers/usb/dwc3/trace.h b/drivers/usb/dwc3/trace.h
> index f22714cce070..8e1625a6c19f 100644
> --- a/drivers/usb/dwc3/trace.h
> +++ b/drivers/usb/dwc3/trace.h
> @@ -238,7 +238,7 @@ DECLARE_EVENT_CLASS(dwc3_log_trb,
>       ),
>       TP_printk("%s: trb %p buf %08x%08x size %s%d ctrl %08x 
> (%c%c%c%c:%c%c:%s)",
>               __get_str(name), __entry->trb, __entry->bph, __entry->bpl,
> -             ({char *s;
> +             ({ char *s = "";
>               int pcm = ((__entry->size >> 24) & 3) + 1;
>               switch (__entry->type) {
>               case USB_ENDPOINT_XFER_INT:
> @@ -254,8 +254,6 @@ DECLARE_EVENT_CLASS(dwc3_log_trb,
>                               s = "3x ";
>                               break;
>                       }

easier to add "break" here, no? That would be the minimal fix.

-- 
balbi

Attachment: signature.asc
Description: PGP signature

Reply via email to