Lines Matching refs:inm

850 	struct in6_multi        *inm;  in mld_v1_input_query()  local
927 IN6_FIRST_MULTI(step, inm); in mld_v1_input_query()
928 while (inm != NULL) { in mld_v1_input_query()
929 IN6M_LOCK(inm); in mld_v1_input_query()
930 if (inm->in6m_ifp == ifp) { in mld_v1_input_query()
931 mtp.cst += mld_v1_update_group(inm, timer); in mld_v1_input_query()
933 IN6M_UNLOCK(inm); in mld_v1_input_query()
934 IN6_NEXT_MULTI(step, inm); in mld_v1_input_query()
944 IN6_LOOKUP_MULTI(&mld->mld_addr, ifp, inm); in mld_v1_input_query()
947 if (inm != NULL) { in mld_v1_input_query()
948 IN6M_LOCK(inm); in mld_v1_input_query()
953 mtp.cst = mld_v1_update_group(inm, timer); in mld_v1_input_query()
954 IN6M_UNLOCK(inm); in mld_v1_input_query()
955 IN6M_REMREF(inm); /* from IN6_LOOKUP_MULTI */ in mld_v1_input_query()
982 mld_v1_update_group(struct in6_multi *inm, const int timer) in mld_v1_update_group() argument
984 IN6M_LOCK_ASSERT_HELD(inm); in mld_v1_update_group()
987 ip6_sprintf(&inm->in6m_addr), in mld_v1_update_group()
988 if_name(inm->in6m_ifp), timer)); in mld_v1_update_group()
990 switch (inm->in6m_state) { in mld_v1_update_group()
995 if (inm->in6m_timer != 0 && in mld_v1_update_group()
996 inm->in6m_timer <= timer) { in mld_v1_update_group()
1008 inm->in6m_state = MLD_REPORTING_MEMBER; in mld_v1_update_group()
1009 inm->in6m_timer = MLD_RANDOM_DELAY(timer); in mld_v1_update_group()
1013 inm->in6m_state = MLD_AWAKENING_MEMBER; in mld_v1_update_group()
1019 return inm->in6m_timer; in mld_v1_update_group()
1036 struct in6_multi *inm; in mld_v2_input_query() local
1178 IN6_LOOKUP_MULTI(&mld->mld_addr, ifp, inm); in mld_v2_input_query()
1180 if (inm == NULL) { in mld_v2_input_query()
1184 IN6M_LOCK(inm); in mld_v2_input_query()
1186 if (!ratecheck(&inm->in6m_lastgsrtv, in mld_v2_input_query()
1190 IN6M_UNLOCK(inm); in mld_v2_input_query()
1191 IN6M_REMREF(inm); /* from IN6_LOOKUP_MULTI */ in mld_v2_input_query()
1208 (void) mld_v2_process_group_query(inm, timer, m, off); in mld_v2_input_query()
1209 mtp.cst = inm->in6m_timer; in mld_v2_input_query()
1211 IN6M_UNLOCK(inm); in mld_v2_input_query()
1212 IN6M_REMREF(inm); /* from IN6_LOOKUP_MULTI */ in mld_v2_input_query()
1233 mld_v2_process_group_query(struct in6_multi *inm, int timer, struct mbuf *m0, in mld_v2_process_group_query() argument
1240 IN6M_LOCK_ASSERT_HELD(inm); in mld_v2_process_group_query()
1245 switch (inm->in6m_state) { in mld_v2_process_group_query()
1269 if (inm->in6m_state == MLD_G_QUERY_PENDING_MEMBER || in mld_v2_process_group_query()
1270 inm->in6m_state == MLD_SG_QUERY_PENDING_MEMBER) { in mld_v2_process_group_query()
1271 in6m_clear_recorded(inm); in mld_v2_process_group_query()
1272 timer = min(inm->in6m_timer, timer); in mld_v2_process_group_query()
1274 inm->in6m_state = MLD_G_QUERY_PENDING_MEMBER; in mld_v2_process_group_query()
1275 inm->in6m_timer = MLD_RANDOM_DELAY(timer); in mld_v2_process_group_query()
1283 if (inm->in6m_state == MLD_G_QUERY_PENDING_MEMBER) { in mld_v2_process_group_query()
1284 timer = min(inm->in6m_timer, timer); in mld_v2_process_group_query()
1285 inm->in6m_timer = MLD_RANDOM_DELAY(timer); in mld_v2_process_group_query()
1300 if (inm->in6m_nsrc > 0) { in mld_v2_process_group_query()
1311 retval = in6m_record_source(inm, &addr); in mld_v2_process_group_query()
1331 inm->in6m_state = MLD_SG_QUERY_PENDING_MEMBER; in mld_v2_process_group_query()
1332 inm->in6m_timer = MLD_RANDOM_DELAY(timer); in mld_v2_process_group_query()
1352 struct in6_multi *inm; in mld_v1_input_report() local
1435 IN6_LOOKUP_MULTI(&mld->mld_addr, ifp, inm); in mld_v1_input_report()
1438 if (inm != NULL) { in mld_v1_input_report()
1441 IN6M_LOCK(inm); in mld_v1_input_report()
1442 mli = inm->in6m_mli; in mld_v1_input_report()
1452 IN6M_UNLOCK(inm); in mld_v1_input_report()
1453 IN6M_REMREF(inm); /* from IN6_LOOKUP_MULTI */ in mld_v1_input_report()
1458 inm->in6m_timer = 0; in mld_v1_input_report()
1460 switch (inm->in6m_state) { in mld_v1_input_report()
1474 inm->in6m_state = MLD_LAZY_MEMBER; in mld_v1_input_report()
1481 IN6M_UNLOCK(inm); in mld_v1_input_report()
1482 IN6M_REMREF(inm); /* from IN6_LOOKUP_MULTI */ in mld_v1_input_report()
1621 struct in6_multi *inm; in mld_timeout() local
1761 IN6_FIRST_MULTI(step, inm); in mld_timeout()
1762 while (inm != NULL) { in mld_timeout()
1763 IN6M_LOCK(inm); in mld_timeout()
1764 if (inm->in6m_ifp != ifp) { in mld_timeout()
1771 mld_v1_process_group_timer(inm, in mld_timeout()
1776 &scq, inm, uri_sec); in mld_timeout()
1781 IN6M_UNLOCK(inm); in mld_timeout()
1782 IN6_NEXT_MULTI(step, inm); in mld_timeout()
1908 mld_append_relq(struct mld_ifinfo *mli, struct in6_multi *inm) in mld_append_relq() argument
1911 if (inm->in6m_in_nrele) { in mld_append_relq()
1913 __func__, (uint64_t)VM_KERNEL_ADDRPERM(inm), in mld_append_relq()
1918 __func__, (uint64_t)VM_KERNEL_ADDRPERM(inm), in mld_append_relq()
1920 inm->in6m_in_nrele = true; in mld_append_relq()
1921 SLIST_INSERT_HEAD(&mli->mli_relinmhead, inm, in6m_nrele); in mld_append_relq()
1932 struct in6_multi *inm; in mld_flush_relq() local
1942 while ((inm = SLIST_FIRST(&mli->mli_relinmhead)) != NULL) { in mld_flush_relq()
1944 SLIST_INSERT_HEAD(&temp_relinmhead, inm, in6m_nrele); in mld_flush_relq()
1948 while ((inm = SLIST_FIRST(&temp_relinmhead)) != NULL) { in mld_flush_relq()
1952 IN6M_LOCK(inm); in mld_flush_relq()
1954 __func__, (uint64_t)VM_KERNEL_ADDRPERM(inm), in mld_flush_relq()
1955 inm->in6m_ifp != NULL ? if_name(inm->in6m_ifp) : "<null>"); in mld_flush_relq()
1956 VERIFY(inm->in6m_in_nrele == true); in mld_flush_relq()
1957 inm->in6m_in_nrele = false; in mld_flush_relq()
1958 VERIFY(inm->in6m_nrelecnt != 0); in mld_flush_relq()
1959 inm->in6m_nrelecnt--; in mld_flush_relq()
1960 lastref = in6_multi_detach(inm); in mld_flush_relq()
1961 VERIFY(!lastref || (!(inm->in6m_debug & IFD_ATTACHED) && in mld_flush_relq()
1962 inm->in6m_reqcnt == 0)); in mld_flush_relq()
1963 IN6M_UNLOCK(inm); in mld_flush_relq()
1965 IN6M_REMREF(inm); in mld_flush_relq()
1976 MLD_ADD_DETACHED_IN6M(in6m_dthead, inm); in mld_flush_relq()
1988 mld_v1_process_group_timer(struct in6_multi *inm, const int mld_version) in mld_v1_process_group_timer() argument
1994 IN6M_LOCK_ASSERT_HELD(inm); in mld_v1_process_group_timer()
1995 MLI_LOCK_ASSERT_HELD(inm->in6m_mli); in mld_v1_process_group_timer()
1997 if (inm->in6m_timer == 0) { in mld_v1_process_group_timer()
1999 } else if (--inm->in6m_timer == 0) { in mld_v1_process_group_timer()
2007 switch (inm->in6m_state) { in mld_v1_process_group_timer()
2017 inm->in6m_state = MLD_IDLE_MEMBER; in mld_v1_process_group_timer()
2018 (void) mld_v1_transmit_report(inm, in mld_v1_process_group_timer()
2020 IN6M_LOCK_ASSERT_HELD(inm); in mld_v1_process_group_timer()
2021 MLI_LOCK_ASSERT_HELD(inm->in6m_mli); in mld_v1_process_group_timer()
2039 struct in6_multi *inm, const int uri_sec) in mld_v2_process_group_timers() argument
2045 IN6M_LOCK_ASSERT_HELD(inm); in mld_v2_process_group_timers()
2047 VERIFY(mli == inm->in6m_mli); in mld_v2_process_group_timers()
2058 if (inm->in6m_timer == 0) { in mld_v2_process_group_timers()
2060 } else if (--inm->in6m_timer == 0) { in mld_v2_process_group_timers()
2067 if (inm->in6m_sctimer == 0) { in mld_v2_process_group_timers()
2069 } else if (--inm->in6m_sctimer == 0) { in mld_v2_process_group_timers()
2082 switch (inm->in6m_state) { in mld_v2_process_group_timers()
2101 retval = mld_v2_enqueue_group_record(qrq, inm, 0, 1, in mld_v2_process_group_timers()
2102 (inm->in6m_state == MLD_SG_QUERY_PENDING_MEMBER), in mld_v2_process_group_timers()
2106 inm->in6m_state = MLD_REPORTING_MEMBER; in mld_v2_process_group_timers()
2107 in6m_clear_recorded(inm); in mld_v2_process_group_timers()
2119 if (--inm->in6m_scrv > 0) { in mld_v2_process_group_timers()
2120 inm->in6m_sctimer = (uint16_t)uri_sec; in mld_v2_process_group_timers()
2131 (void) mld_v2_merge_state_changes(inm, scq); in mld_v2_process_group_timers()
2133 in6m_commit(inm); in mld_v2_process_group_timers()
2135 ip6_sprintf(&inm->in6m_addr), in mld_v2_process_group_timers()
2136 if_name(inm->in6m_ifp))); in mld_v2_process_group_timers()
2145 if (inm->in6m_state == MLD_LEAVING_MEMBER && in mld_v2_process_group_timers()
2146 inm->in6m_scrv == 0) { in mld_v2_process_group_timers()
2147 inm->in6m_state = MLD_NOT_MEMBER; in mld_v2_process_group_timers()
2157 VERIFY(inm->in6m_nrelecnt != 0); in mld_v2_process_group_timers()
2158 mld_append_relq(mli, inm); in mld_v2_process_group_timers()
2211 struct in6_multi *inm; in mld_v2_cancel_link_timers() local
2234 IN6_FIRST_MULTI(step, inm); in mld_v2_cancel_link_timers()
2235 while (inm != NULL) { in mld_v2_cancel_link_timers()
2236 IN6M_LOCK(inm); in mld_v2_cancel_link_timers()
2237 if (inm->in6m_ifp != ifp) { in mld_v2_cancel_link_timers()
2241 switch (inm->in6m_state) { in mld_v2_cancel_link_timers()
2263 VERIFY(inm->in6m_nrelecnt != 0); in mld_v2_cancel_link_timers()
2265 mld_append_relq(mli, inm); in mld_v2_cancel_link_timers()
2270 in6m_clear_recorded(inm); in mld_v2_cancel_link_timers()
2273 inm->in6m_state = MLD_REPORTING_MEMBER; in mld_v2_cancel_link_timers()
2280 inm->in6m_sctimer = 0; in mld_v2_cancel_link_timers()
2281 inm->in6m_timer = 0; in mld_v2_cancel_link_timers()
2282 IF_DRAIN(&inm->in6m_scq); in mld_v2_cancel_link_timers()
2284 IN6M_UNLOCK(inm); in mld_v2_cancel_link_timers()
2285 IN6_NEXT_MULTI(step, inm); in mld_v2_cancel_link_timers()
2434 mld_change_state(struct in6_multi *inm, struct mld_tparams *mtp, in mld_change_state() argument
2444 IN6M_LOCK_ASSERT_HELD(inm); in mld_change_state()
2445 VERIFY(inm->in6m_mli != NULL); in mld_change_state()
2446 MLI_LOCK_ASSERT_NOTHELD(inm->in6m_mli); in mld_change_state()
2452 VERIFY(inm->in6m_ifma != NULL); in mld_change_state()
2453 ifp = inm->in6m_ifma->ifma_ifp; in mld_change_state()
2457 VERIFY(inm->in6m_ifp == ifp); in mld_change_state()
2467 if (inm->in6m_st[1].iss_fmode != inm->in6m_st[0].iss_fmode) { in mld_change_state()
2469 inm->in6m_st[0].iss_fmode, inm->in6m_st[1].iss_fmode)); in mld_change_state()
2470 if (inm->in6m_st[0].iss_fmode == MCAST_UNDEFINED) { in mld_change_state()
2472 error = mld_initial_join(inm, mli, mtp, delay); in mld_change_state()
2474 } else if (inm->in6m_st[1].iss_fmode == MCAST_UNDEFINED) { in mld_change_state()
2476 mld_final_leave(inm, mli, mtp); in mld_change_state()
2483 error = mld_handle_state_change(inm, mli, mtp); in mld_change_state()
2501 mld_initial_join(struct in6_multi *inm, struct mld_ifinfo *mli, in mld_initial_join() argument
2509 IN6M_LOCK_ASSERT_HELD(inm); in mld_initial_join()
2514 __func__, ip6_sprintf(&inm->in6m_addr), in mld_initial_join()
2515 (uint64_t)VM_KERNEL_ADDRPERM(inm->in6m_ifp), in mld_initial_join()
2516 if_name(inm->in6m_ifp))); in mld_initial_join()
2521 ifp = inm->in6m_ifp; in mld_initial_join()
2540 …(IN6_IS_ADDR_MC_LINKLOCAL(&inm->in6m_addr) || IN6_IS_ADDR_MC_UNICAST_BASED_LINKLOCAL(&inm->in6m_ad… in mld_initial_join()
2541 !mld_is_addr_reported(&inm->in6m_addr)) { in mld_initial_join()
2544 inm->in6m_state = MLD_SILENT_MEMBER; in mld_initial_join()
2545 inm->in6m_timer = 0; in mld_initial_join()
2556 inm->in6m_state == MLD_LEAVING_MEMBER) { in mld_initial_join()
2557 VERIFY(inm->in6m_nrelecnt != 0); in mld_initial_join()
2558 mld_append_relq(mli, inm); in mld_initial_join()
2561 inm->in6m_state = MLD_REPORTING_MEMBER; in mld_initial_join()
2574 inm->in6m_timer = max(delay, odelay); in mld_initial_join()
2577 inm->in6m_state = MLD_IDLE_MEMBER; in mld_initial_join()
2578 error = mld_v1_transmit_report(inm, in mld_initial_join()
2581 IN6M_LOCK_ASSERT_HELD(inm); in mld_initial_join()
2585 inm->in6m_timer = odelay; in mld_initial_join()
2604 ifq = &inm->in6m_scq; in mld_initial_join()
2606 retval = mld_v2_enqueue_group_record(ifq, inm, 1, in mld_initial_join()
2626 inm->in6m_scrv = (uint16_t)mli->mli_rv; in mld_initial_join()
2628 if (inm->in6m_sctimer > 1) { in mld_initial_join()
2629 inm->in6m_sctimer = in mld_initial_join()
2630 MIN(inm->in6m_sctimer, (uint16_t)delay); in mld_initial_join()
2632 inm->in6m_sctimer = (uint16_t)delay; in mld_initial_join()
2635 inm->in6m_sctimer = 1; in mld_initial_join()
2650 in6m_commit(inm); in mld_initial_join()
2652 ip6_sprintf(&inm->in6m_addr), in mld_initial_join()
2653 if_name(inm->in6m_ifp))); in mld_initial_join()
2663 mld_handle_state_change(struct in6_multi *inm, struct mld_ifinfo *mli, in mld_handle_state_change() argument
2668 IN6M_LOCK_ASSERT_HELD(inm); in mld_handle_state_change()
2673 __func__, ip6_sprintf(&inm->in6m_addr), in mld_handle_state_change()
2674 (uint64_t)VM_KERNEL_ADDRPERM(inm->in6m_ifp), in mld_handle_state_change()
2675 if_name(inm->in6m_ifp))); in mld_handle_state_change()
2677 ifp = inm->in6m_ifp; in mld_handle_state_change()
2684 !mld_is_addr_reported(&inm->in6m_addr) || in mld_handle_state_change()
2687 if (!mld_is_addr_reported(&inm->in6m_addr)) { in mld_handle_state_change()
2692 in6m_commit(inm); in mld_handle_state_change()
2694 ip6_sprintf(&inm->in6m_addr), in mld_handle_state_change()
2695 if_name(inm->in6m_ifp))); in mld_handle_state_change()
2699 IF_DRAIN(&inm->in6m_scq); in mld_handle_state_change()
2701 int retval = mld_v2_enqueue_group_record(&inm->in6m_scq, inm, 1, 0, 0, in mld_handle_state_change()
2703 mtp->cst = (inm->in6m_scq.ifq_len > 0); in mld_handle_state_change()
2714 inm->in6m_scrv = (uint16_t)mli->mli_rv; in mld_handle_state_change()
2715 inm->in6m_sctimer = 1; in mld_handle_state_change()
2732 mld_final_leave(struct in6_multi *inm, struct mld_ifinfo *mli, in mld_final_leave() argument
2737 IN6M_LOCK_ASSERT_HELD(inm); in mld_final_leave()
2742 __func__, ip6_sprintf(&inm->in6m_addr), in mld_final_leave()
2743 (uint64_t)VM_KERNEL_ADDRPERM(inm->in6m_ifp), in mld_final_leave()
2744 if_name(inm->in6m_ifp))); in mld_final_leave()
2746 switch (inm->in6m_state) { in mld_final_leave()
2760 if (inm->in6m_state == MLD_G_QUERY_PENDING_MEMBER || in mld_final_leave()
2761 inm->in6m_state == MLD_SG_QUERY_PENDING_MEMBER) { in mld_final_leave()
2767 mtp->cst = (mld_v1_transmit_report(inm, in mld_final_leave()
2770 IN6M_LOCK_ASSERT_HELD(inm); in mld_final_leave()
2773 inm->in6m_state = MLD_NOT_MEMBER; in mld_final_leave()
2781 IF_DRAIN(&inm->in6m_scq); in mld_final_leave()
2782 inm->in6m_timer = 0; in mld_final_leave()
2783 inm->in6m_scrv = (uint16_t)mli->mli_rv; in mld_final_leave()
2786 ip6_sprintf(&inm->in6m_addr), in mld_final_leave()
2787 if_name(inm->in6m_ifp), in mld_final_leave()
2788 inm->in6m_scrv)); in mld_final_leave()
2789 if (inm->in6m_scrv == 0) { in mld_final_leave()
2790 inm->in6m_state = MLD_NOT_MEMBER; in mld_final_leave()
2791 inm->in6m_sctimer = 0; in mld_final_leave()
2800 IN6M_ADDREF_LOCKED(inm); in mld_final_leave()
2801 VERIFY(inm->in6m_debug & IFD_ATTACHED); in mld_final_leave()
2802 inm->in6m_reqcnt++; in mld_final_leave()
2803 VERIFY(inm->in6m_reqcnt >= 1); in mld_final_leave()
2804 inm->in6m_nrelecnt++; in mld_final_leave()
2805 VERIFY(inm->in6m_nrelecnt != 0); in mld_final_leave()
2808 &inm->in6m_scq, inm, 1, 0, 0, in mld_final_leave()
2810 mtp->cst = (inm->in6m_scq.ifq_len > 0); in mld_final_leave()
2815 inm->in6m_state = MLD_LEAVING_MEMBER; in mld_final_leave()
2816 inm->in6m_sctimer = 1; in mld_final_leave()
2831 in6m_commit(inm); in mld_final_leave()
2833 ip6_sprintf(&inm->in6m_addr), in mld_final_leave()
2834 if_name(inm->in6m_ifp))); in mld_final_leave()
2835 inm->in6m_st[1].iss_fmode = MCAST_UNDEFINED; in mld_final_leave()
2837 __func__, (uint64_t)VM_KERNEL_ADDRPERM(&inm->in6m_addr), in mld_final_leave()
2838 if_name(inm->in6m_ifp))); in mld_final_leave()
2870 mld_v2_enqueue_group_record(struct ifqueue *ifq, struct in6_multi *inm, in mld_v2_enqueue_group_record() argument
2886 IN6M_LOCK_ASSERT_HELD(inm); in mld_v2_enqueue_group_record()
2887 MLI_LOCK_ASSERT_HELD(inm->in6m_mli); in mld_v2_enqueue_group_record()
2890 ifp = inm->in6m_ifp; in mld_v2_enqueue_group_record()
2901 mode = (uint8_t)inm->in6m_st[1].iss_fmode; in mld_v2_enqueue_group_record()
2908 if (inm->in6m_st[0].iss_asm > 0 && inm->in6m_st[1].iss_asm > 0 && in mld_v2_enqueue_group_record()
2909 inm->in6m_nsrc == 0) { in mld_v2_enqueue_group_record()
2930 if (mode != inm->in6m_st[0].iss_fmode) { in mld_v2_enqueue_group_record()
2975 VERIFY(inm->in6m_st[1].iss_asm == 0); in mld_v2_enqueue_group_record()
2983 return mld_v2_enqueue_filter_change(ifq, inm); in mld_v2_enqueue_group_record()
2988 __func__, ip6_sprintf(&inm->in6m_addr), in mld_v2_enqueue_group_record()
2989 if_name(inm->in6m_ifp))); in mld_v2_enqueue_group_record()
3004 ip6_sprintf(&inm->in6m_addr), in mld_v2_enqueue_group_record()
3005 if_name(inm->in6m_ifp))); in mld_v2_enqueue_group_record()
3057 mr.mr_addr = inm->in6m_addr; in mld_v2_enqueue_group_record()
3095 RB_FOREACH_SAFE(ims, ip6_msource_tree, &inm->in6m_srcs, in mld_v2_enqueue_group_record()
3099 now = im6s_get_mode(inm, ims, 1); in mld_v2_enqueue_group_record()
3199 now = im6s_get_mode(inm, ims, 1); in mld_v2_enqueue_group_record()
3270 mld_v2_enqueue_filter_change(struct ifqueue *ifq, struct in6_multi *inm) in mld_v2_enqueue_filter_change() argument
3284 IN6M_LOCK_ASSERT_HELD(inm); in mld_v2_enqueue_filter_change()
3286 if (inm->in6m_nsrc == 0 || in mld_v2_enqueue_filter_change()
3287 (inm->in6m_st[0].iss_asm > 0 && inm->in6m_st[1].iss_asm > 0)) { in mld_v2_enqueue_filter_change()
3291 ifp = inm->in6m_ifp; /* interface */ in mld_v2_enqueue_filter_change()
3292 mode = (uint8_t)inm->in6m_st[1].iss_fmode; /* filter mode at t1 */ in mld_v2_enqueue_filter_change()
3353 mr.mr_addr = inm->in6m_addr; in mld_v2_enqueue_filter_change()
3389 &inm->in6m_srcs); in mld_v2_enqueue_filter_change()
3394 now = im6s_get_mode(inm, ims, 1); in mld_v2_enqueue_filter_change()
3395 then = im6s_get_mode(inm, ims, 0); in mld_v2_enqueue_filter_change()
3479 mld_v2_merge_state_changes(struct in6_multi *inm, struct ifqueue *ifscq) in mld_v2_merge_state_changes() argument
3489 IN6M_LOCK_ASSERT_HELD(inm); in mld_v2_merge_state_changes()
3499 if (inm->in6m_scrv > 0) { in mld_v2_merge_state_changes()
3503 gq = &inm->in6m_scq; in mld_v2_merge_state_changes()
3507 __func__, (uint64_t)VM_KERNEL_ADDRPERM(inm))); in mld_v2_merge_state_changes()
3534 (inm->in6m_ifp->if_mtu - MLD_MTUSPACE))) { in mld_v2_merge_state_changes()
3602 struct in6_multi *inm; in mld_v2_dispatch_general_query() local
3614 IN6_FIRST_MULTI(step, inm); in mld_v2_dispatch_general_query()
3615 while (inm != NULL) { in mld_v2_dispatch_general_query()
3616 IN6M_LOCK(inm); in mld_v2_dispatch_general_query()
3617 if (inm->in6m_ifp != ifp) { in mld_v2_dispatch_general_query()
3621 switch (inm->in6m_state) { in mld_v2_dispatch_general_query()
3630 inm->in6m_state = MLD_REPORTING_MEMBER; in mld_v2_dispatch_general_query()
3633 inm, 0, 0, 0, 0); in mld_v2_dispatch_general_query()
3644 IN6M_UNLOCK(inm); in mld_v2_dispatch_general_query()
3645 IN6_NEXT_MULTI(step, inm); in mld_v2_dispatch_general_query()