OSDN Git Service

ionic: remove the dbid_inuse bitmap
authorShannon Nelson <snelson@pensando.io>
Mon, 24 Jan 2022 18:53:10 +0000 (10:53 -0800)
committerDavid S. Miller <davem@davemloft.net>
Tue, 25 Jan 2022 11:15:09 +0000 (11:15 +0000)
The dbid_inuse bitmap is not useful in this driver so remove it.

Fixes: 6461b446f2a0 ("ionic: Add interrupts and doorbells")
Signed-off-by: Shannon Nelson <snelson@pensando.io>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/pensando/ionic/ionic_lif.c
drivers/net/ethernet/pensando/ionic/ionic_lif.h

index c9535f4..e84a01e 100644 (file)
@@ -3014,8 +3014,6 @@ void ionic_lif_free(struct ionic_lif *lif)
        /* unmap doorbell page */
        ionic_bus_unmap_dbpage(lif->ionic, lif->kern_dbpage);
        lif->kern_dbpage = NULL;
-       kfree(lif->dbid_inuse);
-       lif->dbid_inuse = NULL;
 
        mutex_destroy(&lif->config_lock);
        mutex_destroy(&lif->queue_lock);
@@ -3215,22 +3213,12 @@ int ionic_lif_init(struct ionic_lif *lif)
                return -EINVAL;
        }
 
-       lif->dbid_inuse = bitmap_zalloc(lif->dbid_count, GFP_KERNEL);
-       if (!lif->dbid_inuse) {
-               dev_err(dev, "Failed alloc doorbell id bitmap, aborting\n");
-               return -ENOMEM;
-       }
-
-       /* first doorbell id reserved for kernel (dbid aka pid == zero) */
-       set_bit(0, lif->dbid_inuse);
        lif->kern_pid = 0;
-
        dbpage_num = ionic_db_page_num(lif, lif->kern_pid);
        lif->kern_dbpage = ionic_bus_map_dbpage(lif->ionic, dbpage_num);
        if (!lif->kern_dbpage) {
                dev_err(dev, "Cannot map dbpage, aborting\n");
-               err = -ENOMEM;
-               goto err_out_free_dbid;
+               return -ENOMEM;
        }
 
        err = ionic_lif_adminq_init(lif);
@@ -3273,9 +3261,6 @@ err_out_adminq_deinit:
        ionic_lif_reset(lif);
        ionic_bus_unmap_dbpage(lif->ionic, lif->kern_dbpage);
        lif->kern_dbpage = NULL;
-err_out_free_dbid:
-       kfree(lif->dbid_inuse);
-       lif->dbid_inuse = NULL;
 
        return err;
 }
index 2db708d..a53984b 100644 (file)
@@ -214,7 +214,6 @@ struct ionic_lif {
        u32 rx_coalesce_hw;             /* what the hw is using */
        u32 tx_coalesce_usecs;          /* what the user asked for */
        u32 tx_coalesce_hw;             /* what the hw is using */
-       unsigned long *dbid_inuse;
        unsigned int dbid_count;
 
        struct ionic_phc *phc;