diff options
author | Parav Pandit <parav@mellanox.com> | 2018-05-02 06:12:55 -0400 |
---|---|---|
committer | Doug Ledford <dledford@redhat.com> | 2018-05-09 12:08:21 -0400 |
commit | 25a1cd3fe551bfeffc12d6ef1aafb2f2ef5e54f6 (patch) | |
tree | 618aec1266c7ac479b6f2cac0d71386d824e6d97 /drivers/infiniband/core/cache.c | |
parent | 056f9c7f39bf517d58f32797f1eb1465bb6f6ef2 (diff) |
IB/core: Make gid_table_reserve_default() return void
gid_table_reserve_default() always returns zero. Make it return void and
simplify error checking.
rdma_port is already calculated, use that while calling
gid_table_reserve_default() instead of recalculating it.
Reviewed-by: Daniel Jurgens <danielj@mellanox.com>
Signed-off-by: Parav Pandit <parav@mellanox.com>
Signed-off-by: Leon Romanovsky <leonro@mellanox.com>
Reviewed-by: Dennis Dalessandro <dennis.dalessandro@intel.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
Diffstat (limited to 'drivers/infiniband/core/cache.c')
-rw-r--r-- | drivers/infiniband/core/cache.c | 18 |
1 files changed, 5 insertions, 13 deletions
diff --git a/drivers/infiniband/core/cache.c b/drivers/infiniband/core/cache.c index e337b08de2ff..140fd351764d 100644 --- a/drivers/infiniband/core/cache.c +++ b/drivers/infiniband/core/cache.c | |||
@@ -757,8 +757,8 @@ void ib_cache_gid_set_default_gid(struct ib_device *ib_dev, u8 port, | |||
757 | } | 757 | } |
758 | } | 758 | } |
759 | 759 | ||
760 | static int gid_table_reserve_default(struct ib_device *ib_dev, u8 port, | 760 | static void gid_table_reserve_default(struct ib_device *ib_dev, u8 port, |
761 | struct ib_gid_table *table) | 761 | struct ib_gid_table *table) |
762 | { | 762 | { |
763 | unsigned int i; | 763 | unsigned int i; |
764 | unsigned long roce_gid_type_mask; | 764 | unsigned long roce_gid_type_mask; |
@@ -768,8 +768,7 @@ static int gid_table_reserve_default(struct ib_device *ib_dev, u8 port, | |||
768 | roce_gid_type_mask = roce_gid_type_mask_support(ib_dev, port); | 768 | roce_gid_type_mask = roce_gid_type_mask_support(ib_dev, port); |
769 | num_default_gids = hweight_long(roce_gid_type_mask); | 769 | num_default_gids = hweight_long(roce_gid_type_mask); |
770 | for (i = 0; i < num_default_gids && i < table->sz; i++) { | 770 | for (i = 0; i < num_default_gids && i < table->sz; i++) { |
771 | struct ib_gid_table_entry *entry = | 771 | struct ib_gid_table_entry *entry = &table->data_vec[i]; |
772 | &table->data_vec[i]; | ||
773 | 772 | ||
774 | entry->props |= GID_TABLE_ENTRY_DEFAULT; | 773 | entry->props |= GID_TABLE_ENTRY_DEFAULT; |
775 | current_gid = find_next_bit(&roce_gid_type_mask, | 774 | current_gid = find_next_bit(&roce_gid_type_mask, |
@@ -777,8 +776,6 @@ static int gid_table_reserve_default(struct ib_device *ib_dev, u8 port, | |||
777 | current_gid); | 776 | current_gid); |
778 | entry->attr.gid_type = current_gid++; | 777 | entry->attr.gid_type = current_gid++; |
779 | } | 778 | } |
780 | |||
781 | return 0; | ||
782 | } | 779 | } |
783 | 780 | ||
784 | static int _gid_table_setup_one(struct ib_device *ib_dev) | 781 | static int _gid_table_setup_one(struct ib_device *ib_dev) |
@@ -790,19 +787,14 @@ static int _gid_table_setup_one(struct ib_device *ib_dev) | |||
790 | for (port = 0; port < ib_dev->phys_port_cnt; port++) { | 787 | for (port = 0; port < ib_dev->phys_port_cnt; port++) { |
791 | u8 rdma_port = port + rdma_start_port(ib_dev); | 788 | u8 rdma_port = port + rdma_start_port(ib_dev); |
792 | 789 | ||
793 | table = | 790 | table = alloc_gid_table( |
794 | alloc_gid_table( | ||
795 | ib_dev->port_immutable[rdma_port].gid_tbl_len); | 791 | ib_dev->port_immutable[rdma_port].gid_tbl_len); |
796 | if (!table) { | 792 | if (!table) { |
797 | err = -ENOMEM; | 793 | err = -ENOMEM; |
798 | goto rollback_table_setup; | 794 | goto rollback_table_setup; |
799 | } | 795 | } |
800 | 796 | ||
801 | err = gid_table_reserve_default(ib_dev, | 797 | gid_table_reserve_default(ib_dev, rdma_port, table); |
802 | port + rdma_start_port(ib_dev), | ||
803 | table); | ||
804 | if (err) | ||
805 | goto rollback_table_setup; | ||
806 | ib_dev->cache.ports[port].gid = table; | 798 | ib_dev->cache.ports[port].gid = table; |
807 | } | 799 | } |
808 | 800 | ||