--- /dev/null
+On older kernels, we can't do this workaround, so if you use
+an old 64-bit kernel with compat you'd better upgrade.
+
+--- a/net/wireless/nl80211.c
++++ b/net/wireless/nl80211.c
+@@ -1321,6 +1321,7 @@ static int nl80211_dump_wiphy(struct sk_
+ cb->nlh->nlmsg_seq, NLM_F_MULTI,
+ dev);
+ if (ret < 0) {
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,1,0)
+ /*
+ * If sending the wiphy data didn't fit (ENOBUFS or
+ * EMSGSIZE returned), this SKB is still empty (so
+@@ -1340,6 +1341,7 @@ static int nl80211_dump_wiphy(struct sk_
+ mutex_unlock(&cfg80211_mutex);
+ return 1;
+ }
++#endif
+ idx--;
+ break;
+ }