Hi Ariel.

I wrote a little checkpatch script to look for missing
switch/case breaks.

http://www.kernelhub.org/?msg=379933&p=2

There are _many_ instances of case blocks in sriov.c
that could be missing breaks as they use fall-throughs.

It would be good if these are actually intended to be
fall-throughs to add a /* fall-through */ comment between
each case block.

For instance:

static void bnx2x_vfop_qctor(struct bnx2x *bp, struct bnx2x_virtf *vf)
{
[...]
        switch (state) {
        case BNX2X_VFOP_QCTOR_INIT:

                /* has this queue already been opened? */
                if (bnx2x_get_q_logical_state(bp, q_params->q_obj) ==
                    BNX2X_Q_LOGICAL_STATE_ACTIVE) {
                        DP(BNX2X_MSG_IOV,
                           "Entered qctor but queue was already up. Aborting 
gracefully\n");
                        goto op_done;
                }

                /* next state */
                vfop->state = BNX2X_VFOP_QCTOR_SETUP;

                q_params->cmd = BNX2X_Q_CMD_INIT;
                vfop->rc = bnx2x_queue_state_change(bp, q_params);

                bnx2x_vfop_finalize(vf, vfop->rc, VFOP_CONT);

        case BNX2X_VFOP_QCTOR_SETUP:
                /* next state */
                vfop->state = BNX2X_VFOP_QCTOR_INT_EN;

                /* copy pre-prepared setup params to the queue-state params */
                vfop->op_p->qctor.qstate.params.setup =
                        vfop->op_p->qctor.prep_qsetup;

                q_params->cmd = BNX2X_Q_CMD_SETUP;
                vfop->rc = bnx2x_queue_state_change(bp, q_params);

                bnx2x_vfop_finalize(vf, vfop->rc, VFOP_CONT);

---

Here's the checkpatch output on that file

$ ./scripts/checkpatch.pl -f --types=missing_break 
drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c
WARNING: Possible switch case/default not preceeded by break or fallthrough 
comment
#326: FILE: drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c:326:
+       case BNX2X_VFOP_QCTOR_SETUP:

WARNING: Possible switch case/default not preceeded by break or fallthrough 
comment
#339: FILE: drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c:339:
+       case BNX2X_VFOP_QCTOR_INT_EN:

WARNING: Possible switch case/default not preceeded by break or fallthrough 
comment
#416: FILE: drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c:416:
+       case BNX2X_VFOP_QDTOR_TERMINATE:

WARNING: Possible switch case/default not preceeded by break or fallthrough 
comment
#425: FILE: drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c:425:
+       case BNX2X_VFOP_QDTOR_CFCDEL:

WARNING: Possible switch case/default not preceeded by break or fallthrough 
comment
#437: FILE: drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c:437:
+       case BNX2X_VFOP_QDTOR_DONE:

WARNING: Possible switch case/default not preceeded by break or fallthrough 
comment
#622: FILE: drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c:622:
+       case BNX2X_VFOP_VLAN_MAC_CONFIG_SINGLE:

WARNING: Possible switch case/default not preceeded by break or fallthrough 
comment
#633: FILE: drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c:633:
+       case BNX2X_VFOP_VLAN_MAC_CHK_DONE:

WARNING: Possible switch case/default not preceeded by break or fallthrough 
comment
#637: FILE: drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c:637:
+       case BNX2X_VFOP_MAC_CONFIG_LIST:

WARNING: Possible switch case/default not preceeded by break or fallthrough 
comment
#650: FILE: drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c:650:
+       case BNX2X_VFOP_VLAN_CONFIG_LIST:

WARNING: Possible switch case/default not preceeded by break or fallthrough 
comment
#662: FILE: drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c:662:
+       default:

WARNING: Possible switch case/default not preceeded by break or fallthrough 
comment
#971: FILE: drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c:971:
+       case BNX2X_VFOP_QSETUP_DONE:

WARNING: Possible switch case/default not preceeded by break or fallthrough 
comment
#1068: FILE: drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c:1068:
+       case BNX2X_VFOP_QFLR_DONE:

WARNING: Possible switch case/default not preceeded by break or fallthrough 
comment
#1119: FILE: drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c:1119:
+       case BNX2X_VFOP_MCAST_ADD:

WARNING: Possible switch case/default not preceeded by break or fallthrough 
comment
#1136: FILE: drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c:1136:
+       case BNX2X_VFOP_MCAST_CHK_DONE:

WARNING: Possible switch case/default not preceeded by break or fallthrough 
comment
#1139: FILE: drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c:1139:
+       default:

WARNING: Possible switch case/default not preceeded by break or fallthrough 
comment
#1217: FILE: drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c:1217:
+       case BNX2X_VFOP_RXMODE_DONE:

WARNING: Possible switch case/default not preceeded by break or fallthrough 
comment
#1326: FILE: drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c:1326:
+       case BNX2X_VFOP_QTEARDOWN_DONE:

WARNING: Possible switch case/default not preceeded by break or fallthrough 
comment
#2985: FILE: drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c:2985:
+       case BNX2X_VFOP_RSS_DONE:

total: 0 errors, 18 warnings, 3683 lines checked

NOTE: Used message types: MISSING_BREAK

drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c has style problems, please 
review.

If any of these errors are false positives, please report
them to the maintainer, see CHECKPATCH in MAINTAINERS.
total: 0 errors, 0 warnings, 2006 lines checked

NOTE: Used message types: MISSING_BREAK


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to