Lines Matching refs:params

323 zx_status_t VnodeMinfs::BlockOpDirect(Transaction* state, DirectArgs* params) {
324 for (unsigned i = 0; i < params->GetCount(); i++) {
325 blk_t bno = params->GetBno(i);
326 switch (params->GetOp()) {
332 params->SetBno(i, 0);
348 params->SetBno(i, bno);
360 zx_status_t VnodeMinfs::BlockOpIndirect(Transaction* state, IndirectArgs* params) {
365 if (params->GetOp() == READ || params->GetOp() == WRITE) {
366 validate_vmo_size(vmo_indirect_->GetVmo(), params->GetOffset() + params->GetCount());
370 for (unsigned i = 0; i < params->GetCount(); i++) {
372 if (params->GetBno(i) == 0) {
373 switch (params->GetOp()) {
379 AllocateIndirect(state, i, params);
389 ReadIndirectVmoBlock(params->GetOffset() + i, &entry);
392 ReadIndirectBlock(params->GetBno(i), entry);
395 DirectArgs direct_params = params->GetDirect(entry, i);
403 state->GetWork()->Enqueue(vmo_indirect_->GetVmo(), params->GetOffset() + i,
404 params->GetBno(i) + fs_->Info().dat_block, 1);
406 fs_->bc_->Writeblk(params->GetBno(i) + fs_->Info().dat_block, entry);
408 params->SetDirty();
412 if (params->GetOp() == DELETE && direct_params.GetCount() == kMinfsDirectPerIndirect) {
414 fs_->BlockFree(state->GetWork(), params->GetBno(i));
415 params->SetBno(i, 0);
424 zx_status_t VnodeMinfs::BlockOpDindirect(Transaction* state, DindirectArgs* params) {
428 if (params->GetOp() == READ || params->GetOp() == WRITE) {
429 validate_vmo_size(vmo_indirect_->GetVmo(), params->GetOffset() + params->GetCount());
434 for (unsigned i = 0; i < params->GetCount(); i++) {
436 if (params->GetBno(i) == 0) {
437 switch (params->GetOp()) {
443 AllocateIndirect(state, i, params);
455 ReadIndirectBlock(params->GetBno(i), dientry);
459 IndirectArgs indirect_params = params->GetIndirect(dientry, i);
467 state->GetWork()->Enqueue(vmo_indirect_->GetVmo(), params->GetOffset() + i,
468 params->GetBno(i) + fs_->Info().dat_block, 1);
470 fs_->bc_->Writeblk(params->GetBno(i) + fs_->Info().dat_block, dientry);
472 params->SetDirty();
477 if (params->GetOp() == DELETE && indirect_params.GetCount() == kMinfsDirectPerDindirect) {
479 fs_->BlockFree(state->GetWork(), params->GetBno(i));
480 params->SetBno(i, 0);
2119 DirectArgs params(op_, // op
2123 return params;
2140 IndirectArgs params(op_, // op
2147 return params;