Lines Matching refs:spg
1616 struct ceph_spg_mapping *spg; in alloc_spg_mapping() local
1618 spg = kmalloc(sizeof(*spg), GFP_NOIO); in alloc_spg_mapping()
1619 if (!spg) in alloc_spg_mapping()
1622 RB_CLEAR_NODE(&spg->node); in alloc_spg_mapping()
1623 spg->backoffs = RB_ROOT; in alloc_spg_mapping()
1624 return spg; in alloc_spg_mapping()
1627 static void free_spg_mapping(struct ceph_spg_mapping *spg) in free_spg_mapping() argument
1629 WARN_ON(!RB_EMPTY_NODE(&spg->node)); in free_spg_mapping()
1630 WARN_ON(!RB_EMPTY_ROOT(&spg->backoffs)); in free_spg_mapping()
1632 kfree(spg); in free_spg_mapping()
1872 struct ceph_spg_mapping *spg = in DEFINE_RB_FUNCS() local
1876 while (!RB_EMPTY_ROOT(&spg->backoffs)) { in DEFINE_RB_FUNCS()
1878 rb_entry(rb_first(&spg->backoffs), in DEFINE_RB_FUNCS()
1881 erase_backoff(&spg->backoffs, backoff); in DEFINE_RB_FUNCS()
1885 erase_spg_mapping(&osd->o_backoff_mappings, spg); in DEFINE_RB_FUNCS()
1886 free_spg_mapping(spg); in DEFINE_RB_FUNCS()
1917 struct ceph_spg_mapping *spg; in should_plug_request() local
1921 spg = lookup_spg_mapping(&osd->o_backoff_mappings, &req->r_t.spgid); in should_plug_request()
1922 if (!spg) in should_plug_request()
1926 backoff = lookup_containing_backoff(&spg->backoffs, &hoid); in should_plug_request()
4216 struct ceph_spg_mapping *spg; in handle_backoff_block() local
4223 spg = lookup_spg_mapping(&osd->o_backoff_mappings, &m->spgid); in handle_backoff_block()
4224 if (!spg) { in handle_backoff_block()
4225 spg = alloc_spg_mapping(); in handle_backoff_block()
4226 if (!spg) { in handle_backoff_block()
4230 spg->spgid = m->spgid; /* struct */ in handle_backoff_block()
4231 insert_spg_mapping(&osd->o_backoff_mappings, spg); in handle_backoff_block()
4246 insert_backoff(&spg->backoffs, backoff); in handle_backoff_block()
4276 struct ceph_spg_mapping *spg; in handle_backoff_unblock() local
4299 spg = lookup_spg_mapping(&osd->o_backoff_mappings, &backoff->spgid); in handle_backoff_unblock()
4300 BUG_ON(!spg); in handle_backoff_unblock()
4302 erase_backoff(&spg->backoffs, backoff); in handle_backoff_unblock()
4306 if (RB_EMPTY_ROOT(&spg->backoffs)) { in handle_backoff_unblock()
4307 erase_spg_mapping(&osd->o_backoff_mappings, spg); in handle_backoff_unblock()
4308 free_spg_mapping(spg); in handle_backoff_unblock()