Re: [PATCH 072/141] can: peak_usb: Fix fall-through warnings for Clang

From: Joe Perches
Date: Sat Nov 21 2020 - 21:50:08 EST


On Sun, 2020-11-22 at 00:04 +0100, Marc Kleine-Budde wrote:
> On 11/21/20 8:50 PM, Joe Perches wrote:
> > > What about moving the default to the end if the case, which is more common anyways:
> > >
> > > diff --git a/drivers/net/can/usb/peak_usb/pcan_usb_core.c b/drivers/net/can/usb/peak_usb/pcan_usb_core.c
> > []
> > > @@ -295,16 +295,16 @@ static void peak_usb_write_bulk_callback(struct urb *urb)
> > >                 netif_trans_update(netdev);
> > >                 break;
> > >  
> > >
> > > - default:
> > > - if (net_ratelimit())
> > > - netdev_err(netdev, "Tx urb aborted (%d)\n",
> > > - urb->status);
> > >         case -EPROTO:
> > >         case -ENOENT:
> > >         case -ECONNRESET:
> > >         case -ESHUTDOWN:
> > > -
> > >                 break;
> > > +
> > > + default:
> > > + if (net_ratelimit())
> > > + netdev_err(netdev, "Tx urb aborted (%d)\n",
> > > + urb->status);
> >
> > That's fine and is more generally used style but this
> > default: case should IMO also end with a break;
> >
> > + break;
>
> I don't mind.
>
> process/coding-style.rst is not totally clear about the break after the default,
> if this is the lase one the switch statement.

deprecated.rst has:

All switch/case blocks must end in one of:

* break;
* fallthrough;
* continue;
* goto <label>;
* return [expression];

I suppose that could be moved into coding-style along with
maybe a change to "all switch/case/default blocks"