X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=drivers%2Fnet%2Ftap%2Ftap_bpf_program.c;h=20c310e5e7ba4c8bb0e604ec36e706572a70c14f;hb=25ae7f1a5d9d127a46f8d62d1d689f77a78138fd;hp=531569b125c8dce45502b9f9e67aac043dde7290;hpb=24ac604ef7469eb5773c2504b313dd00257f8df3;p=dpdk.git diff --git a/drivers/net/tap/tap_bpf_program.c b/drivers/net/tap/tap_bpf_program.c index 531569b125..20c310e5e7 100644 --- a/drivers/net/tap/tap_bpf_program.c +++ b/drivers/net/tap/tap_bpf_program.c @@ -19,7 +19,7 @@ #include "tap_rss.h" /** Create IPv4 address */ -#define RTE_IPv4(a, b, c, d) ((__u32)(((a) & 0xff) << 24) | \ +#define IPv4(a, b, c, d) ((__u32)(((a) & 0xff) << 24) | \ (((b) & 0xff) << 16) | \ (((c) & 0xff) << 8) | \ ((d) & 0xff)) @@ -37,7 +37,7 @@ #define KEY_IDX 0 #define BPF_MAP_ID_KEY 1 -struct rte_vlan_hdr { +struct vlan_hdr { __be16 proto; __be16 tci; }; @@ -75,14 +75,14 @@ struct ipv4_l3_l4_tuple { __u32 dst_addr; __u16 dport; __u16 sport; -} __attribute__((packed)); +} __rte_packed; struct ipv6_l3_l4_tuple { __u8 src_addr[16]; __u8 dst_addr[16]; __u16 dport; __u16 sport; -} __attribute__((packed)); +} __rte_packed; static const __u8 def_rss_key[TAP_RSS_HASH_KEY_SIZE] = { 0xd1, 0x81, 0xc6, 0x2c, @@ -141,12 +141,12 @@ rss_l3_l4(struct __sk_buff *skb) /* Get correct proto for 802.1ad */ if (skb->vlan_present && skb->vlan_proto == htons(ETH_P_8021AD)) { - if (data + ETH_ALEN * 2 + sizeof(struct rte_vlan_hdr) + + if (data + ETH_ALEN * 2 + sizeof(struct vlan_hdr) + sizeof(proto) > data_end) return TC_ACT_OK; proto = *(__u16 *)(data + ETH_ALEN * 2 + - sizeof(struct rte_vlan_hdr)); - off += sizeof(struct rte_vlan_hdr); + sizeof(struct vlan_hdr)); + off += sizeof(struct vlan_hdr); } if (proto == htons(ETH_P_IP)) { @@ -157,11 +157,11 @@ rss_l3_l4(struct __sk_buff *skb) __u8 *src_dst_addr = data + off + offsetof(struct iphdr, saddr); __u8 *src_dst_port = data + off + sizeof(struct iphdr); struct ipv4_l3_l4_tuple v4_tuple = { - .src_addr = RTE_IPv4(*(src_dst_addr + 0), + .src_addr = IPv4(*(src_dst_addr + 0), *(src_dst_addr + 1), *(src_dst_addr + 2), *(src_dst_addr + 3)), - .dst_addr = RTE_IPv4(*(src_dst_addr + 4), + .dst_addr = IPv4(*(src_dst_addr + 4), *(src_dst_addr + 5), *(src_dst_addr + 6), *(src_dst_addr + 7)),