static void roce_gid_cache_client_setup_one(struct ib_device *ib_dev) { if (!roce_gid_cache_setup_one(ib_dev)) { roce_gid_cache_set_active_state(ib_dev, 1); if (roce_rescan_device(ib_dev)) { roce_gid_cache_set_active_state(ib_dev, 0); roce_gid_cache_cleanup_one(ib_dev); } } }
static int gid_table_setup_one(struct ib_device *ib_dev) { int err; err = _gid_table_setup_one(ib_dev); if (err) return err; err = roce_rescan_device(ib_dev); if (err) { gid_table_cleanup_one(ib_dev); gid_table_release_one(ib_dev); } return err; }