summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAnand Khoje <anand.a.khoje@oracle.com>2021-06-16 21:15:08 +0530
committerJason Gunthorpe <jgg@nvidia.com>2021-06-21 20:49:32 -0300
commit84dcd8c7eab8bc29a6eb402b535651171a9a9d54 (patch)
tree4369b068352b8d116e9846f0efc2680aa67a2057
parentc5f8f2c5e5bfd4fd5fc5c413051ad14b7873b1fd (diff)
downloadlinux-84dcd8c7eab8bc29a6eb402b535651171a9a9d54.tar.bz2
IB/core: Shuffle locks in ib_port_data to save memory
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. Link: https://lore.kernel.org/r/20210616154509.1047-3-anand.a.khoje@oracle.com 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> Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
-rw-r--r--include/rdma/ib_verbs.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/include/rdma/ib_verbs.h b/include/rdma/ib_verbs.h
index 34971c7b988f..371df1c80aeb 100644
--- a/include/rdma/ib_verbs.h
+++ b/include/rdma/ib_verbs.h
@@ -2176,11 +2176,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;