RDMA/nes: Rewrite expression to avoid undefined semantics
authorRoland Dreier <rolandd@cisco.com>
Wed, 14 Jul 2010 20:29:21 +0000 (13:29 -0700)
committerRoland Dreier <rolandd@cisco.com>
Wed, 14 Jul 2010 20:29:21 +0000 (13:29 -0700)
Change code like

x = expr(++x)

that assigns to x twice without a sequence point in between to the
intended (and well-defined)

x = expr(x + 1)

Signed-off-by: Roland Dreier <rolandd@cisco.com>
drivers/infiniband/hw/nes/nes_hw.c

index 57874a1..f41d890 100644 (file)
@@ -1970,7 +1970,7 @@ void nes_destroy_nic_qp(struct nes_vnic *nesvnic)
                        dev_kfree_skb(
                                nesvnic->nic.tx_skb[nesvnic->nic.sq_tail]);
 
-               nesvnic->nic.sq_tail = (++nesvnic->nic.sq_tail)
+               nesvnic->nic.sq_tail = (nesvnic->nic.sq_tail + 1)
                                        & (nesvnic->nic.sq_size - 1);
        }