Lines Matching refs:args

36 	} *args = data;
38 if (size >= sizeof(*args) && args->v0.version == 0) {
40 args->v0.object = nvif_handle(object);
42 args->v0.object = 0;
43 args->v0.owner = NVIF_IOCTL_V0_OWNER_ANY;
63 } *args = NULL;
68 size = sizeof(*args) + cnt * sizeof(args->sclass.oclass[0]);
69 if (!(args = kmalloc(size, GFP_KERNEL)))
71 args->ioctl.version = 0;
72 args->ioctl.type = NVIF_IOCTL_V0_SCLASS;
73 args->sclass.version = 0;
74 args->sclass.count = cnt;
76 ret = nvif_object_ioctl(object, args, size, NULL);
77 if (ret == 0 && args->sclass.count <= cnt)
79 cnt = args->sclass.count;
80 kfree(args);
85 *psclass = kcalloc(args->sclass.count, sizeof(**psclass), GFP_KERNEL);
87 for (i = 0; i < args->sclass.count; i++) {
88 (*psclass)[i].oclass = args->sclass.oclass[i].oclass;
89 (*psclass)[i].minver = args->sclass.oclass[i].minver;
90 (*psclass)[i].maxver = args->sclass.oclass[i].maxver;
92 ret = args->sclass.count;
97 kfree(args);
107 } args = {
112 int ret = nvif_object_ioctl(object, &args, sizeof(args), NULL);
117 return args.rd.data;
126 } args = {
132 int ret = nvif_object_ioctl(object, &args, sizeof(args), NULL);
144 } *args;
148 if (sizeof(*args) + size > sizeof(stack)) {
149 if (!(args = kmalloc(sizeof(*args) + size, GFP_KERNEL)))
152 args = (void *)stack;
154 args->ioctl.version = 0;
155 args->ioctl.type = NVIF_IOCTL_V0_MTHD;
156 args->mthd.version = 0;
157 args->mthd.method = mthd;
159 memcpy(args->mthd.data, data, size);
160 ret = nvif_object_ioctl(object, args, sizeof(*args) + size, NULL);
161 memcpy(data, args->mthd.data, size);
162 if (args != (void *)stack)
163 kfree(args);
173 } args = {
177 nvif_object_ioctl(object, &args, sizeof(args), NULL);
187 } *args;
188 u32 argn = sizeof(*args) + argc;
191 if (!(args = kzalloc(argn, GFP_KERNEL)))
193 args->ioctl.type = NVIF_IOCTL_V0_MAP;
194 memcpy(args->map.data, argv, argc);
196 ret = nvif_object_ioctl(object, args, argn, NULL);
197 *handle = args->map.handle;
198 *length = args->map.length;
199 maptype = args->map.type;
200 kfree(args);
249 } args = {
257 nvif_object_ioctl(object, &args, sizeof(args), NULL);
268 } *args;
279 if (!(args = kmalloc(sizeof(*args) + size, GFP_KERNEL))) {
286 args->ioctl.version = 0;
287 args->ioctl.type = NVIF_IOCTL_V0_NEW;
288 args->new.version = 0;
289 args->new.route = parent->client->route;
290 args->new.token = nvif_handle(object);
291 args->new.object = nvif_handle(object);
292 args->new.handle = handle;
293 args->new.oclass = oclass;
295 memcpy(args->new.data, data, size);
296 ret = nvif_object_ioctl(parent, args, sizeof(*args) + size,
298 memcpy(data, args->new.data, size);
299 kfree(args);