diff mbox series

[net] nfp: flower: fix ABI mismatch between driver and firmware

Message ID 20200902150458.10024-1-simon.horman@netronome.com
State New
Headers show
Series [net] nfp: flower: fix ABI mismatch between driver and firmware | expand

Commit Message

Simon Horman Sept. 2, 2020, 3:04 p.m. UTC
From: Louis Peens <louis.peens@netronome.com>

Fix an issue where the driver wrongly detected ipv6 neighbour updates
from the NFP as corrupt. Add a reserved field on the kernel side so
it is similar to the ipv4 version of the struct and has space for the
extra bytes from the card.

Fixes: 9ea9bfa12240 ("nfp: flower: support ipv6 tunnel keep-alive messages from fw")

Signed-off-by: Louis Peens <louis.peens@netronome.com>
Signed-off-by: Simon Horman <simon.horman@netronome.com>
---
 drivers/net/ethernet/netronome/nfp/flower/tunnel_conf.c | 2 ++
 1 file changed, 2 insertions(+)

Comments

Jakub Kicinski Sept. 2, 2020, 3:41 p.m. UTC | #1
On Wed,  2 Sep 2020 17:04:58 +0200 Simon Horman wrote:
> From: Louis Peens <louis.peens@netronome.com>
> 
> Fix an issue where the driver wrongly detected ipv6 neighbour updates
> from the NFP as corrupt. Add a reserved field on the kernel side so
> it is similar to the ipv4 version of the struct and has space for the
> extra bytes from the card.
> 
> Fixes: 9ea9bfa12240 ("nfp: flower: support ipv6 tunnel keep-alive messages from fw")
> 

no need for this empty line

> Signed-off-by: Louis Peens <louis.peens@netronome.com>
> Signed-off-by: Simon Horman <simon.horman@netronome.com>

Acked-by: Jakub Kicinski <kuba@kernel.org>
diff mbox series

Patch

diff --git a/drivers/net/ethernet/netronome/nfp/flower/tunnel_conf.c b/drivers/net/ethernet/netronome/nfp/flower/tunnel_conf.c
index 2df3deedf9fd..7248d248f604 100644
--- a/drivers/net/ethernet/netronome/nfp/flower/tunnel_conf.c
+++ b/drivers/net/ethernet/netronome/nfp/flower/tunnel_conf.c
@@ -61,6 +61,7 @@  struct nfp_tun_active_tuns {
  * @flags:		options part of the request
  * @tun_info.ipv6:		dest IPv6 address of active route
  * @tun_info.egress_port:	port the encapsulated packet egressed
+ * @tun_info.extra:		reserved for future use
  * @tun_info:		tunnels that have sent traffic in reported period
  */
 struct nfp_tun_active_tuns_v6 {
@@ -70,6 +71,7 @@  struct nfp_tun_active_tuns_v6 {
 	struct route_ip_info_v6 {
 		struct in6_addr ipv6;
 		__be32 egress_port;
+		__be32 extra[2];
 	} tun_info[];
 };