Lines Matching refs:args

171 static void fuse_lookup_init(struct fuse_conn *fc, struct fuse_args *args,  in fuse_lookup_init()  argument
176 args->opcode = FUSE_LOOKUP; in fuse_lookup_init()
177 args->nodeid = nodeid; in fuse_lookup_init()
178 args->in_numargs = 3; in fuse_lookup_init()
179 fuse_set_zero_arg0(args); in fuse_lookup_init()
180 args->in_args[1].size = name->len; in fuse_lookup_init()
181 args->in_args[1].value = name->name; in fuse_lookup_init()
182 args->in_args[2].size = 1; in fuse_lookup_init()
183 args->in_args[2].value = ""; in fuse_lookup_init()
184 args->out_numargs = 1; in fuse_lookup_init()
185 args->out_args[0].size = sizeof(struct fuse_entry_out); in fuse_lookup_init()
186 args->out_args[0].value = outarg; in fuse_lookup_init()
217 FUSE_ARGS(args); in fuse_dentry_revalidate()
238 fuse_lookup_init(fm->fc, &args, get_node_id(dir), in fuse_dentry_revalidate()
240 ret = fuse_simple_request(fm, &args); in fuse_dentry_revalidate()
361 FUSE_ARGS(args); in fuse_lookup_name()
380 fuse_lookup_init(fm->fc, &args, nodeid, name, outarg); in fuse_lookup_name()
381 err = fuse_simple_request(fm, &args); in fuse_lookup_name()
581 struct fuse_args *args, in get_create_ext() argument
595 WARN_ON(args->in_numargs >= ARRAY_SIZE(args->in_args)); in get_create_ext()
596 args->is_ext = true; in get_create_ext()
597 args->ext_idx = args->in_numargs++; in get_create_ext()
598 args->in_args[args->ext_idx] = ext; in get_create_ext()
606 static void free_ext_value(struct fuse_args *args) in free_ext_value() argument
608 if (args->is_ext) in free_ext_value()
609 kfree(args->in_args[args->ext_idx].value); in free_ext_value()
624 FUSE_ARGS(args); in fuse_create_open()
663 args.opcode = opcode; in fuse_create_open()
664 args.nodeid = get_node_id(dir); in fuse_create_open()
665 args.in_numargs = 2; in fuse_create_open()
666 args.in_args[0].size = sizeof(inarg); in fuse_create_open()
667 args.in_args[0].value = &inarg; in fuse_create_open()
668 args.in_args[1].size = entry->d_name.len + 1; in fuse_create_open()
669 args.in_args[1].value = entry->d_name.name; in fuse_create_open()
670 args.out_numargs = 2; in fuse_create_open()
671 args.out_args[0].size = sizeof(outentry); in fuse_create_open()
672 args.out_args[0].value = &outentry; in fuse_create_open()
674 outopenp = &ff->args->open_outarg; in fuse_create_open()
675 args.out_args[1].size = sizeof(*outopenp); in fuse_create_open()
676 args.out_args[1].value = outopenp; in fuse_create_open()
678 err = get_create_ext(idmap, &args, dir, entry, mode); in fuse_create_open()
682 err = fuse_simple_idmap_request(idmap, fm, &args); in fuse_create_open()
683 free_ext_value(&args); in fuse_create_open()
787 struct fuse_args *args, struct inode *dir, in create_new_entry() argument
806 args->nodeid = get_node_id(dir); in create_new_entry()
807 args->out_numargs = 1; in create_new_entry()
808 args->out_args[0].size = sizeof(outarg); in create_new_entry()
809 args->out_args[0].value = &outarg; in create_new_entry()
811 if (args->opcode != FUSE_LINK) { in create_new_entry()
812 err = get_create_ext(idmap, args, dir, entry, mode); in create_new_entry()
817 err = fuse_simple_idmap_request(idmap, fm, args); in create_new_entry()
818 free_ext_value(args); in create_new_entry()
860 struct fuse_args *args, struct inode *dir, in create_new_nondir() argument
872 return PTR_ERR(create_new_entry(idmap, fm, args, dir, entry, mode)); in create_new_nondir()
880 FUSE_ARGS(args); in fuse_mknod()
889 args.opcode = FUSE_MKNOD; in fuse_mknod()
890 args.in_numargs = 2; in fuse_mknod()
891 args.in_args[0].size = sizeof(inarg); in fuse_mknod()
892 args.in_args[0].value = &inarg; in fuse_mknod()
893 args.in_args[1].size = entry->d_name.len + 1; in fuse_mknod()
894 args.in_args[1].value = entry->d_name.name; in fuse_mknod()
895 return create_new_nondir(idmap, fm, &args, dir, entry, mode); in fuse_mknod()
927 FUSE_ARGS(args); in fuse_mkdir()
935 args.opcode = FUSE_MKDIR; in fuse_mkdir()
936 args.in_numargs = 2; in fuse_mkdir()
937 args.in_args[0].size = sizeof(inarg); in fuse_mkdir()
938 args.in_args[0].value = &inarg; in fuse_mkdir()
939 args.in_args[1].size = entry->d_name.len + 1; in fuse_mkdir()
940 args.in_args[1].value = entry->d_name.name; in fuse_mkdir()
941 return create_new_entry(idmap, fm, &args, dir, entry, S_IFDIR); in fuse_mkdir()
949 FUSE_ARGS(args); in fuse_symlink()
951 args.opcode = FUSE_SYMLINK; in fuse_symlink()
952 args.in_numargs = 3; in fuse_symlink()
953 fuse_set_zero_arg0(&args); in fuse_symlink()
954 args.in_args[1].size = entry->d_name.len + 1; in fuse_symlink()
955 args.in_args[1].value = entry->d_name.name; in fuse_symlink()
956 args.in_args[2].size = len; in fuse_symlink()
957 args.in_args[2].value = link; in fuse_symlink()
958 return create_new_nondir(idmap, fm, &args, dir, entry, S_IFLNK); in fuse_symlink()
1010 FUSE_ARGS(args); in fuse_unlink()
1015 args.opcode = FUSE_UNLINK; in fuse_unlink()
1016 args.nodeid = get_node_id(dir); in fuse_unlink()
1017 args.in_numargs = 2; in fuse_unlink()
1018 fuse_set_zero_arg0(&args); in fuse_unlink()
1019 args.in_args[1].size = entry->d_name.len + 1; in fuse_unlink()
1020 args.in_args[1].value = entry->d_name.name; in fuse_unlink()
1021 err = fuse_simple_request(fm, &args); in fuse_unlink()
1034 FUSE_ARGS(args); in fuse_rmdir()
1039 args.opcode = FUSE_RMDIR; in fuse_rmdir()
1040 args.nodeid = get_node_id(dir); in fuse_rmdir()
1041 args.in_numargs = 2; in fuse_rmdir()
1042 fuse_set_zero_arg0(&args); in fuse_rmdir()
1043 args.in_args[1].size = entry->d_name.len + 1; in fuse_rmdir()
1044 args.in_args[1].value = entry->d_name.name; in fuse_rmdir()
1045 err = fuse_simple_request(fm, &args); in fuse_rmdir()
1061 FUSE_ARGS(args); in fuse_rename_common()
1066 args.opcode = opcode; in fuse_rename_common()
1067 args.nodeid = get_node_id(olddir); in fuse_rename_common()
1068 args.in_numargs = 3; in fuse_rename_common()
1069 args.in_args[0].size = argsize; in fuse_rename_common()
1070 args.in_args[0].value = &inarg; in fuse_rename_common()
1071 args.in_args[1].size = oldent->d_name.len + 1; in fuse_rename_common()
1072 args.in_args[1].value = oldent->d_name.name; in fuse_rename_common()
1073 args.in_args[2].size = newent->d_name.len + 1; in fuse_rename_common()
1074 args.in_args[2].value = newent->d_name.name; in fuse_rename_common()
1075 err = fuse_simple_idmap_request(idmap, fm, &args); in fuse_rename_common()
1145 FUSE_ARGS(args); in fuse_link()
1152 args.opcode = FUSE_LINK; in fuse_link()
1153 args.in_numargs = 2; in fuse_link()
1154 args.in_args[0].size = sizeof(inarg); in fuse_link()
1155 args.in_args[0].value = &inarg; in fuse_link()
1156 args.in_args[1].size = newent->d_name.len + 1; in fuse_link()
1157 args.in_args[1].value = newent->d_name.name; in fuse_link()
1158 err = create_new_nondir(&invalid_mnt_idmap, fm, &args, newdir, newent, inode->i_mode); in fuse_link()
1237 FUSE_ARGS(args); in fuse_do_statx()
1251 args.opcode = FUSE_STATX; in fuse_do_statx()
1252 args.nodeid = get_node_id(inode); in fuse_do_statx()
1253 args.in_numargs = 1; in fuse_do_statx()
1254 args.in_args[0].size = sizeof(inarg); in fuse_do_statx()
1255 args.in_args[0].value = &inarg; in fuse_do_statx()
1256 args.out_numargs = 1; in fuse_do_statx()
1257 args.out_args[0].size = sizeof(outarg); in fuse_do_statx()
1258 args.out_args[0].value = &outarg; in fuse_do_statx()
1259 err = fuse_simple_request(fm, &args); in fuse_do_statx()
1295 FUSE_ARGS(args); in fuse_do_getattr()
1309 args.opcode = FUSE_GETATTR; in fuse_do_getattr()
1310 args.nodeid = get_node_id(inode); in fuse_do_getattr()
1311 args.in_numargs = 1; in fuse_do_getattr()
1312 args.in_args[0].size = sizeof(inarg); in fuse_do_getattr()
1313 args.in_args[0].value = &inarg; in fuse_do_getattr()
1314 args.out_numargs = 1; in fuse_do_getattr()
1315 args.out_args[0].size = sizeof(outarg); in fuse_do_getattr()
1316 args.out_args[0].value = &outarg; in fuse_do_getattr()
1317 err = fuse_simple_request(fm, &args); in fuse_do_getattr()
1505 FUSE_ARGS(args); in fuse_access()
1524 args.opcode = FUSE_ACCESS; in fuse_access()
1525 args.nodeid = get_node_id(inode); in fuse_access()
1526 args.in_numargs = 1; in fuse_access()
1527 args.in_args[0].size = sizeof(inarg); in fuse_access()
1528 args.in_args[0].value = &inarg; in fuse_access()
1529 err = fuse_simple_request(fm, &args); in fuse_access()
1634 ap.args.opcode = FUSE_READLINK; in fuse_readlink_folio()
1635 ap.args.nodeid = get_node_id(inode); in fuse_readlink_folio()
1636 ap.args.out_pages = true; in fuse_readlink_folio()
1637 ap.args.out_argvar = true; in fuse_readlink_folio()
1638 ap.args.page_zeroing = true; in fuse_readlink_folio()
1639 ap.args.out_numargs = 1; in fuse_readlink_folio()
1640 ap.args.out_args[0].size = desc.length; in fuse_readlink_folio()
1641 res = fuse_simple_request(fm, &ap.args); in fuse_readlink_folio()
1886 static void fuse_setattr_fill(struct fuse_conn *fc, struct fuse_args *args, in fuse_setattr_fill() argument
1891 args->opcode = FUSE_SETATTR; in fuse_setattr_fill()
1892 args->nodeid = get_node_id(inode); in fuse_setattr_fill()
1893 args->in_numargs = 1; in fuse_setattr_fill()
1894 args->in_args[0].size = sizeof(*inarg_p); in fuse_setattr_fill()
1895 args->in_args[0].value = inarg_p; in fuse_setattr_fill()
1896 args->out_numargs = 1; in fuse_setattr_fill()
1897 args->out_args[0].size = sizeof(*outarg_p); in fuse_setattr_fill()
1898 args->out_args[0].value = outarg_p; in fuse_setattr_fill()
1907 FUSE_ARGS(args); in fuse_flush_times()
1926 fuse_setattr_fill(fm->fc, &args, inode, &inarg, &outarg); in fuse_flush_times()
1928 return fuse_simple_request(fm, &args); in fuse_flush_times()
1947 FUSE_ARGS(args); in fuse_do_setattr()
2043 fuse_setattr_fill(fc, &args, inode, &inarg, &outarg); in fuse_do_setattr()
2044 err = fuse_simple_request(fm, &args); in fuse_do_setattr()