Lines Matching refs:nlskb

17 static int xsk_diag_put_info(const struct xdp_sock *xs, struct sk_buff *nlskb)
23 return nla_put(nlskb, XDP_DIAG_INFO, sizeof(di), &di);
27 struct sk_buff *nlskb)
32 return nla_put(nlskb, nl_type, sizeof(dr), &dr);
36 struct sk_buff *nlskb)
41 err = xsk_diag_put_ring(xs->rx, XDP_DIAG_RX_RING, nlskb);
43 err = xsk_diag_put_ring(xs->tx, XDP_DIAG_TX_RING, nlskb);
47 static int xsk_diag_put_umem(const struct xdp_sock *xs, struct sk_buff *nlskb)
69 err = nla_put(nlskb, XDP_DIAG_UMEM, sizeof(du), &du);
72 XDP_DIAG_UMEM_FILL_RING, nlskb);
75 XDP_DIAG_UMEM_COMPLETION_RING, nlskb);
79 static int xsk_diag_put_stats(const struct xdp_sock *xs, struct sk_buff *nlskb)
89 return nla_put(nlskb, XDP_DIAG_STATS, sizeof(du), &du);
92 static int xsk_diag_fill(struct sock *sk, struct sk_buff *nlskb,
101 nlh = nlmsg_put(nlskb, portid, seq, SOCK_DIAG_BY_FAMILY, sizeof(*msg),
114 if ((req->xdiag_show & XDP_SHOW_INFO) && xsk_diag_put_info(xs, nlskb))
118 nla_put_u32(nlskb, XDP_DIAG_UID,
123 xsk_diag_put_rings_cfg(xs, nlskb))
127 xsk_diag_put_umem(xs, nlskb))
131 sock_diag_put_meminfo(sk, nlskb, XDP_DIAG_MEMINFO))
135 xsk_diag_put_stats(xs, nlskb))
139 nlmsg_end(nlskb, nlh);
144 nlmsg_cancel(nlskb, nlh);
148 static int xsk_diag_dump(struct sk_buff *nlskb, struct netlink_callback *cb)
151 struct net *net = sock_net(nlskb->sk);
163 if (xsk_diag_fill(sk, nlskb, req,
175 return nlskb->len;
178 static int xsk_diag_handler_dump(struct sk_buff *nlskb, struct nlmsghdr *hdr)
182 struct net *net = sock_net(nlskb->sk);
190 return netlink_dump_start(net->diag_nlsk, nlskb, hdr, &c);