On Wed, 2006-02-22 at 06:56, Takshak C. wrote: > Hal Rosenstock wrote: > > > Please throw some light on this. Do you have any userspace SA support for > > > retrieving path, service record > > > information ? > > > > > > > There have been discussions about userspace SA support but nothing > > currently for OpenIB (gen2). Currently, you can get this by using > > > Could you please tell me, when userspace SA support will be available > in openIB gen2.
I don't know but I'm not sure how much this helps you based on your questions below. > > osm_vendor_ibumad_sa.c which supports most SA requests. It is built as > > part of libosmvendor (part of the OpenSM build) but can be used outside > > of OpenSM. It is used by osmtest if you want to look at some use cases. > > It obtains PathRecords and ServiceRecords. That might be an easier > > direction to go than trying to use the management libraries to build the > > pieces of a userspace SA client you want. > > > > -- Hal > > > See, to execute osmtest, I found that openSM instance must be there. Must be where ? What is your IB configuration ? > So, even if I use part > of libosmvendor library ( osm_vendor_ibumad_sa.c) functions, I have to > start openSM > instance to execute the SA query successfully. An SM is needed in the subnet and SA is part of that and answers such queries. > Without starting openSM client, I m able to retrieve node description, > node info, SM info, > port info by using management libraries libibumad and libibmad. of the local node only (until the SM brings up the subnet). > What I want to achieve is, without talking with openSM instance, my SA > query client > should go and get the required information. Why ? > Is this possible ?. No. What would you query for paths to if the subnet were not up ? -- Hal > Would like to know your inputs on this. > > Regards, > - Takshak > > > Regards. > > > - Takshak > > > > > > > > > Hal Rosenstock wrote: > > > > > > > > > > Hi, > > > > > > > > There are a couple of issues with the below. > > > > > > > > 1. SA MAD structure is missing the RMPP header. Once I saw that I > > > > didn't check for further issues with the format. > > > > > > > > 2. I will assume your register call sets RMPP. > > > > > > > > 3. SA class version is 2. > > > > > > > > What SM are you using ? If you are using OpenSM, you can turn on > > > > verbose and see if the packet is seen by the SM. You could also enable > > > > madeye (in utils) to see if the packet is sent (and if anything is > > > > received back). > > > > > > > > -- Hal > > > > > > > > ________________________________ > > > > > > > > From: [EMAIL PROTECTED] on behalf of Takshak C. > > > > Sent: Mon 2/6/2006 8:00 AM > > > > To: [email protected] > > > > Subject: [openib-general] Get Table Records for SA Attribute ID ? > > > > > > > > > > > > > > > > Hi, > > > > > > > > I m trying to get the table records for SA attribute ID in following > > > > way. > > > > But, I m not getting a single record, could anyone comment on the > > > > problem. > > > > > > > > 1. I have created saMadFormat structure described in the specification > > > > as below: > > > > > > > > struct saMadFormat > > > > { > > > > > > > > uint8_t base_version ; > > > > uint8_t mgmt_class ; > > > > uint8_t class_version ; > > > > uint8_t sa_method ; > > > > uint16_t status ; > > > > uint16_t not_used ; > > > > uint64_t tid ; > > > > uint16_t attr_id ; > > > > uint16_t resv ; > > > > uint32_t attr_mod ; > > > > uint64_t sa_key; > > > > uint64_t sm_key ; > > > > uint32_t seg_num ; > > > > uint32_t payload_len ; > > > > uint8_t frag_flag ; > > > > uint8_t edit_mod ; > > > > uint16_t window ; > > > > uint32_t endRID ; > > > > uint64_t comp_mask ; > > > > uint8_t adminData[192] ; > > > > }; > > > > > > > > 2. Then I have done all the basic operations like umad_open, > > > > umad_register for the IB_SA_CLASS > > > > and umad_open_port etc successfully. > > > > > > > > 3. struct saMadFormat *saQuery = (struct > > > > saMadFormat*)(umad_get_mad(umad)); > > > > memset(saQuery, 0, sizeof(*saQuery)); > > > > > > > > saQuery->base_version = 1; > > > > saQuery->mgmt_class = IB_SA_CLASS ; > > > > saQuery->class_version = 1 ; > > > > saQuery->sa_method = IB_MAD_METHOD_GET_TABLE ; > > > > saQuery->attr_id = IB_SA_ATTR_PATHRECORD ; > > > > saQuery->attr_mod = 0 ; > > > > saQuery->tid = htonll(drmad_tid++); > > > > saQuery->endRID = 0 ; > > > > > > > > umad_set_addr(umad, lid, 1, 0, IB_DEFAULT_QP1_QKEY); > > > > umad_set_grh(umad, 0); > > > > umad_set_pkey(umad, 0xFFFF); > > > > > > > > 4. length = IB_MAD_SIZE; > > > > > > > > if (umad_send(portid, mad_agent, umad, length, timeout_ms, 0) < 0) > > > > IBPANIC("send failed"); > > > > > > > > > > > > if (umad_recv(portid, umad, &length, -1) != mad_agent) > > > > IBPANIC("recv error: %s", drmad_status_str(saQuery)); > > > > > > > > > > > > > > > > > > > > if (!dump_char) { > > > > xdump(stdout, 0, saQuery->adminData, 192); > > > > return 0; > > > > } > > > > > > > > I m expecting that, I will get the resultant data in saQuery->adminData. > > > > Is this correct ? If not then, how should I retrieve the table records ? > > > > Any Idea ? > > > > > > > > > > > > Thanks > > > > - Takshak > > > > > > > > _______________________________________________ > > > > openib-general mailing list > > > > [email protected] > > > > http://openib.org/mailman/listinfo/openib-general > > > > > > > > To unsubscribe, please visit > > > > http://openib.org/mailman/listinfo/openib-general > > > > > > > > > > > > > > > > > > > > > > > > > > > > > _______________________________________________ openib-general mailing list [email protected] http://openib.org/mailman/listinfo/openib-general To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general
