aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThomas Graf <tgraf@suug.ch>2006-11-14 22:44:52 -0500
committerDavid S. Miller <davem@sunset.davemloft.net>2006-12-03 00:22:40 -0500
commit3dabc7157859e706770c825aa229f8943db4e0e1 (patch)
treea6fc7ea0605b18c47b157cc9c168c642c365cd0c
parentcfb6eeb4c860592edd123fdea908d23c6ad1c7dc (diff)
[GENL]: Add genlmsg_new() to allocate generic netlink messages
Signed-off-by: Thomas Graf <tgraf@suug.ch> Acked-by: Paul Moore <paul.moore@hp.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--include/net/genetlink.h11
-rw-r--r--kernel/taskstats.c2
2 files changed, 12 insertions, 1 deletions
diff --git a/include/net/genetlink.h b/include/net/genetlink.h
index b619314218a6..2010465fa7d4 100644
--- a/include/net/genetlink.h
+++ b/include/net/genetlink.h
@@ -187,4 +187,15 @@ static inline int genlmsg_total_size(int payload)
187 return NLMSG_ALIGN(genlmsg_msg_size(payload)); 187 return NLMSG_ALIGN(genlmsg_msg_size(payload));
188} 188}
189 189
190/**
191 * genlmsg_new - Allocate a new generic netlink message
192 * @payload: size of the message payload
193 * @flags: the type of memory to allocate.
194 */
195static inline struct sk_buff *genlmsg_new(size_t payload, gfp_t flags)
196{
197 return nlmsg_new(genlmsg_total_size(payload), flags);
198}
199
200
190#endif /* __NET_GENERIC_NETLINK_H */ 201#endif /* __NET_GENERIC_NETLINK_H */
diff --git a/kernel/taskstats.c b/kernel/taskstats.c
index 4f3f0e48c845..faa5239813ce 100644
--- a/kernel/taskstats.c
+++ b/kernel/taskstats.c
@@ -77,7 +77,7 @@ static int prepare_reply(struct genl_info *info, u8 cmd, struct sk_buff **skbp,
77 /* 77 /*
78 * If new attributes are added, please revisit this allocation 78 * If new attributes are added, please revisit this allocation
79 */ 79 */
80 skb = nlmsg_new(genlmsg_total_size(size), GFP_KERNEL); 80 skb = genlmsg_new(size, GFP_KERNEL);
81 if (!skb) 81 if (!skb)
82 return -ENOMEM; 82 return -ENOMEM;
83 83