diff options
| author | luwenpeng <[email protected]> | 2023-08-04 16:56:32 +0800 |
|---|---|---|
| committer | luwenpeng <[email protected]> | 2023-08-08 10:55:42 +0800 |
| commit | bc39cd0706dceea2a5ea875d6c7898377024650f (patch) | |
| tree | 5f6fd8983a508367fd039ccd304297a5236631bd /bpf | |
| parent | e43b4954b5b75ef5dd27974073b691a68bdbf9f7 (diff) | |
TFE适配MRZCPD的分流算法的变更;并增加分流的调试日志v4.8.33-20230808
Diffstat (limited to 'bpf')
| -rw-r--r-- | bpf/bpf_tun_rss_steering.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/bpf/bpf_tun_rss_steering.c b/bpf/bpf_tun_rss_steering.c index 36b80e1..c07166a 100644 --- a/bpf/bpf_tun_rss_steering.c +++ b/bpf/bpf_tun_rss_steering.c @@ -328,11 +328,11 @@ static inline void select_rss_queue(struct packet *packet, struct bpf_config *co { packet->src_addr_hash = crc32_hash(&packet->in4_src, 4, 0); packet->dst_addr_hash = crc32_hash(&packet->in4_dst, 4, 0); - packet->last_hash = packet->src_addr_hash ^ packet->dst_addr_hash; + packet->last_hash = packet->src_addr_hash + packet->dst_addr_hash; packet->src_port_hash = crc32_hash(&packet->src_port, 2, packet->last_hash); packet->dst_port_hash = crc32_hash(&packet->dst_port, 2, packet->last_hash); - packet->last_hash = packet->src_port_hash ^ packet->dst_port_hash; + packet->last_hash = packet->src_port_hash + packet->dst_port_hash; packet->select_queue = packet->last_hash % bpf_config_get_queue_num(config); } @@ -340,7 +340,7 @@ static inline void select_rss_queue(struct packet *packet, struct bpf_config *co { packet->src_addr_hash = crc32_hash(&packet->in4_src, 4, 0); packet->dst_addr_hash = crc32_hash(&packet->in4_dst, 4, 0); - packet->last_hash = packet->src_addr_hash ^ packet->dst_addr_hash; + packet->last_hash = packet->src_addr_hash + packet->dst_addr_hash; packet->select_queue = packet->last_hash % bpf_config_get_queue_num(config); } @@ -352,11 +352,11 @@ static inline void select_rss_queue(struct packet *packet, struct bpf_config *co { packet->src_addr_hash = crc32_hash(&packet->in6_src, 16, 0); packet->dst_addr_hash = crc32_hash(&packet->in6_dst, 16, 0); - packet->last_hash = packet->src_addr_hash ^ packet->dst_addr_hash; + packet->last_hash = packet->src_addr_hash + packet->dst_addr_hash; packet->src_port_hash = crc32_hash(&packet->src_port, 2, packet->last_hash); packet->dst_port_hash = crc32_hash(&packet->dst_port, 2, packet->last_hash); - packet->last_hash = packet->src_port_hash ^ packet->dst_port_hash; + packet->last_hash = packet->src_port_hash + packet->dst_port_hash; packet->select_queue = packet->last_hash % bpf_config_get_queue_num(config); } @@ -364,7 +364,7 @@ static inline void select_rss_queue(struct packet *packet, struct bpf_config *co { packet->src_addr_hash = crc32_hash(&packet->in6_src, 16, 0); packet->dst_addr_hash = crc32_hash(&packet->in6_dst, 16, 0); - packet->last_hash = packet->src_addr_hash ^ packet->dst_addr_hash; + packet->last_hash = packet->src_addr_hash + packet->dst_addr_hash; packet->select_queue = packet->last_hash % bpf_config_get_queue_num(config); } |
