Thomas Bogendoerfer d64b83
From: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Thomas Bogendoerfer d64b83
Date: Sun, 26 Dec 2021 15:06:17 +0100
Thomas Bogendoerfer d64b83
Subject: ionic: Initialize the 'lif->dbid_inuse' bitmap
Thomas Bogendoerfer d64b83
Patch-mainline: v5.16-rc8
Thomas Bogendoerfer d64b83
Git-commit: 140c7bc7d1195750342ea0e6ab76179499ae7cd7
Thomas Bogendoerfer d64b83
References: jsc#SLE-19282
Thomas Bogendoerfer d64b83
Thomas Bogendoerfer d64b83
When allocated, this bitmap is not initialized. Only the first bit is set a
Thomas Bogendoerfer d64b83
few lines below.
Thomas Bogendoerfer d64b83
Thomas Bogendoerfer d64b83
Use bitmap_zalloc() to make sure that it is cleared before being used.
Thomas Bogendoerfer d64b83
Thomas Bogendoerfer d64b83
Fixes: 6461b446f2a0 ("ionic: Add interrupts and doorbells")
Thomas Bogendoerfer d64b83
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Thomas Bogendoerfer d64b83
Signed-off-by: Shannon Nelson <snelson@pensando.io>
Thomas Bogendoerfer d64b83
Link: https://lore.kernel.org/r/6a478eae0b5e6c63774e1f0ddb1a3f8c38fa8ade.1640527506.git.christophe.jaillet@wanadoo.fr
Thomas Bogendoerfer d64b83
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Thomas Bogendoerfer d64b83
Acked-by: Thomas Bogendoerfer <tbogendoerfer@suse.de>
Thomas Bogendoerfer d64b83
---
Thomas Bogendoerfer d64b83
 drivers/net/ethernet/pensando/ionic/ionic_lif.c |    2 +-
Thomas Bogendoerfer d64b83
 1 file changed, 1 insertion(+), 1 deletion(-)
Thomas Bogendoerfer d64b83
Thomas Bogendoerfer d64b83
--- a/drivers/net/ethernet/pensando/ionic/ionic_lif.c
Thomas Bogendoerfer d64b83
+++ b/drivers/net/ethernet/pensando/ionic/ionic_lif.c
Thomas Bogendoerfer d64b83
@@ -3135,7 +3135,7 @@ int ionic_lif_init(struct ionic_lif *lif
Thomas Bogendoerfer d64b83
 		return -EINVAL;
Thomas Bogendoerfer d64b83
 	}
Thomas Bogendoerfer d64b83
 
Thomas Bogendoerfer d64b83
-	lif->dbid_inuse = bitmap_alloc(lif->dbid_count, GFP_KERNEL);
Thomas Bogendoerfer d64b83
+	lif->dbid_inuse = bitmap_zalloc(lif->dbid_count, GFP_KERNEL);
Thomas Bogendoerfer d64b83
 	if (!lif->dbid_inuse) {
Thomas Bogendoerfer d64b83
 		dev_err(dev, "Failed alloc doorbell id bitmap, aborting\n");
Thomas Bogendoerfer d64b83
 		return -ENOMEM;