pdch_ulc: Create helper API pdch_ulc_release_node
Change-Id: I6362ad7382c2b73e6fedb11182964be96e5c8d35
This commit is contained in:
parent
9a6f0b191a
commit
ade9c2f553
|
@ -183,13 +183,18 @@ int pdch_ulc_reserve_sba(struct pdch_ulc *ulc, struct gprs_rlcmac_sba *sba)
|
|||
return pdch_ulc_add_node(ulc, item);
|
||||
}
|
||||
|
||||
void pdch_ulc_release_node(struct pdch_ulc *ulc, struct pdch_ulc_node *item)
|
||||
{
|
||||
rb_erase(&item->node, &ulc->tree_root);
|
||||
talloc_free(item);
|
||||
}
|
||||
|
||||
int pdch_ulc_release_fn(struct pdch_ulc *ulc, uint32_t fn)
|
||||
{
|
||||
struct pdch_ulc_node *item = pdch_ulc_get_node(ulc, fn);
|
||||
if (!item)
|
||||
return -ENOKEY;
|
||||
rb_erase(&item->node, &ulc->tree_root);
|
||||
talloc_free(item);
|
||||
pdch_ulc_release_node(ulc, item);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -222,8 +227,7 @@ void pdch_ulc_release_tbf(struct pdch_ulc *ulc, const struct gprs_rlcmac_tbf *tb
|
|||
* search from start (to avoid traverse continue from
|
||||
* no-more existant node */
|
||||
tree_modified = true;
|
||||
rb_erase(&item->node, &ulc->tree_root);
|
||||
talloc_free(item);
|
||||
pdch_ulc_release_node(ulc, item);
|
||||
break;
|
||||
}
|
||||
} while (tree_modified);
|
||||
|
|
|
@ -77,8 +77,8 @@ struct pdch_ulc_node *pdch_ulc_pop_node(struct pdch_ulc *ulc, uint32_t fn);
|
|||
struct gprs_rlcmac_sba *pdch_ulc_get_sba(struct pdch_ulc *ulc, uint32_t fn);
|
||||
struct gprs_rlcmac_tbf *pdch_ulc_get_tbf_poll(struct pdch_ulc *ulc, uint32_t fn);
|
||||
|
||||
void pdch_ulc_release_node(struct pdch_ulc *ulc, struct pdch_ulc_node *item);
|
||||
void pdch_ulc_release_tbf(struct pdch_ulc *ulc, const struct gprs_rlcmac_tbf *tbf);
|
||||
|
||||
int pdch_ulc_release_fn(struct pdch_ulc *ulc, uint32_t fn);
|
||||
|
||||
void pdch_ulc_expire_fn(struct pdch_ulc *ulc, uint32_t fn);
|
||||
|
|
Loading…
Reference in New Issue