[openib-general] Re: [PATCH] [SRP] Fix CM redirection in SRP
Grant Grundler
iod00d at hp.com
Mon Sep 12 11:20:49 PDT 2005
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
More information about the general
mailing list