On Mon, Sep 12, 2005 at 09:33:09AM -0700, Roland Dreier wrote:
...
> Index: infiniband/ulp/srp/ib_srp.c
> ===================================================================
> --- infiniband/ulp/srp/ib_srp.c       (revision 3372)
> +++ infiniband/ulp/srp/ib_srp.c       (working copy)
> @@ -386,11 +386,48 @@ static void srp_remove_work(void *target
>       scsi_host_put(target->scsi_host);
>  }
>  
> +static int srp_connect_target(struct srp_target_port *target)
> +{
> +     int ret;
> +
> +     while (1) {
> +             init_completion(&target->done);
> +             ret = srp_send_req(target);
> +             if (ret)
> +                     return ret;
> +             wait_for_completion(&target->done);
> +
> +             /*
> +              * The CM event handling code will set status to
> +              * SRP_PORT_REDIRECT if we get a port redirect REJ
> +              * back, or SRP_DLID_REDIRECT if we get a lid/qp
> +              * redirect REJ back.
> +              */
> +             switch (target->status) {
> +             case 0:
> +                     return 0;
> +
> +             case SRP_PORT_REDIRECT:
> +                     ret = srp_lookup_path(target);
> +                     if (ret)
> +                             return ret;
> +                     break;
> +
> +             case SRP_DLID_REDIRECT:
> +                     break;
> +
> +             default:
> +                     return target->status;
> +             }
> +     }
> +}

Roland,
Nothing is returned in the SRP_DLID_REDIRECT case.
I expect this will generate a compiler warning.
I have no clue what it's supposed to do in that case.

grant
_______________________________________________
openib-general mailing list
openib-general@openib.org
http://openib.org/mailman/listinfo/openib-general

To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general

Reply via email to