IB/hfi1: Handle initial value of 0 for CCTI setting
[linux-2.6-block.git] / drivers / infiniband / hw / hfi1 / mad.c
index 1277e1c929cecc7b1799f60a25c7b9d3d170c15a..cf8dba34fe30ec67d833315d7b00b7130513a6bf 100644 (file)
@@ -3701,7 +3701,11 @@ static void apply_cc_state(struct hfi1_pportdata *ppd)
 
        *new_cc_state = *old_cc_state;
 
-       new_cc_state->cct.ccti_limit = ppd->total_cct_entry - 1;
+       if (ppd->total_cct_entry)
+               new_cc_state->cct.ccti_limit = ppd->total_cct_entry - 1;
+       else
+               new_cc_state->cct.ccti_limit = 0;
+
        memcpy(new_cc_state->cct.entries, ppd->ccti_entries,
               ppd->total_cct_entry * sizeof(struct ib_cc_table_entry));