Re: [PATCH v2] IB/rxe: vary the source udp port for receive scaling

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sun, Jun 24, 2018 at 05:40:13PM +0300, Moni Shoua wrote:
> > @@ -726,6 +726,10 @@ int rxe_qp_from_attr(struct rxe_qp *qp, struct ib_qp_attr *attr, int mask,
> >
> >                 case IB_QPS_RTR:
> >                         pr_debug("qp#%d state -> RTR\n", qp_num(qp));
> > +                       qp->src_port = RXE_ROCE_V2_SPORT +
> > +                               (hash_64_generic
> > +                                (((u64)qp->attr.dest_qp_num << 24) +
> > +                                 (u64)qp_num(qp), 14) & 0x3fff);
> Works for RC/UC but not for UD. At this point (mask & IB_QP_DEST_QPN)
> is false for UD transport.
> I think that you need to do similar work in rxe_requester() before
> sending a packet to UD QP.
Hi Moni,
That would put the logic in the main xmit path for UD and would require a per-pkt
src_port field (there's no space in rxe_pkt_info).
Stepping back a bit, I'm wondering whether the dest QPN needs to be included
in the hash. It only helps in the case where you have a source QP talking to
multpile dest QPs on the same dest IP. If UD traffic is spread across multiple
dest IPs you get scaling due to the IP address. Do we really need the extra
logic for UD, or make this simpler and use just the source QPN? 
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux