Function report |
Source Code:fs\fcntl.c |
Create Date:2022-07-28 20:05:51 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
home page | Tree |
Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:do_fcntl
Proto:static long do_fcntl(int fd, unsigned int cmd, unsigned long arg, struct file *filp)
Type:long
Parameter:
Type | Parameter | Name |
---|---|---|
int | fd | |
unsigned int | cmd | |
unsigned long | arg | |
struct file * | filp |
333 | Case cmd == Create a file descriptor with FD_CLOEXEC set. |
337 | err = If get_close_on_exec(fd) Then FD_CLOEXEC Else 0 |
338 | Break |
354 | If copy_from_user( & flock, argp, size of flock ) Then Return -EFAULT |
356 | err = fcntl_getlk(filp, cmd, & flock) |
359 | Break |
368 | If copy_from_user( & flock, argp, size of flock ) Then Return -EFAULT |
371 | Break |
382 | Break |
386 | Case cmd == F_GETOWN_EX |
387 | err = f_getown_ex(filp, arg) |
388 | Break |
389 | Case cmd == F_SETOWN_EX |
390 | err = f_setown_ex(filp, arg) |
391 | Break |
392 | Case cmd == F_GETOWNER_UIDS |
393 | err = f_getowner_uids(filp, arg) |
394 | Break |
397 | Break |
406 | Case cmd == F_GETLEASE |
408 | Break |
409 | Case cmd == F_SETLEASE |
411 | Break |
413 | err = When a process calls fcntl to attach a dnotify watch to a directory it ends* up here. Allocate both a mark for fsnotify to add and a dnotify_struct to be* attached to the fsnotify_mark. |
414 | Break |
415 | Case cmd == Set and get of pipe page size array |
416 | Case cmd == F_GETPIPE_SZ |
417 | err = pipe_fcntl(filp, cmd, arg) |
418 | Break |
419 | Case cmd == Set/Get seals |
420 | Case cmd == F_GET_SEALS |
421 | err = memfd_fcntl(filp, cmd, arg) |
422 | Break |
423 | Case cmd == Set/Get write life time hints. {GET,SET}_RW_HINT operate on the* underlying inode, while {GET,SET}_FILE_RW_HINT operate only on* the specific file. |
424 | Case cmd == F_SET_RW_HINT |
425 | Case cmd == F_GET_FILE_RW_HINT |
426 | Case cmd == F_SET_FILE_RW_HINT |
427 | err = fcntl_rw_hint(filp, cmd, arg) |
428 | Break |
429 | Default |
430 | Break |
432 | Return err |
Name | Describe |
---|---|
SYSCALL_DEFINE3 | |
SYSCALL_DEFINE3 | |
do_compat_fcntl64 |
Source code conversion tool public plug-in interface | X |
---|---|
Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion |