rps: Inspect PPTP encapsulated by GRE to get flow hash
The PPTP is encapsulated by GRE header with that GRE_VERSION bits must contain one. But current GRE RPS needs the GRE_VERSION must be zero. So RPS does not work for PPTP traffic. In my test environment, there are four MIPS cores, and all traffic are passed through by PPTP. As a result, only one core is 100% busy while other three cores are very idle. After this patch, the usage of four cores are balanced well. Signed-off-by:Gao Feng <fgao@ikuai8.com> Reviewed-by:
Philip Prindeville <philipp@redfish-solutions.com> Signed-off-by:
David S. Miller <davem@davemloft.net>
Showing
- drivers/net/ppp/pptp.c 1 addition, 35 deletionsdrivers/net/ppp/pptp.c
- include/net/gre.h 9 additions, 1 deletioninclude/net/gre.h
- include/net/pptp.h 40 additions, 0 deletionsinclude/net/pptp.h
- include/uapi/linux/if_tunnel.h 6 additions, 1 deletioninclude/uapi/linux/if_tunnel.h
- net/core/flow_dissector.c 79 additions, 34 deletionsnet/core/flow_dissector.c
Loading
Please register or sign in to comment