]> git.openfabrics.org - ~shefty/ibacm.git/commitdiff
ibacm: Avoid negative shift for subnet timeout
authorHal Rosenstock <hal@mellanox.com>
Thu, 31 May 2012 22:35:41 +0000 (15:35 -0700)
committerSean Hefty <sean.hefty@intel.com>
Thu, 31 May 2012 22:46:09 +0000 (15:46 -0700)
Otherwise resulting port subnet timeout may be too large.

Signed-off-by: Hal Rosenstock <hal@mellanox.com>
Signed-off-by: Sean Hefty <sean.hefty@intel.com>
src/acm.c

index 376f294f6895f8c4bfa2611151706a6d4ab934dd..c940df3ab60338b168ca26b44027165ee53c78d9 100644 (file)
--- a/src/acm.c
+++ b/src/acm.c
@@ -2795,7 +2795,8 @@ static void acm_port_up(struct acm_port *port)
 
        port->mtu = attr.active_mtu;
        port->rate = acm_get_rate(attr.active_width, attr.active_speed);
-       port->subnet_timeout = 1 << (attr.subnet_timeout - 8);
+       if (attr.subnet_timeout >= 8)
+               port->subnet_timeout = 1 << (attr.subnet_timeout - 8);
        for (port->gid_cnt = 0;; port->gid_cnt++) {
                ret = ibv_query_gid(port->dev->verbs, port->port_num, port->gid_cnt, &gid);
                if (ret || !gid.global.interface_id)