Lines Matching refs:ctx
13 struct hmdfs_dcache_lookup_ctx_cloud *ctx, struct hmdfs_sb_info *sbi,
16 ctx->sbi = sbi;
17 ctx->name = qstr;
18 ctx->filp = filp;
19 ctx->bidx = 0;
20 ctx->page = NULL;
21 ctx->insense_de = NULL;
22 ctx->insense_bidx = 0;
23 ctx->insense_page = NULL;
99 struct hmdfs_dcache_lookup_ctx_cloud *ctx)
111 bidx = get_bucketaddr(level, ctx->hash % nbucket) * BUCKET_BLOCKS;
115 dentry_blk = find_dentry_page(ctx->sbi, bidx, ctx->filp);
119 de = find_in_block(dentry_blk, ctx->hash, ctx->name,
120 &tmp_insense_de, ctx->sbi->s_case_sensitive);
121 if (!de && !(ctx->insense_de) && tmp_insense_de) {
122 ctx->insense_de = tmp_insense_de;
123 ctx->insense_page = dentry_blk;
124 ctx->insense_bidx = bidx;
126 hmdfs_unlock_file(ctx->filp, get_dentry_group_pos(bidx),
130 ctx->page = dentry_blk;
134 ctx->bidx = bidx;
140 struct hmdfs_dcache_lookup_ctx_cloud *ctx)
146 if (!ctx->filp)
149 ctx->hash = hmdfs_dentry_hash(ctx->name, ctx->sbi->s_case_sensitive);
150 max_depth = get_max_depth(ctx->filp);
152 de = hmdfs_in_level(child_dentry, level, ctx);
154 if (ctx->insense_page) {
155 hmdfs_unlock_file(ctx->filp,
156 get_dentry_group_pos(ctx->insense_bidx),
158 kfree(ctx->insense_page);
159 ctx->insense_page = NULL;
164 if (ctx->insense_de) {
165 ctx->bidx = ctx->insense_bidx;
166 ctx->page = ctx->insense_page;
167 ctx->insense_bidx = 0;
168 ctx->insense_page = NULL;
170 return ctx->insense_de;