summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--backport/backport-include/net/genetlink.h10
-rw-r--r--patches/0078-genl-extack.cocci6
2 files changed, 16 insertions, 0 deletions
diff --git a/backport/backport-include/net/genetlink.h b/backport/backport-include/net/genetlink.h
index 772f10f0..747b6dac 100644
--- a/backport/backport-include/net/genetlink.h
+++ b/backport/backport-include/net/genetlink.h
@@ -34,6 +34,16 @@ static inline struct netlink_ext_ack *genl_info_extack(struct genl_info *info)
#endif
}
+/* this is for patches we apply */
+static inline struct netlink_ext_ack *genl_callback_extack(struct netlink_callback *cb)
+{
+#if LINUX_VERSION_IS_GEQ(4,20,0)
+ return cb->extack;
+#else
+ return NULL;
+#endif
+}
+
/* this gets put in place of info->userhdr, since we use that above */
static inline void *genl_info_userhdr(struct genl_info *info)
{
diff --git a/patches/0078-genl-extack.cocci b/patches/0078-genl-extack.cocci
index 5560e09d..860d68b4 100644
--- a/patches/0078-genl-extack.cocci
+++ b/patches/0078-genl-extack.cocci
@@ -9,3 +9,9 @@ struct genl_info *info;
@@
-info->userhdr
+genl_info_userhdr(info)
+
+@@
+struct netlink_callback *cb;
+@@
+-cb->extack
++genl_callback_extack(cb)