Messages in this thread Patch in this message | | | From | Anand Khoje <> | Subject | [PATCH v3 2/3] IB/core: Shuffle locks in ib_port_data to save memory | Date | Wed, 9 Jun 2021 11:25:33 +0530 |
| |
pahole shows two 4-byte holes in struct ib_port_data after pkey_list_lock and netdev_lock respectively.
Shuffling the netdev_lock to be after pkey_list_lock, this shaves off eight bytes from the struct.
Suggested-by: Haakon Bugge <haakon.bugge@oracle.com> Signed-off-by: Anand Khoje <anand.a.khoje@oracle.com> Reviewed-by: Leon Romanovsky <leonro@nvidia.com>
---
v1 -> v2: - Split the v1 patch in 3 patches as per Leon's suggestion. v2 -> v3: - No changes.
--- drivers/infiniband/core/cache.c | 6 +----- include/rdma/ib_verbs.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/include/rdma/ib_verbs.h b/include/rdma/ib_verbs.h index 7e2f3699b898..41cbec516424 100644 --- a/include/rdma/ib_verbs.h +++ b/include/rdma/ib_verbs.h @@ -2175,11 +2175,13 @@ struct ib_port_data { struct ib_port_immutable immutable; spinlock_t pkey_list_lock; + + spinlock_t netdev_lock; + struct list_head pkey_list; struct ib_port_cache cache; - spinlock_t netdev_lock; struct net_device __rcu *netdev; struct hlist_node ndev_hash_link; struct rdma_port_counter port_counter; -- 2.27.0
| |