Lines Matching refs:msg

71 static int devlink_nl_region_snapshot_id_put(struct sk_buff *msg,  in devlink_nl_region_snapshot_id_put()  argument
78 snap_attr = nla_nest_start_noflag(msg, DEVLINK_ATTR_REGION_SNAPSHOT); in devlink_nl_region_snapshot_id_put()
82 err = nla_put_u32(msg, DEVLINK_ATTR_REGION_SNAPSHOT_ID, snapshot->id); in devlink_nl_region_snapshot_id_put()
86 nla_nest_end(msg, snap_attr); in devlink_nl_region_snapshot_id_put()
90 nla_nest_cancel(msg, snap_attr); in devlink_nl_region_snapshot_id_put()
94 static int devlink_nl_region_snapshots_id_put(struct sk_buff *msg, in devlink_nl_region_snapshots_id_put() argument
102 snapshots_attr = nla_nest_start_noflag(msg, in devlink_nl_region_snapshots_id_put()
108 err = devlink_nl_region_snapshot_id_put(msg, devlink, snapshot); in devlink_nl_region_snapshots_id_put()
113 nla_nest_end(msg, snapshots_attr); in devlink_nl_region_snapshots_id_put()
117 nla_nest_cancel(msg, snapshots_attr); in devlink_nl_region_snapshots_id_put()
121 static int devlink_nl_region_fill(struct sk_buff *msg, struct devlink *devlink, in devlink_nl_region_fill() argument
129 hdr = genlmsg_put(msg, portid, seq, &devlink_nl_family, flags, cmd); in devlink_nl_region_fill()
133 err = devlink_nl_put_handle(msg, devlink); in devlink_nl_region_fill()
138 err = nla_put_u32(msg, DEVLINK_ATTR_PORT_INDEX, in devlink_nl_region_fill()
144 err = nla_put_string(msg, DEVLINK_ATTR_REGION_NAME, region->ops->name); in devlink_nl_region_fill()
148 err = nla_put_u64_64bit(msg, DEVLINK_ATTR_REGION_SIZE, in devlink_nl_region_fill()
154 err = nla_put_u32(msg, DEVLINK_ATTR_REGION_MAX_SNAPSHOTS, in devlink_nl_region_fill()
159 err = devlink_nl_region_snapshots_id_put(msg, devlink, region); in devlink_nl_region_fill()
163 genlmsg_end(msg, hdr); in devlink_nl_region_fill()
167 genlmsg_cancel(msg, hdr); in devlink_nl_region_fill()
177 struct sk_buff *msg; in devlink_nl_region_notify_build() local
181 msg = nlmsg_new(NLMSG_DEFAULT_SIZE, GFP_KERNEL); in devlink_nl_region_notify_build()
182 if (!msg) in devlink_nl_region_notify_build()
185 hdr = genlmsg_put(msg, portid, seq, &devlink_nl_family, 0, cmd); in devlink_nl_region_notify_build()
191 err = devlink_nl_put_handle(msg, devlink); in devlink_nl_region_notify_build()
196 err = nla_put_u32(msg, DEVLINK_ATTR_PORT_INDEX, in devlink_nl_region_notify_build()
202 err = nla_put_string(msg, DEVLINK_ATTR_REGION_NAME, in devlink_nl_region_notify_build()
208 err = nla_put_u32(msg, DEVLINK_ATTR_REGION_SNAPSHOT_ID, in devlink_nl_region_notify_build()
213 err = nla_put_u64_64bit(msg, DEVLINK_ATTR_REGION_SIZE, in devlink_nl_region_notify_build()
218 genlmsg_end(msg, hdr); in devlink_nl_region_notify_build()
220 return msg; in devlink_nl_region_notify_build()
223 genlmsg_cancel(msg, hdr); in devlink_nl_region_notify_build()
225 nlmsg_free(msg); in devlink_nl_region_notify_build()
234 struct sk_buff *msg; in devlink_nl_region_notify() local
240 msg = devlink_nl_region_notify_build(region, snapshot, cmd, 0, 0); in devlink_nl_region_notify()
241 if (IS_ERR(msg)) in devlink_nl_region_notify()
244 genlmsg_multicast_netns(&devlink_nl_family, devlink_net(devlink), msg, in devlink_nl_region_notify()
478 struct sk_buff *msg; in devlink_nl_region_get_doit() local
502 msg = nlmsg_new(NLMSG_DEFAULT_SIZE, GFP_KERNEL); in devlink_nl_region_get_doit()
503 if (!msg) in devlink_nl_region_get_doit()
506 err = devlink_nl_region_fill(msg, devlink, DEVLINK_CMD_REGION_GET, in devlink_nl_region_get_doit()
510 nlmsg_free(msg); in devlink_nl_region_get_doit()
514 return genlmsg_reply(msg, info); in devlink_nl_region_get_doit()
517 static int devlink_nl_cmd_region_get_port_dumpit(struct sk_buff *msg, in devlink_nl_cmd_region_get_port_dumpit() argument
530 err = devlink_nl_region_fill(msg, port->devlink, in devlink_nl_cmd_region_get_port_dumpit()
544 static int devlink_nl_region_get_dump_one(struct sk_buff *msg, in devlink_nl_region_get_dump_one() argument
561 err = devlink_nl_region_fill(msg, devlink, in devlink_nl_region_get_dump_one()
574 err = devlink_nl_cmd_region_get_port_dumpit(msg, cb, port, &idx, in devlink_nl_region_get_dump_one()
722 struct sk_buff *msg; in devlink_nl_cmd_region_new() local
731 msg = devlink_nl_region_notify_build(region, snapshot, in devlink_nl_cmd_region_new()
735 err = PTR_ERR_OR_ZERO(msg); in devlink_nl_cmd_region_new()
739 err = genlmsg_reply(msg, info); in devlink_nl_cmd_region_new()
761 static int devlink_nl_cmd_region_read_chunk_fill(struct sk_buff *msg, in devlink_nl_cmd_region_read_chunk_fill() argument
768 chunk_attr = nla_nest_start_noflag(msg, DEVLINK_ATTR_REGION_CHUNK); in devlink_nl_cmd_region_read_chunk_fill()
772 err = nla_put(msg, DEVLINK_ATTR_REGION_CHUNK_DATA, chunk_size, chunk); in devlink_nl_cmd_region_read_chunk_fill()
776 err = nla_put_u64_64bit(msg, DEVLINK_ATTR_REGION_CHUNK_ADDR, addr, in devlink_nl_cmd_region_read_chunk_fill()
781 nla_nest_end(msg, chunk_attr); in devlink_nl_cmd_region_read_chunk_fill()
785 nla_nest_cancel(msg, chunk_attr); in devlink_nl_cmd_region_read_chunk_fill()