[prev in list] [next in list] [prev in thread] [next in thread]
List: linux-backports
Subject: [PATCH v2 2/6] backports: fix genlmsg_nlhdr() backport
From: Johannes Berg <johannes () sipsolutions ! net>
Date: 2018-10-02 19:32:11
Message-ID: 20181002193215.399-2-johannes () sipsolutions ! net
[Download RAW message or body]
From: Johannes Berg <johannes.berg@intel.com>
Since 4.15 this no longer takes a family argument, so add that
to the backports instead of trying to work around the family
argument having changed type.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
---
backport/backport-include/net/genetlink.h | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)
diff --git a/backport/backport-include/net/genetlink.h b/backport/backport-include/net/genetlink.h
index dfbacbf40723..d80d979ac423 100644
--- a/backport/backport-include/net/genetlink.h
+++ b/backport/backport-include/net/genetlink.h
@@ -60,6 +60,14 @@ static inline void *genl_info_userhdr(struct genl_info *info)
#endif
#if LINUX_VERSION_IS_LESS(4,15,0)
+#define genlmsg_nlhdr LINUX_BACKPORT(genlmsg_nlhdr)
+static inline struct nlmsghdr *genlmsg_nlhdr(void *user_hdr)
+{
+ return (struct nlmsghdr *)((char *)user_hdr -
+ GENL_HDRLEN -
+ NLMSG_HDRLEN);
+}
+
#ifndef genl_dump_check_consistent
static inline
void backport_genl_dump_check_consistent(struct netlink_callback *cb,
@@ -153,8 +161,6 @@ extern void genl_notify(struct sk_buff *skb, struct net *net, u32 pid,
(_fam)->mcgrps[_group].id, _info->nlhdr, _flags)
#define genlmsg_put(_skb, _pid, _seq, _fam, _flags, _cmd) \
genlmsg_put(_skb, _pid, _seq, &(_fam)->family, _flags, _cmd)
-#define genlmsg_nlhdr(_hdr, _fam) \
- genlmsg_nlhdr(_hdr, &(_fam)->family)
#ifndef genlmsg_put_reply /* might already be there from _info override above */
#define genlmsg_put_reply(_skb, _info, _fam, _flags, _cmd) \
--
2.14.4
--
To unsubscribe from this list: send the line "unsubscribe backports" in
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic