Lines Matching full:how
1205 struct open_how how = { in build_open_how() local
1211 if (how.flags & O_PATH) in build_open_how()
1212 how.flags &= O_PATH_FLAGS; in build_open_how()
1214 if (!WILL_CREATE(how.flags)) in build_open_how()
1215 how.mode = 0; in build_open_how()
1216 return how; in build_open_how()
1219 inline int build_open_flags(const struct open_how *how, struct open_flags *op) in build_open_flags() argument
1221 u64 flags = how->flags; in build_open_flags()
1243 if (how->resolve & ~VALID_RESOLVE_FLAGS) in build_open_flags()
1247 if ((how->resolve & RESOLVE_BENEATH) && (how->resolve & RESOLVE_IN_ROOT)) in build_open_flags()
1252 if (how->mode & ~S_IALLUGO) in build_open_flags()
1254 op->mode = how->mode | S_IFREG; in build_open_flags()
1256 if (how->mode != 0) in build_open_flags()
1325 if (how->resolve & RESOLVE_NO_XDEV) in build_open_flags()
1327 if (how->resolve & RESOLVE_NO_MAGICLINKS) in build_open_flags()
1329 if (how->resolve & RESOLVE_NO_SYMLINKS) in build_open_flags()
1331 if (how->resolve & RESOLVE_BENEATH) in build_open_flags()
1333 if (how->resolve & RESOLVE_IN_ROOT) in build_open_flags()
1335 if (how->resolve & RESOLVE_CACHED) { in build_open_flags()
1360 struct open_how how = build_open_how(flags, mode); in file_open_name() local
1361 int err = build_open_flags(&how, &op); in file_open_name()
1395 struct open_how how = build_open_how(flags, mode); in file_open_root() local
1396 int err = build_open_flags(&how, &op); in file_open_root()
1404 struct open_how *how) in do_sys_openat2() argument
1407 int fd = build_open_flags(how, &op); in do_sys_openat2()
1417 fd = get_unused_fd_flags(how->flags); in do_sys_openat2()
1433 struct open_how how = build_open_how(flags, mode); in do_sys_open() local
1434 return do_sys_openat2(dfd, filename, &how); in do_sys_open()
1454 struct open_how __user *, how, size_t, usize) in SYSCALL_DEFINE4() argument
1467 err = copy_struct_from_user(&tmp, sizeof(tmp), how, usize); in SYSCALL_DEFINE4()