nlk               339 net/netlink/af_netlink.c 	struct netlink_sock *nlk = nlk_sk(sk);
nlk               341 net/netlink/af_netlink.c 	if (!(nlk->flags & NETLINK_F_RECV_NO_ENOBUFS)) {
nlk               353 net/netlink/af_netlink.c 	struct netlink_sock *nlk = nlk_sk(sk);
nlk               356 net/netlink/af_netlink.c 		clear_bit(NETLINK_S_CONGESTED, &nlk->state);
nlk               357 net/netlink/af_netlink.c 	if (!test_bit(NETLINK_S_CONGESTED, &nlk->state))
nlk               358 net/netlink/af_netlink.c 		wake_up_interruptible(&nlk->wait);
nlk               385 net/netlink/af_netlink.c 	struct netlink_sock *nlk = nlk_sk(sk);
nlk               387 net/netlink/af_netlink.c 	if (nlk->cb_running) {
nlk               388 net/netlink/af_netlink.c 		if (nlk->cb.done)
nlk               389 net/netlink/af_netlink.c 			nlk->cb.done(&nlk->cb);
nlk               390 net/netlink/af_netlink.c 		module_put(nlk->cb.module);
nlk               391 net/netlink/af_netlink.c 		kfree_skb(nlk->cb.skb);
nlk               408 net/netlink/af_netlink.c 	struct netlink_sock *nlk = container_of(work, struct netlink_sock,
nlk               411 net/netlink/af_netlink.c 	sk_free(&nlk->sk);
nlk               483 net/netlink/af_netlink.c 	const struct netlink_sock *nlk = ptr;
nlk               485 net/netlink/af_netlink.c 	return nlk->portid != x->portid ||
nlk               486 net/netlink/af_netlink.c 	       !net_eq(sock_net(&nlk->sk), read_pnet(&x->pnet));
nlk               625 net/netlink/af_netlink.c 	struct netlink_sock *nlk;
nlk               635 net/netlink/af_netlink.c 	nlk = nlk_sk(sk);
nlk               637 net/netlink/af_netlink.c 		nlk->cb_mutex = cb_mutex;
nlk               639 net/netlink/af_netlink.c 		nlk->cb_mutex = &nlk->cb_def_mutex;
nlk               640 net/netlink/af_netlink.c 		mutex_init(nlk->cb_mutex);
nlk               641 net/netlink/af_netlink.c 		lockdep_set_class_and_name(nlk->cb_mutex,
nlk               645 net/netlink/af_netlink.c 	init_waitqueue_head(&nlk->wait);
nlk               657 net/netlink/af_netlink.c 	struct netlink_sock *nlk;
nlk               700 net/netlink/af_netlink.c 	nlk = nlk_sk(sock->sk);
nlk               701 net/netlink/af_netlink.c 	nlk->module = module;
nlk               702 net/netlink/af_netlink.c 	nlk->netlink_bind = bind;
nlk               703 net/netlink/af_netlink.c 	nlk->netlink_unbind = unbind;
nlk               714 net/netlink/af_netlink.c 	struct netlink_sock *nlk = container_of(head, struct netlink_sock, rcu);
nlk               715 net/netlink/af_netlink.c 	struct sock *sk = &nlk->sk;
nlk               717 net/netlink/af_netlink.c 	kfree(nlk->groups);
nlk               718 net/netlink/af_netlink.c 	nlk->groups = NULL;
nlk               723 net/netlink/af_netlink.c 	if (nlk->cb_running && nlk->cb.done) {
nlk               724 net/netlink/af_netlink.c 		INIT_WORK(&nlk->work, netlink_sock_destruct_work);
nlk               725 net/netlink/af_netlink.c 		schedule_work(&nlk->work);
nlk               735 net/netlink/af_netlink.c 	struct netlink_sock *nlk;
nlk               742 net/netlink/af_netlink.c 	nlk = nlk_sk(sk);
nlk               752 net/netlink/af_netlink.c 	if (nlk->netlink_unbind) {
nlk               755 net/netlink/af_netlink.c 		for (i = 0; i < nlk->ngroups; i++)
nlk               756 net/netlink/af_netlink.c 			if (test_bit(i, nlk->groups))
nlk               757 net/netlink/af_netlink.c 				nlk->netlink_unbind(sock_net(sk), i + 1);
nlk               764 net/netlink/af_netlink.c 	wake_up_interruptible_all(&nlk->wait);
nlk               768 net/netlink/af_netlink.c 	if (nlk->portid && nlk->bound) {
nlk               772 net/netlink/af_netlink.c 						.portid = nlk->portid,
nlk               778 net/netlink/af_netlink.c 	module_put(nlk->module);
nlk               801 net/netlink/af_netlink.c 	call_rcu(&nlk->rcu, deferred_put_nlk_sk);
nlk               918 net/netlink/af_netlink.c 	struct netlink_sock *nlk = nlk_sk(sk);
nlk               920 net/netlink/af_netlink.c 	if (nlk->subscriptions && !subscriptions)
nlk               922 net/netlink/af_netlink.c 	else if (!nlk->subscriptions && subscriptions)
nlk               924 net/netlink/af_netlink.c 	nlk->subscriptions = subscriptions;
nlk               929 net/netlink/af_netlink.c 	struct netlink_sock *nlk = nlk_sk(sk);
nlk               942 net/netlink/af_netlink.c 	if (nlk->ngroups >= groups)
nlk               945 net/netlink/af_netlink.c 	new_groups = krealloc(nlk->groups, NLGRPSZ(groups), GFP_ATOMIC);
nlk               950 net/netlink/af_netlink.c 	memset((char *)new_groups + NLGRPSZ(nlk->ngroups), 0,
nlk               951 net/netlink/af_netlink.c 	       NLGRPSZ(groups) - NLGRPSZ(nlk->ngroups));
nlk               953 net/netlink/af_netlink.c 	nlk->groups = new_groups;
nlk               954 net/netlink/af_netlink.c 	nlk->ngroups = groups;
nlk               963 net/netlink/af_netlink.c 	struct netlink_sock *nlk = nlk_sk(sk);
nlk               966 net/netlink/af_netlink.c 	if (!nlk->netlink_unbind)
nlk               971 net/netlink/af_netlink.c 			nlk->netlink_unbind(sock_net(sk), undo + 1);
nlk               979 net/netlink/af_netlink.c 	struct netlink_sock *nlk = nlk_sk(sk);
nlk              1001 net/netlink/af_netlink.c 	if (nlk->ngroups < BITS_PER_LONG)
nlk              1002 net/netlink/af_netlink.c 		groups &= (1UL << nlk->ngroups) - 1;
nlk              1004 net/netlink/af_netlink.c 	bound = nlk->bound;
nlk              1009 net/netlink/af_netlink.c 		if (nladdr->nl_pid != nlk->portid)
nlk              1014 net/netlink/af_netlink.c 	if (nlk->netlink_bind && groups) {
nlk              1021 net/netlink/af_netlink.c 			err = nlk->netlink_bind(net, group + 1);
nlk              1042 net/netlink/af_netlink.c 	if (!groups && (nlk->groups == NULL || !(u32)nlk->groups[0]))
nlk              1047 net/netlink/af_netlink.c 	netlink_update_subscriptions(sk, nlk->subscriptions +
nlk              1049 net/netlink/af_netlink.c 					 hweight32(nlk->groups[0]));
nlk              1050 net/netlink/af_netlink.c 	nlk->groups[0] = (nlk->groups[0] & ~0xffffffffUL) | groups;
nlk              1066 net/netlink/af_netlink.c 	struct netlink_sock *nlk = nlk_sk(sk);
nlk              1074 net/netlink/af_netlink.c 		nlk->dst_portid	= 0;
nlk              1075 net/netlink/af_netlink.c 		nlk->dst_group  = 0;
nlk              1091 net/netlink/af_netlink.c 	if (!nlk->bound)
nlk              1096 net/netlink/af_netlink.c 		nlk->dst_portid = nladdr->nl_pid;
nlk              1097 net/netlink/af_netlink.c 		nlk->dst_group  = ffs(nladdr->nl_groups);
nlk              1107 net/netlink/af_netlink.c 	struct netlink_sock *nlk = nlk_sk(sk);
nlk              1114 net/netlink/af_netlink.c 		nladdr->nl_pid = nlk->dst_portid;
nlk              1115 net/netlink/af_netlink.c 		nladdr->nl_groups = netlink_group_mask(nlk->dst_group);
nlk              1117 net/netlink/af_netlink.c 		nladdr->nl_pid = nlk->portid;
nlk              1119 net/netlink/af_netlink.c 		nladdr->nl_groups = nlk->groups ? nlk->groups[0] : 0;
nlk              1136 net/netlink/af_netlink.c 	struct netlink_sock *nlk;
nlk              1143 net/netlink/af_netlink.c 	nlk = nlk_sk(sock);
nlk              1145 net/netlink/af_netlink.c 	    nlk->dst_portid != nlk_sk(ssk)->portid) {
nlk              1206 net/netlink/af_netlink.c 	struct netlink_sock *nlk;
nlk              1208 net/netlink/af_netlink.c 	nlk = nlk_sk(sk);
nlk              1211 net/netlink/af_netlink.c 	     test_bit(NETLINK_S_CONGESTED, &nlk->state))) {
nlk              1222 net/netlink/af_netlink.c 		add_wait_queue(&nlk->wait, &wait);
nlk              1225 net/netlink/af_netlink.c 		     test_bit(NETLINK_S_CONGESTED, &nlk->state)) &&
nlk              1230 net/netlink/af_netlink.c 		remove_wait_queue(&nlk->wait, &wait);
nlk              1295 net/netlink/af_netlink.c 	struct netlink_sock *nlk = nlk_sk(sk);
nlk              1298 net/netlink/af_netlink.c 	if (nlk->netlink_rcv != NULL) {
nlk              1303 net/netlink/af_netlink.c 		nlk->netlink_rcv(skb);
nlk              1369 net/netlink/af_netlink.c 	const struct netlink_sock *nlk = nlk_sk(NETLINK_CB(skb).sk);
nlk              1371 net/netlink/af_netlink.c 	return nlk->flags & NETLINK_F_STRICT_CHK;
nlk              1377 net/netlink/af_netlink.c 	struct netlink_sock *nlk = nlk_sk(sk);
nlk              1380 net/netlink/af_netlink.c 	    !test_bit(NETLINK_S_CONGESTED, &nlk->state)) {
nlk              1406 net/netlink/af_netlink.c 	struct netlink_sock *nlk = nlk_sk(sk);
nlk              1412 net/netlink/af_netlink.c 	if (nlk->portid == p->portid || p->group - 1 >= nlk->ngroups ||
nlk              1413 net/netlink/af_netlink.c 	    !test_bit(p->group - 1, nlk->groups))
nlk              1417 net/netlink/af_netlink.c 		if (!(nlk->flags & NETLINK_F_LISTEN_ALL_NSID))
nlk              1450 net/netlink/af_netlink.c 		if (nlk->flags & NETLINK_F_BROADCAST_SEND_ERROR)
nlk              1470 net/netlink/af_netlink.c 		if (nlk->flags & NETLINK_F_BROADCAST_SEND_ERROR)
nlk              1549 net/netlink/af_netlink.c 	struct netlink_sock *nlk = nlk_sk(sk);
nlk              1558 net/netlink/af_netlink.c 	if (nlk->portid == p->portid || p->group - 1 >= nlk->ngroups ||
nlk              1559 net/netlink/af_netlink.c 	    !test_bit(p->group - 1, nlk->groups))
nlk              1562 net/netlink/af_netlink.c 	if (p->code == ENOBUFS && nlk->flags & NETLINK_F_RECV_NO_ENOBUFS) {
nlk              1606 net/netlink/af_netlink.c static void netlink_update_socket_mc(struct netlink_sock *nlk,
nlk              1612 net/netlink/af_netlink.c 	old = test_bit(group - 1, nlk->groups);
nlk              1613 net/netlink/af_netlink.c 	subscriptions = nlk->subscriptions - old + new;
nlk              1615 net/netlink/af_netlink.c 		__set_bit(group - 1, nlk->groups);
nlk              1617 net/netlink/af_netlink.c 		__clear_bit(group - 1, nlk->groups);
nlk              1618 net/netlink/af_netlink.c 	netlink_update_subscriptions(&nlk->sk, subscriptions);
nlk              1619 net/netlink/af_netlink.c 	netlink_update_listeners(&nlk->sk);
nlk              1626 net/netlink/af_netlink.c 	struct netlink_sock *nlk = nlk_sk(sk);
nlk              1640 net/netlink/af_netlink.c 			nlk->flags |= NETLINK_F_RECV_PKTINFO;
nlk              1642 net/netlink/af_netlink.c 			nlk->flags &= ~NETLINK_F_RECV_PKTINFO;
nlk              1652 net/netlink/af_netlink.c 		if (!val || val - 1 >= nlk->ngroups)
nlk              1654 net/netlink/af_netlink.c 		if (optname == NETLINK_ADD_MEMBERSHIP && nlk->netlink_bind) {
nlk              1655 net/netlink/af_netlink.c 			err = nlk->netlink_bind(sock_net(sk), val);
nlk              1660 net/netlink/af_netlink.c 		netlink_update_socket_mc(nlk, val,
nlk              1663 net/netlink/af_netlink.c 		if (optname == NETLINK_DROP_MEMBERSHIP && nlk->netlink_unbind)
nlk              1664 net/netlink/af_netlink.c 			nlk->netlink_unbind(sock_net(sk), val);
nlk              1671 net/netlink/af_netlink.c 			nlk->flags |= NETLINK_F_BROADCAST_SEND_ERROR;
nlk              1673 net/netlink/af_netlink.c 			nlk->flags &= ~NETLINK_F_BROADCAST_SEND_ERROR;
nlk              1678 net/netlink/af_netlink.c 			nlk->flags |= NETLINK_F_RECV_NO_ENOBUFS;
nlk              1679 net/netlink/af_netlink.c 			clear_bit(NETLINK_S_CONGESTED, &nlk->state);
nlk              1680 net/netlink/af_netlink.c 			wake_up_interruptible(&nlk->wait);
nlk              1682 net/netlink/af_netlink.c 			nlk->flags &= ~NETLINK_F_RECV_NO_ENOBUFS;
nlk              1691 net/netlink/af_netlink.c 			nlk->flags |= NETLINK_F_LISTEN_ALL_NSID;
nlk              1693 net/netlink/af_netlink.c 			nlk->flags &= ~NETLINK_F_LISTEN_ALL_NSID;
nlk              1698 net/netlink/af_netlink.c 			nlk->flags |= NETLINK_F_CAP_ACK;
nlk              1700 net/netlink/af_netlink.c 			nlk->flags &= ~NETLINK_F_CAP_ACK;
nlk              1705 net/netlink/af_netlink.c 			nlk->flags |= NETLINK_F_EXT_ACK;
nlk              1707 net/netlink/af_netlink.c 			nlk->flags &= ~NETLINK_F_EXT_ACK;
nlk              1712 net/netlink/af_netlink.c 			nlk->flags |= NETLINK_F_STRICT_CHK;
nlk              1714 net/netlink/af_netlink.c 			nlk->flags &= ~NETLINK_F_STRICT_CHK;
nlk              1727 net/netlink/af_netlink.c 	struct netlink_sock *nlk = nlk_sk(sk);
nlk              1743 net/netlink/af_netlink.c 		val = nlk->flags & NETLINK_F_RECV_PKTINFO ? 1 : 0;
nlk              1753 net/netlink/af_netlink.c 		val = nlk->flags & NETLINK_F_BROADCAST_SEND_ERROR ? 1 : 0;
nlk              1763 net/netlink/af_netlink.c 		val = nlk->flags & NETLINK_F_RECV_NO_ENOBUFS ? 1 : 0;
nlk              1774 net/netlink/af_netlink.c 		for (pos = 0; pos * 8 < nlk->ngroups; pos += sizeof(u32)) {
nlk              1780 net/netlink/af_netlink.c 			if (put_user((u32)(nlk->groups[idx] >> shift),
nlk              1786 net/netlink/af_netlink.c 		if (put_user(ALIGN(nlk->ngroups / 8, sizeof(u32)), optlen))
nlk              1795 net/netlink/af_netlink.c 		val = nlk->flags & NETLINK_F_CAP_ACK ? 1 : 0;
nlk              1805 net/netlink/af_netlink.c 		val = nlk->flags & NETLINK_F_EXT_ACK ? 1 : 0;
nlk              1814 net/netlink/af_netlink.c 		val = nlk->flags & NETLINK_F_STRICT_CHK ? 1 : 0;
nlk              1846 net/netlink/af_netlink.c 	struct netlink_sock *nlk = nlk_sk(sk);
nlk              1876 net/netlink/af_netlink.c 		dst_portid = nlk->dst_portid;
nlk              1877 net/netlink/af_netlink.c 		dst_group = nlk->dst_group;
nlk              1880 net/netlink/af_netlink.c 	if (!nlk->bound) {
nlk              1897 net/netlink/af_netlink.c 	NETLINK_CB(skb).portid	= nlk->portid;
nlk              1930 net/netlink/af_netlink.c 	struct netlink_sock *nlk = nlk_sk(sk);
nlk              1965 net/netlink/af_netlink.c 	nlk->max_recvmsg_len = max(nlk->max_recvmsg_len, len);
nlk              1966 net/netlink/af_netlink.c 	nlk->max_recvmsg_len = min_t(size_t, nlk->max_recvmsg_len,
nlk              1987 net/netlink/af_netlink.c 	if (nlk->flags & NETLINK_F_RECV_PKTINFO)
nlk              1989 net/netlink/af_netlink.c 	if (nlk->flags & NETLINK_F_LISTEN_ALL_NSID)
nlk              1999 net/netlink/af_netlink.c 	if (nlk->cb_running &&
nlk              2031 net/netlink/af_netlink.c 	struct netlink_sock *nlk;
nlk              2065 net/netlink/af_netlink.c 	nlk = nlk_sk(sk);
nlk              2066 net/netlink/af_netlink.c 	nlk->flags |= NETLINK_F_KERNEL_SOCKET;
nlk              2190 net/netlink/af_netlink.c 	struct netlink_sock *nlk = nlk_sk(sk);
nlk              2200 net/netlink/af_netlink.c 	mutex_lock(nlk->cb_mutex);
nlk              2201 net/netlink/af_netlink.c 	if (!nlk->cb_running) {
nlk              2214 net/netlink/af_netlink.c 	cb = &nlk->cb;
nlk              2217 net/netlink/af_netlink.c 	if (alloc_min_size < nlk->max_recvmsg_len) {
nlk              2218 net/netlink/af_netlink.c 		alloc_size = nlk->max_recvmsg_len;
nlk              2243 net/netlink/af_netlink.c 	if (nlk->dump_done_errno > 0) {
nlk              2245 net/netlink/af_netlink.c 		nlk->dump_done_errno = cb->dump(skb, cb);
nlk              2249 net/netlink/af_netlink.c 	if (nlk->dump_done_errno > 0 ||
nlk              2250 net/netlink/af_netlink.c 	    skb_tailroom(skb) < nlmsg_total_size(sizeof(nlk->dump_done_errno))) {
nlk              2251 net/netlink/af_netlink.c 		mutex_unlock(nlk->cb_mutex);
nlk              2261 net/netlink/af_netlink.c 			       sizeof(nlk->dump_done_errno),
nlk              2268 net/netlink/af_netlink.c 	memcpy(nlmsg_data(nlh), &nlk->dump_done_errno,
nlk              2269 net/netlink/af_netlink.c 	       sizeof(nlk->dump_done_errno));
nlk              2271 net/netlink/af_netlink.c 	if (extack._msg && nlk->flags & NETLINK_F_EXT_ACK) {
nlk              2285 net/netlink/af_netlink.c 	nlk->cb_running = false;
nlk              2288 net/netlink/af_netlink.c 	mutex_unlock(nlk->cb_mutex);
nlk              2294 net/netlink/af_netlink.c 	mutex_unlock(nlk->cb_mutex);
nlk              2303 net/netlink/af_netlink.c 	struct netlink_sock *nlk, *nlk2;
nlk              2316 net/netlink/af_netlink.c 	nlk = nlk_sk(sk);
nlk              2317 net/netlink/af_netlink.c 	mutex_lock(nlk->cb_mutex);
nlk              2319 net/netlink/af_netlink.c 	if (nlk->cb_running) {
nlk              2329 net/netlink/af_netlink.c 	cb = &nlk->cb;
nlk              2348 net/netlink/af_netlink.c 	nlk->cb_running = true;
nlk              2349 net/netlink/af_netlink.c 	nlk->dump_done_errno = INT_MAX;
nlk              2351 net/netlink/af_netlink.c 	mutex_unlock(nlk->cb_mutex);
nlk              2369 net/netlink/af_netlink.c 	mutex_unlock(nlk->cb_mutex);
nlk              2384 net/netlink/af_netlink.c 	struct netlink_sock *nlk = nlk_sk(NETLINK_CB(in_skb).sk);
nlk              2386 net/netlink/af_netlink.c 	bool nlk_has_extack = nlk->flags & NETLINK_F_EXT_ACK;
nlk              2396 net/netlink/af_netlink.c 		if (!(nlk->flags & NETLINK_F_CAP_ACK))
nlk              2558 net/netlink/af_netlink.c 	struct netlink_sock *nlk;
nlk              2562 net/netlink/af_netlink.c 			nlk = rhashtable_walk_next(&iter->hti);
nlk              2564 net/netlink/af_netlink.c 			if (IS_ERR(nlk)) {
nlk              2565 net/netlink/af_netlink.c 				if (PTR_ERR(nlk) == -EAGAIN)
nlk              2568 net/netlink/af_netlink.c 				return nlk;
nlk              2571 net/netlink/af_netlink.c 			if (nlk)
nlk              2580 net/netlink/af_netlink.c 	} while (sock_net(&nlk->sk) != seq_file_net(seq));
nlk              2582 net/netlink/af_netlink.c 	return nlk;
nlk              2626 net/netlink/af_netlink.c 		struct netlink_sock *nlk = nlk_sk(s);
nlk              2631 net/netlink/af_netlink.c 			   nlk->portid,
nlk              2632 net/netlink/af_netlink.c 			   nlk->groups ? (u32)nlk->groups[0] : 0,
nlk              2635 net/netlink/af_netlink.c 			   nlk->cb_running,
nlk              2736 net/netlink/af_netlink.c 	const struct netlink_sock *nlk = data;
nlk              2739 net/netlink/af_netlink.c 	netlink_compare_arg_init(&arg, sock_net(&nlk->sk), nlk->portid);
nlk                14 net/netlink/diag.c 	struct netlink_sock *nlk = nlk_sk(sk);
nlk                16 net/netlink/diag.c 	if (nlk->groups == NULL)
nlk                19 net/netlink/diag.c 	return nla_put(nlskb, NETLINK_DIAG_GROUPS, NLGRPSZ(nlk->ngroups),
nlk                20 net/netlink/diag.c 		       nlk->groups);
nlk                25 net/netlink/diag.c 	struct netlink_sock *nlk = nlk_sk(sk);
nlk                28 net/netlink/diag.c 	if (nlk->cb_running)
nlk                30 net/netlink/diag.c 	if (nlk->flags & NETLINK_F_RECV_PKTINFO)
nlk                32 net/netlink/diag.c 	if (nlk->flags & NETLINK_F_BROADCAST_SEND_ERROR)
nlk                34 net/netlink/diag.c 	if (nlk->flags & NETLINK_F_RECV_NO_ENOBUFS)
nlk                36 net/netlink/diag.c 	if (nlk->flags & NETLINK_F_LISTEN_ALL_NSID)
nlk                38 net/netlink/diag.c 	if (nlk->flags & NETLINK_F_CAP_ACK)
nlk                50 net/netlink/diag.c 	struct netlink_sock *nlk = nlk_sk(sk);
nlk                64 net/netlink/diag.c 	rep->ndiag_portid	= nlk->portid;
nlk                65 net/netlink/diag.c 	rep->ndiag_dst_portid	= nlk->dst_portid;
nlk                66 net/netlink/diag.c 	rep->ndiag_dst_group	= nlk->dst_group;