mirror of
https://git.openwrt.org/feed/routing.git
synced 2025-01-09 04:07:48 +08:00
batman-adv: Drop compat-hacks for unsupported kernel versions
OpenWrt only supports kernel 4.9, 4.14 and 4.19. Older kernel versions than 4.9 therefore don't require support. Signed-off-by: Sven Eckelmann <sven@narfation.org>
This commit is contained in:
parent
c953099d06
commit
89bcb4b22f
@ -10,7 +10,7 @@ include $(TOPDIR)/rules.mk
|
||||
PKG_NAME:=batman-adv
|
||||
|
||||
PKG_VERSION:=2019.2
|
||||
PKG_RELEASE:=4
|
||||
PKG_RELEASE:=5
|
||||
PKG_HASH:=70c3f6a6cf88d2b25681a76768a52ed92d9fe992ba8e358368b6a8088757adc8
|
||||
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
||||
|
@ -5,24 +5,7 @@
|
||||
#include <linux/version.h> /* LINUX_VERSION_CODE */
|
||||
#include <linux/types.h>
|
||||
|
||||
#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 1, 0)
|
||||
|
||||
#define dev_get_iflink(_net_dev) ((_net_dev)->iflink)
|
||||
|
||||
#endif /* < KERNEL_VERSION(4, 1, 0) */
|
||||
|
||||
#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 5, 0)
|
||||
|
||||
#include <linux/netdevice.h>
|
||||
|
||||
#define netdev_master_upper_dev_link(dev, upper_dev, upper_priv, upper_info, extack) ({\
|
||||
BUILD_BUG_ON(upper_priv != NULL); \
|
||||
BUILD_BUG_ON(upper_info != NULL); \
|
||||
BUILD_BUG_ON(extack != NULL); \
|
||||
netdev_master_upper_dev_link(dev, upper_dev); \
|
||||
})
|
||||
|
||||
#elif LINUX_VERSION_CODE < KERNEL_VERSION(4, 15, 0)
|
||||
#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 15, 0)
|
||||
|
||||
#include <linux/netdevice.h>
|
||||
|
||||
@ -31,27 +14,10 @@
|
||||
netdev_master_upper_dev_link(dev, upper_dev, upper_priv, upper_info); \
|
||||
})
|
||||
|
||||
#endif /* < KERNEL_VERSION(4, 5, 0) */
|
||||
#endif /* < KERNEL_VERSION(4, 15, 0) */
|
||||
|
||||
|
||||
#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 0, 0)
|
||||
|
||||
/* wild hack for batadv_getlink_net only */
|
||||
#define get_link_net get_xstats_size || 1 ? fallback_net : (struct net*)netdev->rtnl_link_ops->get_xstats_size
|
||||
|
||||
#endif /* < KERNEL_VERSION(4, 0, 0) */
|
||||
|
||||
|
||||
#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 2, 0)
|
||||
|
||||
struct sk_buff *skb_checksum_trimmed(struct sk_buff *skb,
|
||||
unsigned int transport_len,
|
||||
__sum16(*skb_chkf)(struct sk_buff *skb));
|
||||
|
||||
int ip_mc_check_igmp(struct sk_buff *skb);
|
||||
int ipv6_mc_check_mld(struct sk_buff *skb);
|
||||
|
||||
#elif LINUX_VERSION_CODE < KERNEL_VERSION(5, 1, 0)
|
||||
#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 1, 0)
|
||||
|
||||
#include_next <linux/igmp.h>
|
||||
#include_next <net/addrconf.h>
|
||||
@ -86,57 +52,7 @@ static inline int batadv_ip_mc_check_igmp2(struct sk_buff *skb,
|
||||
#define ip_mc_check_igmp(...) \
|
||||
ip_mc_check_igmp_get(__VA_ARGS__, batadv_ip_mc_check_igmp2, batadv_ip_mc_check_igmp1)(__VA_ARGS__)
|
||||
|
||||
#endif /* < KERNEL_VERSION(4, 2, 0) */
|
||||
|
||||
#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 3, 0)
|
||||
|
||||
#define IFF_NO_QUEUE 0; dev->tx_queue_len = 0
|
||||
|
||||
static inline bool hlist_fake(struct hlist_node *h)
|
||||
{
|
||||
return h->pprev == &h->next;
|
||||
}
|
||||
|
||||
#endif /* < KERNEL_VERSION(4, 3, 0) */
|
||||
|
||||
#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 6, 0)
|
||||
|
||||
#include <linux/ethtool.h>
|
||||
|
||||
#define ethtool_link_ksettings batadv_ethtool_link_ksettings
|
||||
|
||||
struct batadv_ethtool_link_ksettings {
|
||||
struct {
|
||||
__u32 speed;
|
||||
__u8 duplex;
|
||||
__u8 autoneg;
|
||||
} base;
|
||||
};
|
||||
|
||||
#define __ethtool_get_link_ksettings(__dev, __link_settings) \
|
||||
batadv_ethtool_get_link_ksettings(__dev, __link_settings)
|
||||
|
||||
static inline int
|
||||
batadv_ethtool_get_link_ksettings(struct net_device *dev,
|
||||
struct ethtool_link_ksettings *link_ksettings)
|
||||
{
|
||||
struct ethtool_cmd cmd;
|
||||
int ret;
|
||||
|
||||
memset(&cmd, 0, sizeof(cmd));
|
||||
ret = __ethtool_get_settings(dev, &cmd);
|
||||
|
||||
if (ret != 0)
|
||||
return ret;
|
||||
|
||||
link_ksettings->base.duplex = cmd.duplex;
|
||||
link_ksettings->base.speed = ethtool_cmd_speed(&cmd);
|
||||
link_ksettings->base.autoneg = cmd.autoneg;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
#endif /* < KERNEL_VERSION(4, 6, 0) */
|
||||
#endif /* < KERNEL_VERSION(5, 1, 0) */
|
||||
|
||||
|
||||
#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 10, 0)
|
||||
|
Loading…
Reference in New Issue
Block a user