mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-31 04:01:48 -04:00
genetlink: introduce and use genl_family_attrbuf()
This helper function allows family implementations to access their family's attrbuf. This gets rid of the attrbuf usage in families, and also adds locking validation, since it's not valid to use the attrbuf with parallel_ops or outside of the dumpit callback. Signed-off-by: Johannes Berg <[email protected]> Signed-off-by: David S. Miller <[email protected]>
This commit is contained in:
parent
4fe77d82ef
commit
c90c39dab3
6 changed files with 55 additions and 35 deletions
|
|
@ -263,13 +263,14 @@ nl802154_prepare_wpan_dev_dump(struct sk_buff *skb,
|
|||
|
||||
if (!cb->args[0]) {
|
||||
err = nlmsg_parse(cb->nlh, GENL_HDRLEN + nl802154_fam.hdrsize,
|
||||
nl802154_fam.attrbuf, nl802154_fam.maxattr,
|
||||
genl_family_attrbuf(&nl802154_fam),
|
||||
nl802154_fam.maxattr,
|
||||
nl802154_policy);
|
||||
if (err)
|
||||
goto out_unlock;
|
||||
|
||||
*wpan_dev = __cfg802154_wpan_dev_from_attrs(sock_net(skb->sk),
|
||||
nl802154_fam.attrbuf);
|
||||
genl_family_attrbuf(&nl802154_fam));
|
||||
if (IS_ERR(*wpan_dev)) {
|
||||
err = PTR_ERR(*wpan_dev);
|
||||
goto out_unlock;
|
||||
|
|
@ -575,7 +576,7 @@ static int nl802154_dump_wpan_phy_parse(struct sk_buff *skb,
|
|||
struct netlink_callback *cb,
|
||||
struct nl802154_dump_wpan_phy_state *state)
|
||||
{
|
||||
struct nlattr **tb = nl802154_fam.attrbuf;
|
||||
struct nlattr **tb = genl_family_attrbuf(&nl802154_fam);
|
||||
int ret = nlmsg_parse(cb->nlh, GENL_HDRLEN + nl802154_fam.hdrsize,
|
||||
tb, nl802154_fam.maxattr, nl802154_policy);
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue