• Home
  • Raw
  • Download

Lines Matching refs:req

404 			   const struct ubifs_budget_req *req)  in calc_idx_growth()  argument
408 znodes = req->new_ino + (req->new_page << UBIFS_BLOCKS_PER_PAGE_SHIFT) + in calc_idx_growth()
409 req->new_dent; in calc_idx_growth()
420 const struct ubifs_budget_req *req) in calc_data_growth() argument
424 data_growth = req->new_ino ? c->inode_budget : 0; in calc_data_growth()
425 if (req->new_page) in calc_data_growth()
427 if (req->new_dent) in calc_data_growth()
429 data_growth += req->new_ino_d; in calc_data_growth()
440 const struct ubifs_budget_req *req) in calc_dd_growth() argument
444 dd_growth = req->dirtied_page ? c->page_budget : 0; in calc_dd_growth()
446 if (req->dirtied_ino) in calc_dd_growth()
447 dd_growth += c->inode_budget << (req->dirtied_ino - 1); in calc_dd_growth()
448 if (req->mod_dent) in calc_dd_growth()
450 dd_growth += req->dirtied_ino_d; in calc_dd_growth()
467 int ubifs_budget_space(struct ubifs_info *c, struct ubifs_budget_req *req) in ubifs_budget_space() argument
472 ubifs_assert(req->new_page <= 1); in ubifs_budget_space()
473 ubifs_assert(req->dirtied_page <= 1); in ubifs_budget_space()
474 ubifs_assert(req->new_dent <= 1); in ubifs_budget_space()
475 ubifs_assert(req->mod_dent <= 1); in ubifs_budget_space()
476 ubifs_assert(req->new_ino <= 1); in ubifs_budget_space()
477 ubifs_assert(req->new_ino_d <= UBIFS_MAX_INO_DATA); in ubifs_budget_space()
478 ubifs_assert(req->dirtied_ino <= 4); in ubifs_budget_space()
479 ubifs_assert(req->dirtied_ino_d <= UBIFS_MAX_INO_DATA * 4); in ubifs_budget_space()
480 ubifs_assert(!(req->new_ino_d & 7)); in ubifs_budget_space()
481 ubifs_assert(!(req->dirtied_ino_d & 7)); in ubifs_budget_space()
483 data_growth = calc_data_growth(c, req); in ubifs_budget_space()
484 dd_growth = calc_dd_growth(c, req); in ubifs_budget_space()
487 idx_growth = calc_idx_growth(c, req); in ubifs_budget_space()
507 req->idx_growth = idx_growth; in ubifs_budget_space()
508 req->data_growth = data_growth; in ubifs_budget_space()
509 req->dd_growth = dd_growth; in ubifs_budget_space()
520 if (req->fast) { in ubifs_budget_space()
557 void ubifs_release_budget(struct ubifs_info *c, struct ubifs_budget_req *req) in ubifs_release_budget() argument
559 ubifs_assert(req->new_page <= 1); in ubifs_release_budget()
560 ubifs_assert(req->dirtied_page <= 1); in ubifs_release_budget()
561 ubifs_assert(req->new_dent <= 1); in ubifs_release_budget()
562 ubifs_assert(req->mod_dent <= 1); in ubifs_release_budget()
563 ubifs_assert(req->new_ino <= 1); in ubifs_release_budget()
564 ubifs_assert(req->new_ino_d <= UBIFS_MAX_INO_DATA); in ubifs_release_budget()
565 ubifs_assert(req->dirtied_ino <= 4); in ubifs_release_budget()
566 ubifs_assert(req->dirtied_ino_d <= UBIFS_MAX_INO_DATA * 4); in ubifs_release_budget()
567 ubifs_assert(!(req->new_ino_d & 7)); in ubifs_release_budget()
568 ubifs_assert(!(req->dirtied_ino_d & 7)); in ubifs_release_budget()
569 if (!req->recalculate) { in ubifs_release_budget()
570 ubifs_assert(req->idx_growth >= 0); in ubifs_release_budget()
571 ubifs_assert(req->data_growth >= 0); in ubifs_release_budget()
572 ubifs_assert(req->dd_growth >= 0); in ubifs_release_budget()
575 if (req->recalculate) { in ubifs_release_budget()
576 req->data_growth = calc_data_growth(c, req); in ubifs_release_budget()
577 req->dd_growth = calc_dd_growth(c, req); in ubifs_release_budget()
578 req->idx_growth = calc_idx_growth(c, req); in ubifs_release_budget()
581 if (!req->data_growth && !req->dd_growth) in ubifs_release_budget()
588 c->budg_idx_growth -= req->idx_growth; in ubifs_release_budget()
589 c->budg_uncommitted_idx += req->idx_growth; in ubifs_release_budget()
590 c->budg_data_growth -= req->data_growth; in ubifs_release_budget()
591 c->budg_dd_growth -= req->dd_growth; in ubifs_release_budget()
639 struct ubifs_budget_req req; in ubifs_release_dirty_inode_budget() local
641 memset(&req, 0, sizeof(struct ubifs_budget_req)); in ubifs_release_dirty_inode_budget()
642 req.dd_growth = c->inode_budget + ALIGN(ui->data_len, 8); in ubifs_release_dirty_inode_budget()
643 ubifs_release_budget(c, &req); in ubifs_release_dirty_inode_budget()