Tue, Jan 15, 2019 at 01:50:03AM CET, jakub.kicin...@netronome.com wrote: [...]
>+static int devlink_nl_info_sn_fill(struct sk_buff *msg, struct devlink >*devlink, >+ struct netlink_ext_ack *extack) >+{ >+ unsigned char sn[32]; :/ Not good to have number directly here. >+ size_t len = 0; >+ int err; >+ >+ if (!devlink->ops->serial_get) >+ return 0; >+ >+ err = devlink->ops->serial_get(devlink, sn, ARRAY_SIZE(sn), &len, >+ extack); Maybe it would be good to have a helper to fill this as well. That way, driver could pass buffer of any length and helper would encode it into skb. >+ if (err) >+ return err; >+ >+ return nla_put(msg, DEVLINK_ATTR_INFO_SERIAL_NUMBER, len, sn); >+} [...]