map_data
struct stage2_map_data map_data = {
.arg = &map_data,
ret = stage2_set_prot_attr(pgt, prot, &map_data.attr);
struct stage2_map_data map_data = {
.arg = &map_data,
struct stage2_map_data map_data = {
.arg = &map_data,
ret = stage2_set_prot_attr(pgt, prot, &map_data.attr);
struct hyp_map_data map_data = {
.arg = &map_data,
ret = hyp_set_prot_attr(prot, &map_data.attr);
static int bio_copy_user_iov(struct request *rq, struct rq_map_data *map_data,
unsigned int offset = map_data ? offset_in_page(map_data->offset) : 0;
bmd->is_our_pages = !map_data;
bmd->is_null_mapped = (map_data && map_data->null_mapped);
if (map_data) {
nr_pages = 1U << map_data->page_order;
i = map_data->offset / PAGE_SIZE;
if (map_data) {
if (i == map_data->nr_entries * nr_pages) {
page = map_data->pages[i / nr_pages];
if (!map_data)
if (map_data)
map_data->offset += bio->bi_iter.bi_size;
(!map_data || !map_data->null_mapped)) {
} else if (map_data && map_data->from_user) {
if (!map_data)
struct rq_map_data *map_data,
if (map_data)
ret = bio_copy_user_iov(rq, map_data, &i, gfp_mask);
struct rq_map_data *map_data, void __user *ubuf,
return blk_rq_map_user_iov(q, rq, map_data, &i, gfp_mask);
int blk_rq_map_user_io(struct request *req, struct rq_map_data *map_data,
ret = blk_rq_map_user_iov(req->q, req, map_data, &iter,
ret = blk_rq_map_user(req->q, req, map_data, ubuf, buf_len,
struct rq_map_data *md, map_data;
md = &map_data;
STbuffer->map_data.offset = 0;
struct rq_map_data *mdata = &STbp->map_data;
struct rq_map_data *mdata = &SRpnt->stp->buffer->map_data;
struct rq_map_data *mdata = &STp->buffer->map_data;
struct rq_map_data map_data;
struct syscall_stats *map_data)
data->nr_events += map_data->count;
data->total_time += map_data->total_time;
memcpy(&nodes->stats, map_data, sizeof(*map_data));
struct syscall_stats *map_data)
data->nr_events += map_data->count;
data->total_time += map_data->total_time;
stat->total_time += map_data->total_time;
stat->squared_sum += map_data->squared_sum;
stat->count += map_data->count;
stat->error += map_data->error;
if (stat->max_time < map_data->max_time)
stat->max_time = map_data->max_time;
if (stat->min_time > map_data->min_time || stat->min_time == 0)
stat->min_time = map_data->min_time;
struct syscall_stats *map_data)
data->nr_events += map_data->count;
data->total_time += map_data->total_time;
memcpy(&nodes->stats, map_data, sizeof(*map_data));
CHECK_FAIL(map_data->val[0] != 111);
CHECK_FAIL(map_data->val[1] != 222);
CHECK_FAIL(map_data->val[2] != 123);
CHECK_FAIL(map_data->val[far] != 3 * 123);
map_data = map_mmaped;
const size_t map_sz = roundup_page(sizeof(struct map_data));
CHECK_FAIL(map_data->val[0] != 111);
CHECK_FAIL(map_data->val[1] != 222);
CHECK_FAIL(map_data->val[2] != 321);
CHECK_FAIL(map_data->val[far] != 3 * 321);
map_data = tmp2;
CHECK_FAIL(map_data->val[0] != 111);
CHECK_FAIL(map_data->val[1] != 222);
CHECK_FAIL(map_data->val[2] != 321);
CHECK_FAIL(map_data->val[far] != 3 * 321);
struct map_data *map_data;
map_data = map_mmaped;
CHECK_FAIL(map_data->val[0]);
CHECK_FAIL(map_data->val[1]);
CHECK_FAIL(map_data->val[2]);
CHECK_FAIL(map_data->val[far]);
long err, tree_data, map_data; \
map_data = err; \
return tree_data + map_data; \