Lines Matching refs:method
91 static int method_in_use(struct ib_mad_mgmt_method_table **method,
187 struct ib_mad_mgmt_method_table *method; in is_vendor_method_in_use() local
192 method = vendor_class->method_table[i]; in is_vendor_method_in_use()
193 if (method) { in is_vendor_method_in_use()
194 if (method_in_use(&method, mad_reg_req)) in is_vendor_method_in_use()
206 return ((hdr->method & IB_MGMT_METHOD_RESP) || in ib_response_mad()
207 (hdr->method == IB_MGMT_METHOD_TRAP_REPRESS) || in ib_response_mad()
258 struct ib_mad_mgmt_method_table *method; in ib_register_mad_agent() local
458 method = class->method_table[mgmt_class]; in ib_register_mad_agent()
459 if (method) { in ib_register_mad_agent()
460 if (method_in_use(&method, in ib_register_mad_agent()
1386 static int method_in_use(struct ib_mad_mgmt_method_table **method, in method_in_use() argument
1392 if ((*method)->agent[i]) { in method_in_use()
1400 static int allocate_method_table(struct ib_mad_mgmt_method_table **method) in allocate_method_table() argument
1403 *method = kzalloc(sizeof **method, GFP_ATOMIC); in allocate_method_table()
1404 return (*method) ? 0 : (-ENOMEM); in allocate_method_table()
1410 static int check_method_table(struct ib_mad_mgmt_method_table *method) in check_method_table() argument
1415 if (method->agent[i]) in check_method_table()
1467 static void remove_methods_mad_agent(struct ib_mad_mgmt_method_table *method, in remove_methods_mad_agent() argument
1474 if (method->agent[i] == agent) in remove_methods_mad_agent()
1475 method->agent[i] = NULL; in remove_methods_mad_agent()
1484 struct ib_mad_mgmt_method_table **method; in add_nonoui_reg_req() local
1498 method = &(*class)->method_table[mgmt_class]; in add_nonoui_reg_req()
1499 if ((ret = allocate_method_table(method))) in add_nonoui_reg_req()
1502 method = &(*class)->method_table[mgmt_class]; in add_nonoui_reg_req()
1503 if (!*method) { in add_nonoui_reg_req()
1505 if ((ret = allocate_method_table(method))) in add_nonoui_reg_req()
1511 if (method_in_use(method, mad_reg_req)) in add_nonoui_reg_req()
1516 (*method)->agent[i] = agent_priv; in add_nonoui_reg_req()
1522 remove_methods_mad_agent(*method, agent_priv); in add_nonoui_reg_req()
1524 if (!check_method_table(*method)) { in add_nonoui_reg_req()
1526 kfree(*method); in add_nonoui_reg_req()
1527 *method = NULL; in add_nonoui_reg_req()
1545 struct ib_mad_mgmt_method_table **method; in add_oui_reg_req() local
1574 method = &(*vendor_table)->vendor_class[ in add_oui_reg_req()
1576 if (!*method) in add_oui_reg_req()
1585 method = &(*vendor_table)->vendor_class[ in add_oui_reg_req()
1588 if (!*method) { in add_oui_reg_req()
1589 ret = allocate_method_table(method); in add_oui_reg_req()
1603 if (method_in_use(method, mad_reg_req)) in add_oui_reg_req()
1608 (*method)->agent[i] = agent_priv; in add_oui_reg_req()
1614 remove_methods_mad_agent(*method, agent_priv); in add_oui_reg_req()
1616 if (!check_method_table(*method)) { in add_oui_reg_req()
1618 kfree(*method); in add_oui_reg_req()
1619 *method = NULL; in add_oui_reg_req()
1640 struct ib_mad_mgmt_method_table *method; in remove_mad_reg_req() local
1660 method = class->method_table[mgmt_class]; in remove_mad_reg_req()
1661 if (method) { in remove_mad_reg_req()
1663 remove_methods_mad_agent(method, agent_priv); in remove_mad_reg_req()
1665 if (!check_method_table(method)) { in remove_mad_reg_req()
1667 kfree(method); in remove_mad_reg_req()
1697 method = vendor_class->method_table[index]; in remove_mad_reg_req()
1698 if (method) { in remove_mad_reg_req()
1700 remove_methods_mad_agent(method, agent_priv); in remove_mad_reg_req()
1705 if (!check_method_table(method)) { in remove_mad_reg_req()
1707 kfree(method); in remove_mad_reg_req()
1754 struct ib_mad_mgmt_method_table *method; in find_mad_agent() local
1775 method = class->method_table[convert_mgmt_class( in find_mad_agent()
1777 if (method) in find_mad_agent()
1778 mad_agent = method->agent[mad_hdr->method & in find_mad_agent()
1794 method = vendor_class->method_table[index]; in find_mad_agent()
1795 if (method) { in find_mad_agent()
1796 mad_agent = method->agent[mad_hdr->method & in find_mad_agent()
1841 (mad_hdr->method != IB_MGMT_METHOD_SEND)) in validate_mad()
2172 if (recv_hdr->method == IB_MGMT_METHOD_GET || in generate_unmatched_resp()
2173 recv_hdr->method == IB_MGMT_METHOD_SET) { in generate_unmatched_resp()
2178 resp_hdr->method = IB_MGMT_METHOD_GET_RESP; in generate_unmatched_resp()