diff options
author | Shannon Nelson <snelson@pensando.io> | 2021-03-10 22:26:28 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2021-03-11 02:34:28 +0300 |
commit | f37bc3462e80d2dac9f0b2868720782a94dfb523 (patch) | |
tree | 5bbae372757a5c1f65c9a375065958319a6fd612 /drivers/net/ethernet/pensando/ionic/ionic_dev.h | |
parent | 4b0a7539a3728f0fd7a11087d64371e8c28b4723 (diff) | |
download | linux-f37bc3462e80d2dac9f0b2868720782a94dfb523.tar.xz |
ionic: optimize fastpath struct usage
Clean up a couple of struct uses to make for better fast path
access.
Signed-off-by: Shannon Nelson <snelson@pensando.io>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/pensando/ionic/ionic_dev.h')
-rw-r--r-- | drivers/net/ethernet/pensando/ionic/ionic_dev.h | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/net/ethernet/pensando/ionic/ionic_dev.h b/drivers/net/ethernet/pensando/ionic/ionic_dev.h index 0f877c86eba6..339824cfd618 100644 --- a/drivers/net/ethernet/pensando/ionic/ionic_dev.h +++ b/drivers/net/ethernet/pensando/ionic/ionic_dev.h @@ -205,10 +205,12 @@ struct ionic_queue { struct device *dev; struct ionic_lif *lif; struct ionic_desc_info *info; + u64 dbval; u16 head_idx; u16 tail_idx; unsigned int index; unsigned int num_descs; + unsigned int max_sg_elems; u64 dbell_count; u64 stop; u64 wake; @@ -217,7 +219,6 @@ struct ionic_queue { unsigned int type; unsigned int hw_index; unsigned int hw_type; - u64 dbval; union { void *base; struct ionic_txq_desc *txq; @@ -235,7 +236,7 @@ struct ionic_queue { unsigned int sg_desc_size; unsigned int pid; char name[IONIC_QUEUE_NAME_MAX_SZ]; -}; +} ____cacheline_aligned_in_smp; #define IONIC_INTR_INDEX_NOT_ASSIGNED -1 #define IONIC_INTR_NAME_MAX_SZ 32 @@ -262,7 +263,7 @@ struct ionic_cq { u64 compl_count; void *base; dma_addr_t base_pa; -}; +} ____cacheline_aligned_in_smp; struct ionic; |