[openib-general] [PATCH]proposal for enabling partial ports on HCA
Shirley Ma
xma at us.ibm.com
Wed Oct 5 09:52:53 PDT 2005
One HCA could support 256 ports. The current implementation doesn't
support partially successful ports, which would be a waste if any of the
port failure. And after adding some break points to induce errors in each
client during registration, some of the potential problems will be
triggered. Here is my proposal to enable partial ports. Basically the
upper user's physical ports number is going to replaced by the successful
ports bitmap of the client it depends on. I have done some research on
each client for enabling partially ports on HCA, and created some patches
and tested the idea. Please correct if my understanding is wrong. Also if
you have other idea, please share.
cache_client: This client allows partially ports. But ib_cache_update()
might fail on a port whose pkey_cache, gid_cache fail to be generated, so
all the upper level users can be only allowed on the successful ports not
the HCA's physical ports number. There are 9 upper users there, they are:
ib_srp,ib_sdp,ib_uverbs,ib_umad,ib_cm, ib_ipoib,ib_sa,ib_mad.
mad_client: This client doesn't allow partially ports. I would like to
suggestion only enable the ports when both QP0&QP1 are successful. Don't
know where QP0 can be used while QP1 is absent. (You can tell me if there
is a case.) The upper users are ib_umad, ib_cm, ib_sa.
cm_client: This client doesn't allow partial ports. To enable partial
ports, these upper users ib_ucm, ib_srp, ib_sdp can be only allowed on the
successful ports.
sa_client: This client doesn't allow partial ports. To enable partial
ports, these upper users ib_ipoib, ib_srp, ib_sdp, ib_at can be only
allowed on the successful ports.
ipoib_client: This client does allow partial ports.
The number of physical ports should be replaced by each client's
successful ports. For example ipoib_client will be allowed on sa_client
ports bitmap, sa_client will be allowed on mad_client ports bitmap,
mad_client will be allowed on cache_client ports bitmap.
Adding bitmap field is not necessary, the ib_cache, ib_device,
ib_sa_device, cm_device stored all the ports info. ib_uat & kdapl &
ib_ping should be updated too.
Thanks
Shirley Ma
IBM Linux Technology Center
15300 SW Koll Parkway
Beaverton, OR 97006-6063
Phone(Fax): (503) 578-7638
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openfabrics.org/pipermail/general/attachments/20051005/be0f367a/attachment.html>
More information about the general
mailing list