[ofa-general] mthca max_sge value... ugh.

Roland Dreier rdreier at cisco.com
Sun May 18 22:54:07 PDT 2008


 > 1. Section 11.2.1.2 -- Query HCA:
 > • The maximum number of scatter/gather entries per Work Re-
 >   quest supported by this HCA, for all Work Requests other
 >   than Reliable Datagram Receive Queue Work Requests.
 > 
 > This certainly implies that the create verb should not return
 > a number of scatter-gather entries greater than the max_sge value
 > (which is the max value supported by this HCA).

I take this to mean that Query HCA should return the maxium number of
s/g entries supported for all work requests (leaving aside RD).  In
other words, if some work requests support 4 s/g entries and others
support 8, then query HCA should return 4 as the max s/g entries, since
this is the largest number that *all* work requests support (although
some support 8).

 > Otherwise, why have a max_sge value returned by Query HCA?  What use
 > would it serve?

It gives an upper bound on what consumers can request in a simple way,
without having to have the complexity of per-transport limits for send
and receive queues separately.

 > Furthermore, how can the HCA return an sge value
 > in Create QP which exceeds the max_sge value returned by Query HCA? If
 > it does, the sge value in Create QP should be the one returned in
 > Query HCA!

The mlx4 case is a simple example: send work requests support more s/g
entries than receive work requests do.  So query HCA must return the
lower receive work request limit, but I see no reason why create QP
can't return the actual limit for send work requests.

 - R.



More information about the general mailing list