Currently the backoff algorithm for when to retry alua rtpg
requests progresses geometrically as so:
2, 4, 8, 16, 32, 64... seconds.
This progression can lead to un-needed delay in retrying
alua rtpg requests when the rtpgs are delayed.  A less
aggressive backoff algorithm that is additive would not
lead to such large jumps when delays start getting long, but
would backoff linearly:
2, 4, 6, 8, 10... seconds.
Signed-off-by: Martin George <marting@netapp.com>
Signed-off-by: Rob Evers <revers@redhat.com>
Reviewed-by: Babu Moger <babu.moger@netapp.com>
Signed-off-by: James Bottomley <JBottomley@Parallels.com>
        unsigned char *ucp;
        unsigned err;
        bool rtpg_ext_hdr_req = 1;
-       unsigned long expiry, interval = 1000;
+       unsigned long expiry, interval = 0;
        unsigned int tpg_desc_tbl_off;
        unsigned char orig_transition_tmo;
 
        case TPGS_STATE_TRANSITIONING:
                if (time_before(jiffies, expiry)) {
                        /* State transition, retry */
-                       interval *= 2;
+                       interval += 2000;
                        msleep(interval);
                        goto retry;
                }