Lines Matching refs:info

35 		   const struct genl_info *info)  in netdev_nl_dev_fill()  argument
43 hdr = genlmsg_iput(rsp, info); in netdev_nl_dev_fill()
89 struct genl_info info; in netdev_genl_dev_notify() local
96 genl_info_init_ntf(&info, &netdev_nl_family, cmd); in netdev_genl_dev_notify()
102 if (netdev_nl_dev_fill(netdev, ntf, &info)) { in netdev_genl_dev_notify()
111 int netdev_nl_dev_get_doit(struct sk_buff *skb, struct genl_info *info) in netdev_nl_dev_get_doit() argument
118 if (GENL_REQ_ATTR_CHECK(info, NETDEV_A_DEV_IFINDEX)) in netdev_nl_dev_get_doit()
121 ifindex = nla_get_u32(info->attrs[NETDEV_A_DEV_IFINDEX]); in netdev_nl_dev_get_doit()
127 netdev = netdev_get_by_index_lock(genl_info_net(info), ifindex); in netdev_nl_dev_get_doit()
133 err = netdev_nl_dev_fill(netdev, rsp, info); in netdev_nl_dev_get_doit()
139 return genlmsg_reply(rsp, info); in netdev_nl_dev_get_doit()
163 const struct genl_info *info) in netdev_nl_napi_fill_one() argument
174 hdr = genlmsg_iput(rsp, info); in netdev_nl_napi_fill_one()
221 int netdev_nl_napi_get_doit(struct sk_buff *skb, struct genl_info *info) in netdev_nl_napi_get_doit() argument
228 if (GENL_REQ_ATTR_CHECK(info, NETDEV_A_NAPI_ID)) in netdev_nl_napi_get_doit()
231 napi_id = nla_get_u32(info->attrs[NETDEV_A_NAPI_ID]); in netdev_nl_napi_get_doit()
237 napi = netdev_napi_by_id_lock(genl_info_net(info), napi_id); in netdev_nl_napi_get_doit()
239 err = netdev_nl_napi_fill_one(rsp, napi, info); in netdev_nl_napi_get_doit()
242 NL_SET_BAD_ATTR(info->extack, info->attrs[NETDEV_A_NAPI_ID]); in netdev_nl_napi_get_doit()
253 return genlmsg_reply(rsp, info); in netdev_nl_napi_get_doit()
262 const struct genl_info *info, in netdev_nl_napi_dump_one() argument
284 err = netdev_nl_napi_fill_one(rsp, napi, info); in netdev_nl_napi_dump_one()
295 const struct genl_info *info = genl_info_dump(cb); in netdev_nl_napi_get_dumpit() local
301 if (info->attrs[NETDEV_A_NAPI_IFINDEX]) in netdev_nl_napi_get_dumpit()
302 ifindex = nla_get_u32(info->attrs[NETDEV_A_NAPI_IFINDEX]); in netdev_nl_napi_get_dumpit()
307 err = netdev_nl_napi_dump_one(netdev, skb, info, ctx); in netdev_nl_napi_get_dumpit()
314 err = netdev_nl_napi_dump_one(netdev, skb, info, ctx); in netdev_nl_napi_get_dumpit()
325 netdev_nl_napi_set_config(struct napi_struct *napi, struct genl_info *info) in netdev_nl_napi_set_config() argument
332 if (info->attrs[NETDEV_A_NAPI_THREADED]) { in netdev_nl_napi_set_config()
335 threaded = nla_get_uint(info->attrs[NETDEV_A_NAPI_THREADED]); in netdev_nl_napi_set_config()
341 if (info->attrs[NETDEV_A_NAPI_DEFER_HARD_IRQS]) { in netdev_nl_napi_set_config()
342 defer = nla_get_u32(info->attrs[NETDEV_A_NAPI_DEFER_HARD_IRQS]); in netdev_nl_napi_set_config()
346 if (info->attrs[NETDEV_A_NAPI_IRQ_SUSPEND_TIMEOUT]) { in netdev_nl_napi_set_config()
347 irq_suspend_timeout = nla_get_uint(info->attrs[NETDEV_A_NAPI_IRQ_SUSPEND_TIMEOUT]); in netdev_nl_napi_set_config()
351 if (info->attrs[NETDEV_A_NAPI_GRO_FLUSH_TIMEOUT]) { in netdev_nl_napi_set_config()
352 gro_flush_timeout = nla_get_uint(info->attrs[NETDEV_A_NAPI_GRO_FLUSH_TIMEOUT]); in netdev_nl_napi_set_config()
359 int netdev_nl_napi_set_doit(struct sk_buff *skb, struct genl_info *info) in netdev_nl_napi_set_doit() argument
365 if (GENL_REQ_ATTR_CHECK(info, NETDEV_A_NAPI_ID)) in netdev_nl_napi_set_doit()
368 napi_id = nla_get_u32(info->attrs[NETDEV_A_NAPI_ID]); in netdev_nl_napi_set_doit()
370 napi = netdev_napi_by_id_lock(genl_info_net(info), napi_id); in netdev_nl_napi_set_doit()
372 err = netdev_nl_napi_set_config(napi, info); in netdev_nl_napi_set_doit()
375 NL_SET_BAD_ATTR(info->extack, info->attrs[NETDEV_A_NAPI_ID]); in netdev_nl_napi_set_doit()
391 u32 q_idx, u32 q_type, const struct genl_info *info) in netdev_nl_queue_fill_one() argument
398 hdr = genlmsg_iput(rsp, info); in netdev_nl_queue_fill_one()
462 u32 q_type, const struct genl_info *info) in netdev_nl_queue_fill() argument
473 return netdev_nl_queue_fill_one(rsp, netdev, q_idx, q_type, info); in netdev_nl_queue_fill()
476 int netdev_nl_queue_get_doit(struct sk_buff *skb, struct genl_info *info) in netdev_nl_queue_get_doit() argument
483 if (GENL_REQ_ATTR_CHECK(info, NETDEV_A_QUEUE_ID) || in netdev_nl_queue_get_doit()
484 GENL_REQ_ATTR_CHECK(info, NETDEV_A_QUEUE_TYPE) || in netdev_nl_queue_get_doit()
485 GENL_REQ_ATTR_CHECK(info, NETDEV_A_QUEUE_IFINDEX)) in netdev_nl_queue_get_doit()
488 q_id = nla_get_u32(info->attrs[NETDEV_A_QUEUE_ID]); in netdev_nl_queue_get_doit()
489 q_type = nla_get_u32(info->attrs[NETDEV_A_QUEUE_TYPE]); in netdev_nl_queue_get_doit()
490 ifindex = nla_get_u32(info->attrs[NETDEV_A_QUEUE_IFINDEX]); in netdev_nl_queue_get_doit()
496 netdev = netdev_get_by_index_lock_ops_compat(genl_info_net(info), in netdev_nl_queue_get_doit()
499 err = netdev_nl_queue_fill(rsp, netdev, q_id, q_type, info); in netdev_nl_queue_get_doit()
508 return genlmsg_reply(rsp, info); in netdev_nl_queue_get_doit()
517 const struct genl_info *info, in netdev_nl_queue_dump_one() argument
527 NETDEV_QUEUE_TYPE_RX, info); in netdev_nl_queue_dump_one()
533 NETDEV_QUEUE_TYPE_TX, info); in netdev_nl_queue_dump_one()
544 const struct genl_info *info = genl_info_dump(cb); in netdev_nl_queue_get_dumpit() local
550 if (info->attrs[NETDEV_A_QUEUE_IFINDEX]) in netdev_nl_queue_get_dumpit()
551 ifindex = nla_get_u32(info->attrs[NETDEV_A_QUEUE_IFINDEX]); in netdev_nl_queue_get_dumpit()
556 err = netdev_nl_queue_dump_one(netdev, skb, info, ctx); in netdev_nl_queue_get_dumpit()
564 err = netdev_nl_queue_dump_one(netdev, skb, info, ctx); in netdev_nl_queue_get_dumpit()
641 u32 q_type, int i, const struct genl_info *info) in netdev_nl_stats_queue() argument
648 hdr = genlmsg_iput(rsp, info); in netdev_nl_stats_queue()
688 const struct genl_info *info, in netdev_nl_stats_by_queue() argument
700 i, info); in netdev_nl_stats_by_queue()
708 i, info); in netdev_nl_stats_by_queue()
765 const struct genl_info *info) in netdev_nl_stats_by_netdev() argument
785 hdr = genlmsg_iput(rsp, info); in netdev_nl_stats_by_netdev()
808 struct sk_buff *skb, const struct genl_info *info, in netdev_nl_qstats_get_dump_one() argument
816 return netdev_nl_stats_by_netdev(netdev, skb, info); in netdev_nl_qstats_get_dump_one()
818 return netdev_nl_stats_by_queue(netdev, skb, info, ctx); in netdev_nl_qstats_get_dump_one()
828 const struct genl_info *info = genl_info_dump(cb); in netdev_nl_qstats_get_dumpit() local
836 if (info->attrs[NETDEV_A_QSTATS_SCOPE]) in netdev_nl_qstats_get_dumpit()
837 scope = nla_get_uint(info->attrs[NETDEV_A_QSTATS_SCOPE]); in netdev_nl_qstats_get_dumpit()
840 if (info->attrs[NETDEV_A_QSTATS_IFINDEX]) in netdev_nl_qstats_get_dumpit()
841 ifindex = nla_get_u32(info->attrs[NETDEV_A_QSTATS_IFINDEX]); in netdev_nl_qstats_get_dumpit()
846 NL_SET_BAD_ATTR(info->extack, in netdev_nl_qstats_get_dumpit()
847 info->attrs[NETDEV_A_QSTATS_IFINDEX]); in netdev_nl_qstats_get_dumpit()
852 info, ctx); in netdev_nl_qstats_get_dumpit()
854 NL_SET_BAD_ATTR(info->extack, in netdev_nl_qstats_get_dumpit()
855 info->attrs[NETDEV_A_QSTATS_IFINDEX]); in netdev_nl_qstats_get_dumpit()
864 info, ctx); in netdev_nl_qstats_get_dumpit()
872 int netdev_nl_bind_rx_doit(struct sk_buff *skb, struct genl_info *info) in netdev_nl_bind_rx_doit() argument
884 if (GENL_REQ_ATTR_CHECK(info, NETDEV_A_DEV_IFINDEX) || in netdev_nl_bind_rx_doit()
885 GENL_REQ_ATTR_CHECK(info, NETDEV_A_DMABUF_FD) || in netdev_nl_bind_rx_doit()
886 GENL_REQ_ATTR_CHECK(info, NETDEV_A_DMABUF_QUEUES)) in netdev_nl_bind_rx_doit()
889 ifindex = nla_get_u32(info->attrs[NETDEV_A_DEV_IFINDEX]); in netdev_nl_bind_rx_doit()
890 dmabuf_fd = nla_get_u32(info->attrs[NETDEV_A_DMABUF_FD]); in netdev_nl_bind_rx_doit()
900 hdr = genlmsg_iput(rsp, info); in netdev_nl_bind_rx_doit()
909 netdev = netdev_get_by_index_lock(genl_info_net(info), ifindex); in netdev_nl_bind_rx_doit()
919 NL_SET_BAD_ATTR(info->extack, in netdev_nl_bind_rx_doit()
920 info->attrs[NETDEV_A_DEV_IFINDEX]); in netdev_nl_bind_rx_doit()
925 priv, info->extack); in netdev_nl_bind_rx_doit()
932 genlmsg_data(info->genlhdr), in netdev_nl_bind_rx_doit()
933 genlmsg_len(info->genlhdr), rem) { in netdev_nl_bind_rx_doit()
936 netdev_queue_id_nl_policy, info->extack); in netdev_nl_bind_rx_doit()
940 if (NL_REQ_ATTR_CHECK(info->extack, attr, tb, NETDEV_A_QUEUE_ID) || in netdev_nl_bind_rx_doit()
941 NL_REQ_ATTR_CHECK(info->extack, attr, tb, NETDEV_A_QUEUE_TYPE)) { in netdev_nl_bind_rx_doit()
947 NL_SET_BAD_ATTR(info->extack, tb[NETDEV_A_QUEUE_TYPE]); in netdev_nl_bind_rx_doit()
955 info->extack); in netdev_nl_bind_rx_doit()
963 err = genlmsg_reply(rsp, info); in netdev_nl_bind_rx_doit()
984 int netdev_nl_bind_tx_doit(struct sk_buff *skb, struct genl_info *info) in netdev_nl_bind_tx_doit() argument
994 if (GENL_REQ_ATTR_CHECK(info, NETDEV_A_DEV_IFINDEX) || in netdev_nl_bind_tx_doit()
995 GENL_REQ_ATTR_CHECK(info, NETDEV_A_DMABUF_FD)) in netdev_nl_bind_tx_doit()
998 ifindex = nla_get_u32(info->attrs[NETDEV_A_DEV_IFINDEX]); in netdev_nl_bind_tx_doit()
999 dmabuf_fd = nla_get_u32(info->attrs[NETDEV_A_DMABUF_FD]); in netdev_nl_bind_tx_doit()
1009 hdr = genlmsg_iput(rsp, info); in netdev_nl_bind_tx_doit()
1017 netdev = netdev_get_by_index_lock(genl_info_net(info), ifindex); in netdev_nl_bind_tx_doit()
1030 NL_SET_ERR_MSG(info->extack, in netdev_nl_bind_tx_doit()
1036 info->extack); in netdev_nl_bind_tx_doit()
1048 return genlmsg_reply(rsp, info); in netdev_nl_bind_tx_doit()