Message ID | 20210421120454.1541240-3-tobias@waldekranz.com |
---|---|
State | New |
Headers | show |
Series | net: dsa: mv88e6xxx: Tiny fixes/improvements | expand |
On Wed, Apr 21, 2021 at 02:04:53PM +0200, Tobias Waldekranz wrote: > In the unlikely event of the VTU being loaded to the brim with 4k > entries, the last one was placed in the buffer, but the size reported > to devlink was off-by-one. Make sure that the final entry is available > to the caller. > > Fixes: ca4d632aef03 ("net: dsa: mv88e6xxx: Export VTU as devlink region") > Signed-off-by: Tobias Waldekranz <tobias@waldekranz.com> The snapshot code gets it right, but not this :-( Reviewed-by: Andrew Lunn <andrew@lunn.ch> Andrew
diff --git a/drivers/net/dsa/mv88e6xxx/devlink.c b/drivers/net/dsa/mv88e6xxx/devlink.c index 21953d6d484c..ada7a38d4d31 100644 --- a/drivers/net/dsa/mv88e6xxx/devlink.c +++ b/drivers/net/dsa/mv88e6xxx/devlink.c @@ -678,7 +678,7 @@ static int mv88e6xxx_setup_devlink_regions_global(struct dsa_switch *ds, sizeof(struct mv88e6xxx_devlink_atu_entry); break; case MV88E6XXX_REGION_VTU: - size = mv88e6xxx_max_vid(chip) * + size = (mv88e6xxx_max_vid(chip) + 1) * sizeof(struct mv88e6xxx_devlink_vtu_entry); break; }
In the unlikely event of the VTU being loaded to the brim with 4k entries, the last one was placed in the buffer, but the size reported to devlink was off-by-one. Make sure that the final entry is available to the caller. Fixes: ca4d632aef03 ("net: dsa: mv88e6xxx: Export VTU as devlink region") Signed-off-by: Tobias Waldekranz <tobias@waldekranz.com> --- drivers/net/dsa/mv88e6xxx/devlink.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)